Ingame-Benutzer-Authentifizierung
So funktioniert's
Das Launcher sendet Benutzerdaten, die über die Desktop-Anwendung authentifiziert wurden, im –xsolla-login-token
-Parameter im JWT-Format. Mit diesem Parameter können Sie die automatische Ingame-Benutzerauthentifizierung einrichten.
Wichtigste JWT-Ansprüche
Nach der Authentifizierung oder Bestätigung der E-Mail-Adresse enthält ein Token die wichtigsten Ansprüche (“Claims”). Ob diese Ansprüche vorhanden sind, hängt nicht von der Nutzerdatenbank und dem Authentifizierungsaufruf ab.
Anspruch | Typ | Erforderlich | Beschreibung |
---|---|---|---|
exp | Unix Timestamp | Ja | Datum und Uhrzeit des Tokenverfalls. Die Standardverfallszeit beträgt 24 Stunden. Sie können für jedes Login-Projekt die Verfallszeit individuell festlegen. |
iss | string | Ja | Dienst, der den Token signiert hat: https://login.xsolla.com . |
iat | Unix Timestamp | Ja | Datum und Uhrzeit der Tokenübermittlung. |
sub | string (UUID) | Ja | Gespeicherte Benutzer-ID aufseiten des Xsolla Login-Servers. |
groups | array | Ja | Liste der Gruppen, denen der Benutzer zugeordnet ist. Jede Gruppe ist in dem folgendem Format geschrieben:
|
xsolla_login_project_id | string (UUID) | Ja | Login-Projekt-ID. |
username | string | Benutzername. | |
publisher_id | integer | ID eines Händlers, dem ein Login-Projekt gehört. | |
email | string | E-Mail-Adresse des Benutzers. | |
payload | string | Zusätzliche Informationen, die während der Authentifizierung im Payload-Parameter übermittelt werden. | |
promo_email_agreement | boolean | Zustimmung zum Erhalt eines Newsletters. Folgende Werte sind möglich:
true .So fügen Sie die Funktion der Registrierungsmaske des Login-Widgets hinzu:
| |
connection_information | string | Zeigt an, ob der Benutzer sein Geburtsdatum bestätigt hat oder nicht. Die Bestätigung erfolgt über den Dienst okname. |
Authentifizierung über soziale Netzwerke
Ansprüche, die nach der Authentifizierung über ein soziales Netzwerk im Token enthalten sind. Ob diese Ansprüche vorhanden sind, hängt nicht von der Nutzerdatenbank ab.
Anspruch | Typ | Erforderlich | Beschreibung |
---|---|---|---|
provider | string | Ja | Name des für die Authentifizierung genutzten sozialen Netzwerks. Mögliche Werte: amazon , apple , baidu , battlenet , discord , facebook , github , google , kakao , linkedin , mailru , microsoft , msn , naver , ok , paypal , psn , qq , reddit , steam , twitch , twitter , vimeo , vk , wechat , weibo , yahoo , yandex , youtube , xbox . |
id | string | Ja | Benutzer-ID im sozialen Netzwerk. |
is_cross_auth | boolean | Zeigt an, dass die Stille-Authentifizierung-Anfrage läuft. | |
social_access_token | string | Der zur Authentifizierung genutzte access_token -Parameter des Social-Media-Kontos. Wenden Sie sich an Ihren Customer Success Manager oder senden Sie eine E-Mail an csm@xsolla.com, um die Funktion einzurichten. | |
picture | string (URL) | Link zum Profilbild des Benutzers in einem sozialen Netzwerk. | |
birthday | date (RFC 3339) | Geburtsdatum des Benutzers in einem sozialen Netzwerk. | |
gender | string | Geschlecht des Benutzers in einem sozialen Netzwerk. | |
name | string | Nickname des Benutzers in einem sozialen Netzwerk. |
Ablauf für den Nutzer
- Ein Benutzer meldet sich beim Startprogramm an.
- Das Startprogramm empfängt den Autorisierungstoken mitsamt den Benutzerinformationen vom Xsolla Login-Server.
- Der Benutzer startet das Spiel über das Startprogramm.
- Beim Start des Spiels übermittelt das Startprogramm die folgenden Argumente an den Spiel-Client:
--xsolla-login-token <token>
– den vom Xsolla Login-Server erhaltenen Autorisierungstoken--xsolla-locale <locale>
– Sprache der Benutzeroberfläche
Beispiel:
game.exe --xsolla-login-token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJlbWFpbCI6InAudHVnb2x1a292QHhzb2xsYS5jb20iLCJleHAiOjE1ODU1MDYxMTMsImdyb3VwcyI6W10sImlhdCI6MTU4NDY0MjExMywiaXNzIjoiaHR0cHM6Ly9sb2dpbi54c29sbGEuY29tIiwicGFydG5lcl9kYXRhIjp7ImFkbWluIjp0cnVlfSwicGF5bG9hZCI6IiIsInByb21vX2VtYWlsX2FncmVlbWVudCI6dHJ1ZSwicHJvdmlkZXIiOiJ4c29sbGEiLCJyZWRpcmVjdF91cmwiOiIiLCJzdWIiOiIyNmYxNzI5Ni00Nzk5LTExZTgtOTBkMC00MjAxMGE4YTAwMTkiLCJ0eXBlIjoic29jaWFsIiwidXNlcm5hbWUiOiJzb21lX3VzZXJAbWFpbC5jb20iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6Ikk2QTJrTEZPQ2JkcnUzamIxMjNyT3JmWnNkTnFpdVcxMjNpWTdKcW85OHI5b0hPbyIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNDBkYjJlYTQtNWQ0Mi0xMWU2LWEzZmYtMDA1NDU2YTBlMTRhIn0.ZsTNiwY2iPp7HKqHs5g6JXzL2kv_RVuMNBlF-Tn2ccE --xsolla-locale en
- Der Spiel-Client sendet den erhaltenen Benutzertoken an den Spielserver, um die Benutzerdaten auf einen der folgende Wege abzurufen:
Wie komme ich dazu
- Implementieren Sie den Abruf der Benutzerdaten:
- Richten Sie die Parameterverarbeitung für das Spiel ein, um Benutzer automatisch zu authentifizieren.
- Implementieren Sie die Auswahl der Benutzeroberflächensprache auf der Grundlage der im Argument
--xsolla-locale <locale>
angegebenen Sprache auf dem Spiel-Client. - Implementieren Sie das Tracken neuer Benutzer und die Erstellung ihrer Konten auf dem Spielserver.
JWT auf dem Spieleserver dekodieren
- Öffnen Sie Ihr Projekt im Kundenportal, und wechseln Sie zum Abschnitt Login.
- Klicken Sie beim gewünschten Login-Projekt auf Konfigurieren.
- Scrollen Sie zum Block Sicherheit, und wählen Sie die Option JWT-Signatur.
- Kopieren Sie den Wert aus dem Feld Geheimer Schlüssel.
- Wählen Sie die Bibliothek, und integrieren Sie diese aufseiten Ihres Anwendungsservers.
- Übermitteln Sie den in Schritt 4 kopierten Wert an den Eintrag der Dekodierungsfunktion.
Benutzerdaten mithilfe der Login API abrufen
Rufen Sie die Login-API-Methode Benutzerdetails abrufen auf, um Benutzerdaten abzurufen.
Benutzerregistrierung
So tracken Sie die Registrierung neuer Benutzer:
- Öffnen Sie Ihr Projekt im Kundenportal, und wechseln Sie zum Abschnitt Login.
- Klicken Sie beim gewünschten Login-Projekt auf Konfigurieren.
- Klicken Sie im oberen Einstellungsblock auf Rückruf-URLs.
- Geben Sie im Feld Rückruf-URL die URL-Adresse an, zu der der Benutzer nach der Registrierung weitergeleitet werden soll.
- Konfigurieren Sie die Erstellung eines neuen Kontos im Spiel. Nach der Registrierung wird der Benutzer zu der im Feld Rückruf-URL angegebenen URL mitsamt dem Parameter
is_new=1
weitergeleitet. - Um Informationen zum Ausfüllen des Kontos zu erhalten, verwenden Sie die Methode Login API.
Beispiel:
https://<callbackUrl>?is_new=1&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWR
Sprache der Benutzeroberfläche
Example | Value | Meaning |
---|---|---|
–xsolla-locale en | “en”“ru”“cn”“tw”“fr”“de”“it”“pt”“es”“pl”“cs”“ko”“ar”“bg”“he”“ja”“tr”“th”“vi”“ro” | “English”“Русский”“简体中文”“中国传统的”“Français”“Deutsch”“Italiano”“Português”“Español”“Polski”“Čeština”“한국어”“العربية”“Български”“עברית”“日本語”“Türkçe”“ไทย”“Tiếng Việt”“Română” |
Haben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.