Container for user authentication in Photon. Set AuthValues before you connect - all else is handled. More...
Public Member Functions | |
AuthenticationValues () | |
Creates empty auth values without any info. More... | |
AuthenticationValues (string userId) | |
Creates minimal info about the user. If this is authenticated or not, depends on the set AuthType. More... | |
virtual void | SetAuthPostData (string stringData) |
Sets the data to be passed-on to the auth service via POST. More... | |
virtual void | SetAuthPostData (byte[] byteData) |
Sets the data to be passed-on to the auth service via POST. More... | |
virtual void | SetAuthPostData (Dictionary< string, object > dictData) |
Sets data to be passed-on to the auth service as Json (Content-Type: "application/json") via Post. More... | |
virtual void | AddAuthParameter (string key, string value) |
Adds a key-value pair to the get-parameters used for Custom Auth (AuthGetParameters). More... | |
override string | ToString () |
Properties | |
CustomAuthenticationType | AuthType [get, set] |
The type of custom authentication provider that should be used. Currently only "Custom" or "None" (turns this off). More... | |
string | AuthGetParameters [get, set] |
This string must contain any (http get) parameters expected by the used authentication service. By default, username and token. More... | |
object | AuthPostData [get] |
Data to be passed-on to the auth service via POST. Default: null (not sent). Either string or byte[] (see setters). More... | |
string | Token [get, set] |
After initial authentication, Photon provides a token for this client / user, which is subsequently used as (cached) validation. More... | |
string | UserId [get, set] |
The UserId should be a unique identifier per user. This is for finding friends, etc.. More... | |
Container for user authentication in Photon. Set AuthValues before you connect - all else is handled.
On Photon, user authentication is optional but can be useful in many cases. If you want to FindFriends, a unique ID per user is very practical.
There are basically three options for user authentification: None at all, the client sets some UserId or you can use some account web-service to authenticate a user (and set the UserId server-side).
Custom Authentication lets you verify end-users by some kind of login or token. It sends those values to Photon which will verify them before granting access or disconnecting the client.
The AuthValues are sent in OpAuthenticate when you connect, so they must be set before you connect. Should you not set any AuthValues, PUN will create them and set the playerName as userId in them. If the AuthValues.userId is null or empty when it's sent to the server, then the Photon Server assigns a userId!
The Photon Cloud Dashboard will let you enable this feature and set important server values for it. https://dashboard.photonengine.com
AuthenticationValues.AuthenticationValues | ( | ) |
Creates empty auth values without any info.
AuthenticationValues.AuthenticationValues | ( | string | userId | ) |
Creates minimal info about the user. If this is authenticated or not, depends on the set AuthType.
userId | Some UserId to set in Photon. |
|
virtual |
Adds a key-value pair to the get-parameters used for Custom Auth (AuthGetParameters).
This method does uri-encoding for you.
key | Key for the value to set. |
value | Some value relevant for Custom Authentication. |
|
virtual |
Sets the data to be passed-on to the auth service via POST.
AuthPostData is just one value. Each SetAuthPostData replaces any previous value. It can be either a string, a byte[] or a dictionary. Each SetAuthPostData replaces any previous value.
byteData | Binary token / auth-data to pass on. |
|
virtual |
Sets data to be passed-on to the auth service as Json (Content-Type: "application/json") via Post.
AuthPostData is just one value. Each SetAuthPostData replaces any previous value. It can be either a string, a byte[] or a dictionary. Each SetAuthPostData replaces any previous value.
dictData | A authentication-data dictionary will be converted to Json and passed to the Auth webservice via HTTP Post. |
|
virtual |
Sets the data to be passed-on to the auth service via POST.
AuthPostData is just one value. Each SetAuthPostData replaces any previous value. It can be either a string, a byte[] or a dictionary. Each SetAuthPostData replaces any previous value.
stringData | String data to be used in the body of the POST request. Null or empty string will set AuthPostData to null. |
override string AuthenticationValues.ToString | ( | ) |
|
getset |
This string must contain any (http get) parameters expected by the used authentication service. By default, username and token.
Maps to operation parameter 216. Standard http get parameters are used here and passed on to the service that's defined in the server (Photon Cloud Dashboard).
|
get |
Data to be passed-on to the auth service via POST. Default: null (not sent). Either string or byte[] (see setters).
Maps to operation parameter 214.
|
getset |
The type of custom authentication provider that should be used. Currently only "Custom" or "None" (turns this off).
|
getset |
After initial authentication, Photon provides a token for this client / user, which is subsequently used as (cached) validation.
|
getset |
The UserId should be a unique identifier per user. This is for finding friends, etc..
See remarks of AuthValues for info about how this is set and used.