Benutzerdefinierter Nutzerdatenspeicher
Falls Sie den benutzerdefinierten Nutzerdatenspeicher verwenden, fungiert Xsolla Login als Vermittler, und alle Benutzeridentifikationsdaten werden auf Ihrer Seite gespeichert. Xsolla Login übergibt die Authentifizierungsdaten in einem Token, das in der Kopfzeile von Webhooks und in deren Bodys enthalten ist.
- Benutzerregistrierung
- Authentifizierung über Benutzername und Passwort
- passwortlose Authentifizierung über eine E-Mail-Adresse
- Authentifizierung über soziale Netzwerke
- Zurücksetzen von Benutzerpasswörtern
POST
-Anfragen von Xsolla keine URLs wie z. B. http://localhost:3000/my-webhook-endpoint
erreichen. Mit Ngrok können Sie einen Tunnel für den externen Zugriff anlegen und so Anfragen von Xsolla lokal empfangen. Weitere Informationen hierzu finden Sie in der ngrok-Dokumentation.Interaktionsablauf
- Geburtsdatum
- Vorname
- Nachname
- Benutzer-ID auf Ihrem Server
Sie können auch die Benutzerattribute aktualisieren, indem Sie ein Array von Objekten mit Benutzerattributen übermitteln. Die Struktur dieser Objekte wird im weiteren Text beschrieben.
Struktur eines Benutzerattributobjekts:
Parameter | Typ | Beschreibung |
---|---|---|
attr_type | string | Festlegung der Zugriffsebene eines Benutzers für dessen Zugriff auf Dienstattribute:
|
key | string | Der Attributname, anhand dem das Benutzerattribut identifiziert wird. Muss für jeden Benutzer eindeutig sein. Maximale Länge: 256 Zeichen. Ziffern, lateinische Buchstaben, Bindestriche und Unterstriche sind zulässig. |
permission | String oder null | Die Art und Weise, wie auf die Benutzerattribute zugegriffen wird, wirkt sich auf die Liste der von den Methoden zurückgegebenen Attribute aus:
Mögliche Werte: public , private (Standard). |
read_only | string | Ob das Attribut vor Änderungen geschützt ist. Standardmäßig ist false voreingestellt, und das Ändern von Attributwerten ist erlaubt. |
value | string | Der Wert des Benutzerattributs. Maximal Länge: 256 Zeichen. |
Benutzerregistrierung
Authentifizierung über Benutzername und Passwort
Passwortlose Authentifizierung über eine Telefonnummer
Passwortlose Authentifizierung über E-Mail
Authentifizierung über soziale Netzwerke
Benutzerpasswörter zurücksetzen
- Der Client sendet die
POST
-AnfrageReset password an den Xsolla-Login-Server. In der Anfrage müssen zwingend die folgenden Parameter enthalten sein:- der Abfrageparameter
projectId
– ID des Login-Projekts im Kundenportal. - der Rumpfparameter
username
– Benutzername. Zulässige Länge: 3 bis 255 Zeichen.
- der Abfrageparameter
- Der Xsolla-Login-Server sendet dem Nutzer eine Bestätigung per E-Mail über die Zurücksetzung des Passworts.
- Nachdem der Nutzer das Zurücksetzen des Passworts in der E-Mail bestätigt hat, wird er auf die entsprechende Seite weitergeleitet.
- Der Nutzer gibt ein neues Passwort ein.
- Der Xsolla-Login-Server sendet ein Webhook an die URL zum Zurücksetzen des Passworts.
- Sie können eine Fehlermeldung angeben, die im Authentifizierungs-Widget angezeigt wird, falls das Zurücksetzen des Passworts fehlschlägt. Dazu übermitteln Sie in der Antwort auf die Anfrage zum Anlegen eines neuen Nutzers das Objekt
error
mit folgenden Angaben:- Im Parameter
code
legen Sie einen Fehlercode fest, zum Beispiel den Wert011-002
. - Im Parameter
description
geben Sie den Text der Fehlermeldung ein.
- Im Parameter
URL-Webhook-Beispiel für das Zurücksetzen des Passworts:
http
- http
- curl
1POST https://your.hostname/your_reset_uri HTTP/1.1
2Authorization: Bearer {JWT}
3Content-Type: application/json
4
5{
6 "username": "john@gmail.com",
7 "fields": {
8 "password": "NewPa$$word1"
9 }
10}
1curl --request POST \
2 --url 'https://your.hostname/your_reset_uri' \
3 --header 'authorization: bearer_JWT' \
4 --header 'content-type: application/json' \
5 --data '{"email":"john@gmail.com","fields":{"password":"NewPa$$word1"}}'
Tokenaktualisierung
- Wenn der Zugriffstoken abläuft, sendet der Client die
POST
-Anfrage JWT generieren an den Xsolla-Login-Server. Im Anfragerumpf müssen zwingend die folgenden Parameter enthalten sein:grant_type
– wie der JWT gewährt wird; übermitteln Sie den Wertrefresh_token
.client_id
– OAuth-2.0-Client-ID.refresh_token
– Aktualisierungstoken, der als Antwort auf die Benutzerautorisierungsanfrage empfangen wurde.
- Der Xsolla-Login-Server verarbeitet die vom sozialen Netzwerk empfangenen Nutzerdaten und sendet einen Webhook an die URL zum Aktualisieren des Tokens. Die Antwort muss dem in diesem Interaktionsablauf beschriebenen Format entsprechen. In der Antwort können Sie eine Liste von Benutzerattributen und/oder ein erforderliches JSON-Objekt angeben. Das von Ihnen in der Antwort angegebene JSON-Objekt wird im Feld
partner_data
des Benutzer-JWT gespeichert.
- http
1POST https://your.hostname/your_refrsh_token_uri HTTP/1.1
2Authorization: Bearer {JWT}
3Content-Type: application/json
4
5{}
Beispiel einer Antwort auf einen Webhook mit Benutzerattributen:
- json
1{
2 "attributes": [
3 {
4 "attr_type": "server",
5 "key": "company",
6 "permission": "private",
7 "value": "facebook-promo"
8 },
9 {
10 "attr_type": "server",
11 "key": "custom-id",
12 "permission": "private",
13 "value": 48582
14 }
15 ]
16}
Beispiel einer Antwort auf ein Webhook mit einem JSON-Objekt:
- json
1{
2 "user": {
3 "player_id": "12345678",
4 "email": "user@example.com"
5 },
6 "user_info": {
7 "username": "gamer123",
8 "user_first_name": "John",
9 "user_last_name": "Doe",
10 "gender": "male",
11 "birthday": "1990-05-15",
12 "country": "US",
13 "language": "en"
14 },
15 "subscription_status": "active",
16 "loyalty_level": "gold"
17
18}
Weitere Informationen
Haben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.