Kundenseitiger Speicher
Bei Verwendung des eigenen Speichers haben Sie Zugriff auf:
- Benutzerregistrierung
- Authentifizierung über Benutzername und Passwort
- Passwortlose Authentifizierung über eine Telefonnummer
- Authentifizierung über soziale Netzwerke
- Zurücksetzen von Benutzerpasswörtern
Interaktionsablauf
Sie können das Login-Widget oder Ihre Anwendung, die die Login API-Aufrufe nutzt, als Client einsetzen. Die Interaktion zwischen dem Client und dem Xsolla Login-Server läuft wie folgt ab:
- Der Client sendet Anfragen an den Xsolla Login-Server. Das Anfrageformat ist in den Endpunkten JWT und Password erläutert.
- Der Xsolla Login-Server sendet Anfragen an Ihren Server. Befolgen Sie die Anleitung, um die Anfragen zu validieren.
- Der Xsolla Login-Server verarbeitet eine Antwort von Ihrem Server und sendet das Ergebnis an den Client zurück.
- Der Client verarbeitet die Antwort.
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). |
value | string | Der Wert des Benutzerattributs. Maximal Länge: 256 Zeichen. |
Benutzerregistrierung
- Der Client sendet die Anfrage
Register new user an den Xsolla Login-Server. - Der Xsolla Login-Server sendet ein Anfrage an die URL für neue Nutzer. Die Antwort muss dem in dieser Anleitung angegebenen Format entsprechen. In der Antwort können Sie eine Liste von Benutzerattributen angeben.
URL für neue Nutzer Antwortbeispiel:
http
- http
- curl
POST https://your.hostname/your_registration_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json
{
"email":"j.smith@email.com",
"password":"123456",
"username":"j.smith@email.com"
}
curl --request POST \
--url 'https://your.hostname/your_registration_uri' \
--header 'authorization: bearer_JWT' \
--header 'content-type: application/json' \
--data '{"email":"j.smith@email.com","password":"123456","username":"j.smith@email.com"}'
Antwortbeispiel:
- json
{
"attributes": [
{
"attr_type": "server",
"key": "company",
"permission": "private",
"value": "facebook-promo"
},
{
"attr_type": "server",
"key": "custom-id",
"permission": "private",
"value": 48582
}
]
}
- Nutzerdaten werden in die Xsolla-Datenbank geschrieben, während der Parameter
email
als "unbestätigt" gekennzeichnet wird. Der Benutzer erhält eine E-Mail zur Kontobestätigung. - Wenn Sie das Login-Widget integriert haben, wird der Benutzer zur Seite weitergeleitet. Dabei wird ihm folgende Meldung angezeigt: Bitte bestätigen Sie Ihr Konto gemäß den Anweisungen, die wir Ihnen per E-Mail an {email} gesendet haben.
- Auch bei einer fehlgeschlagenen Benutzerregistrierung können Sie eine Fehlermeldung im Authentifizierungs-Widget anzeigen. Übermitteln Sie dazu in der Antwort auf die Anfrage zur Benutzererstellung das Objekt
error
mit den folgenden Details:- Geben Sie im Parameter
code
den Wert011-002
an. - Geben Sie im Parameter
description
den Fehlermeldungstext an.
- Geben Sie im Parameter
- json
{
"error": {
"code": "011-002",
"description": "<string>"
}
}
Authentifizierung über Benutzername und Passwort
- Der Client sendet die Anfrage
Auth by username and password an den Xsolla-Server. - Der Xsolla Login-Server sendet ein Anfrage an die URL zur Benutzerverifizierung. Die Antwort muss dem in dieser Anleitung angegebenen Format entsprechen.
URL für neue Nutzer Antwortbeispiel:
http
- http
- curl
POST https://your.hostname/your_authentication_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json
{
"email":"j.smith@email.com",
"password":"123456",
"username":"j.smith@email.com"
}
curl --request POST \
--url 'https://your.hostname/your_authentication_uri' \
--header 'authorization: bearer_JWT' \
--header 'content-type: application/json' \
--data '{"email":"j.smith@email.com","password":"123456","username":"j.smith@email.com"}'
Antwortbeispiel:
- json
{
"attributes": [
{
"attr_type": "server",
"key": "company",
"permission": "private",
"value": "facebook-promo"
},
{
"attr_type": "server",
"key": "custom-id",
"permission": "private",
"value": 48582
}
]
}
- Der Xsolla Login-Server generiert einen Benutzer-JWT.
- Der Benutzer wird mittels
token
-Abfrageparameter zurlogin_url
weitergeleitet. Der Benutzer-JWT ist imtoken
-Parameter enthalten.
Passwortlose Authentifizierung über eine Telefonnummer
- Der Client öffnet ein Authentifizierungsformular, damit der Benutzer seine Telefonnummer eingeben kann.
- Der Benutzer gibt seine Telefonnummer ein.
- Der Client sendet die Anfrage
Start auth by phone number an den Xsolla Login-Server. - Im Client wird ein Feld angezeigt, in dem der Benutzer den Verifizierungscode eingeben kann.
- Der Benutzer gibt den erhaltenen Verifizierungscode ein.
- Der Client sendet die Anfrage
Complete auth by phone number an den Xsolla Login-Server. - Wenn sich der Benutzer erstmalig autorisiert, sendet der Xsolla Login-Server eine Anfrage an die URL für das passwortlose Anmelden mittels Mobiltelfon. Die Antwort muss in dem in dieser Anleitung beschriebenen Format erfolgen.
URL für neue Nutzer Antwortbeispiel:
http
- http
- curl
POST https://your.hostname/your_phone_authentication_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json
{
"login": "+12025550140",
"type": "phone"
}
curl --request POST \
--url 'https://your.hostname/your_phone_authentication_uri' \
--header 'authorization: bearer_JWT' \
--header 'content-type: application/json' \
--data '{"login":"+12025550140","type":"phone"}'
Antwortbeispiel:
- json
{
"attributes": [
{
"attr_type": "server",
"key": "company",
"permission": "private",
"value": "facebook-promo"
},
{
"attr_type": "server",
"key": "custom-id",
"permission": "private",
"value": 48582
}
]
}
Authentifizierung über soziale Netzwerke
Geben Sie die URL für die Anmeldung über soziales Netzwerk in den Einstellungen Ihres Login-Projekts im Kundenportal (unter Nutzerdatenbank > Speicher > Eigener Speicher) an, um Nutzerdaten bei der Authentifizierung über soziale Netzwerke abzurufen. An diese URL wird eine Anfrage mit den vom sozialen Netzwerk empfangenen Daten gesendet.
Authentifizierungsablauf:
- Der Client sendet die Anfrage
Auth via social network an den Xsolla Login-Server. - Der Benutzer meldet sich bei einem sozialen Netzwerk an.
- Der Xsolla Login-Server verarbeitet die vom sozialen Netzwerk empfangenen Nutzerdaten und sendet eine Anfrage an die URL für die Anmeldung über soziales Netzwerk. Die Antwort muss dem in dieser Anleitung angegebenen Format entsprechen.
Die Anfrage enthält Daten im temporären Token im Header Authorization: Bearer <JWT>
. Der bei der Anfrage übermittelte Benutzer-JWT enthält folgende Daten:
Claim | Typ | Beschreibung |
---|---|---|
exp | Unix Timestamp | Das Verfallsdatum und die Verfallsuhrzeit des JWT. Die JWT-Lebensspanne beträgt 7 Minuten. Erforderlich. |
iat | Unix Timestamp | Das Ausgabedatum und die Ausgabeuhrzeit des JWT. Erforderlich. |
iss | string | Der Dienst, der das JWT unterzeichnet hat https://login.xsolla.com . Erforderlich. |
request_type | string | Konstant: gateway_request . Erforderlich. |
xsolla_login_project_id | string (UUID) | Die ID Ihres Login-Projekts im Kundenportal. Erforderlich. |
string | E-Mail-Adresse des Benutzers. | |
sub | string (UUID) | Gespeicherte Benutzer-ID aufseiten des Xsolla Login-Servers. Erforderlich. |
username | string | Benutzername. |
provider | string | Name des für die Authentifizierung verwendeten sozialen Netzwerks. Erforderlich. |
id | string | Benutzer-ID im sozialen Netzwerk. Erforderlich. |
- json
{
"exp": 1573635020,
"iat": 1573634600,
"iss": "https://login.xsolla.com",
"request_type": "gateway_request",
"xsolla_login_project_id": "00000000-0000-0000-0000-000000000000",
"sub": "00000000-0000-0000-0000-000000000000",
"email": "example@test.com",
"username": "Smith707",
"provider": "google",
"id": "123",
}
URL für neue Nutzer Antwortbeispiel:
http
- http
- curl
POST https://your.hostname/your_social_authentication_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json
{}
curl --request POST \
--url 'https://your.hostname/your_social_authentication_uri' \
--header 'authorization: bearer_JWT' \
--header 'content-type: application/json'
Antwortbeispiel:
- json
{
"attributes": [
{
"attr_type": "server",
"key": "company",
"permission": "private",
"value": "facebook-promo"
},
{
"attr_type": "server",
"key": "custom-id",
"permission": "private",
"value": 48582
}
]
}
Benutzerpasswörter zurücksetzen
- Der Client sendet die Anfrage
Reset password an den Xsolla Login-Server. - Der Xsolla Login-Server sendet dem Benutzer eine Bestätigung über die Zurücksetzung des Passworts per E-Mail.
- Nachdem der Benutzer das Zurücksetzen des Passworts in der E-Mail bestätigt hat, wird er auf die entsprechende Seite weitergeleitet.
- Der Benutzer gibt ein neues Passwort ein.
- Der Xsolla Login-Server sendet eine Anfrage an die URL zum Zurücksetzen des Passworts. Die Antwort muss dem in dieser Anleitung angegebenen Format entsprechen.
URL für neue Nutzer Antwortbeispiel:
http
- http
- curl
POST https://your.hostname/your_reset_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json
{
"username": "john@gmail.com",
"fields": {
"password": "NewPa$$word1"
}
}
curl --request POST \
--url 'https://your.hostname/your_reset_uri' \
--header 'authorization: bearer_JWT' \
--header 'content-type: application/json' \
--data '{"email":"john@gmail.com","fields":{"password":"NewPa$$word1"}}'
War dieser Artikel hilfreich?
Diese Seite bewerten
Jetzt nicht
Vielen Dank für Ihr Feedback!
Weitere Informationen
Nützliche Links
So verknüpfen Sie den kundenseitigen SpeicherHaben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.