Benutzerauthentifizierung einrichten
Die Authentifizierung ermöglicht es den Benutzern, Artikel im Web Shop zu kaufen und einzigartige Angebote im Katalog zu sehen.
Hauptmerkmale des Web Shops mit Authentifizierung:
- mehrere Autorisierungsmethoden im Web Shop
- personalisierte Startseiten und Promocodes für autorisierte Benutzer
- Einhaltung nationaler Gesetze und Vorschriften zum Schutz und zur Verarbeitung personenbezogener Daten
- Ratenbegrenzung und DDoS-Schutz
Folgende Authentifizierungsmethoden stehen zur Auswahl:
- Authentifizierung anhand der Benutzer-ID:
- Vereinfacht die Integration des Web Shops in das Spiel.
- Das Authentifizierungs-Widget erfordert keine Registrierung oder Passworteingabe. Der Nutzer muss lediglich die Benutzer-ID aus dem Spiel eingeben oder dasselbe Social-Media-Konto für die Anmeldung verwenden, das er auch für die Anmeldung beim Spiel verwendet.
- Authentifizierung über Benutzer-ID und Deep Link:
- Deep Links können als zusätzliche Authentifizierungsmethode beim Anmelden über die Benutzer-ID verwendet werden.
- Das Widget für die Authentifizierung über Benutzer-ID und Deep Link erfordert keine Registrierung oder Passworteingabe. Der Nutzer muss lediglich seine Benutzer-ID aus dem Spiel eingeben oder sich über einen Deep Link beim Spiel anmelden.
- Deep-Link-Authentifizierung:
- Wird ein Deep Link als primäre Anmeldemethode verwendet, können Zahlungsdaten gespeichert werden, wohingegen dies bei der Authentifizierung über Benutzer-ID nicht möglich ist.
- Authentifizierung über Xsolla Login:
- Bietet eine breite Palette von Autorisierungsmethoden: soziale Netzwerke, Einmalcodes oder ‑Links sowie Benutzername und Passwort.
- Ermöglicht es Ihnen, das Xsolla Login-Widget anzupassen.
- Sie können eine Altersbeschränkung für die Autorisierung festlegen.
- Authentifizierung über Xsolla Login mit verknüpfter Benutzer-ID:
- Ermöglicht es Ihnen, die Sicherheit von Xsolla-Login mit den Vorteilen einer Benutzer-ID aus einem Spiel zu kombinieren. Das Xsolla-Login-Widget funktioniert unabhängig vom Spiel-Client und wird über Webhooks in das Spiel integriert. Die verknüpfte Benutzer-ID dient dazu, dem Nutzer im Spiel Käufe schnell zu gewähren und personalisierte Angebote anzuzeigen.
- Es sind keine Änderungen aufseiten des Spiel-Clients erforderlich. Daher eignet sich diese Authentifizierungsmethode für Fälle, in denen sichergestellt werden muss, dass ausschließlich der Kontoinhaber auf den Web Shop zugreifen kann, beispielsweise um die unbefugte Nutzung von Treuepunkten zu verhindern.
Ablauf für den Nutzer
- Der Nutzer öffnet den Web Shop, für den die Authentifizierung über Benutzer-ID konfiguriert ist.
- Der Nutzer autorisiert sich im Web Shop auf eine der folgenden Arten:
- Der Nutzer gibt seine ID im Block Fast Login ein und klickt auf "Anmelden".
- Der Nutzer klickt bei dem ausgewählten Artikel auf "Kaufen" oder oben in der Leiste auf "Anmelden":
- Daraufhin öffnet sich ein Modalfenster, in dem der Nutzer seine ID eingeben oder ein soziales Netzwerk auswählen muss.
- Der Nutzer gibt seine ID ein und klickt auf Weiter. Alternativ klickt der Nutzer auf das Social-Media-Symbol, wählt ein soziales Netzwerk aus und schließt die Authentifizierung auf der Seite des sozialen Netzwerks ab.

- Das System prüft, ob der Nutzer im Spiel existiert. Wenn ein Nutzer mit dieser ID oder diesem Social-Media-Konto im Spiel existiert, wird er im Web Shop autorisiert. Andernfalls wird eine Fehlermeldung angezeigt.
Wie komme ich dazu
- Implementieren Sie aufseiten Ihrer Anwendung das Handling des Webhooks für die Benutzervalidierung.
Beim Empfang eines Webhooks sollte die Anwendung Folgendes tun:
- Nach einem Benutzer anhand seiner im Webhook übermittelten ID suchen.
- Je nach Ergebnis einen der folgenden HTTP-Statuscodes senden:
- 200 inklusive einer Antwort vom Webhook, sofern ein Benutzer gefunden wurde
- 404, sofern keine Benutzer-ID gefunden wurde
- Benutzerattribute zum Zwecke der Personalisierung senden.
Öffnen Sie Ihr Projekt im Kundenportal, und navigieren Sie zum Menüpunkt Storefronts > Websites.
Klicken Sie bei der gewünschten Website auf Site Builder öffnen.
Öffnen Sie Ihr Projekt im Handyspiele-Konto, und navigieren Sie zum Menüpunkt Web Shop.
Klicken Sie auf die gewünschte Website.
- Wenn Ihre Website mehrere Seiten umfasst, wählen Sie die gewünschte Seite aus:
- Klicken Sie oben im Editor auf den Titel der aktuellen Seite.
- Wählen Sie die gewünschte Seite aus der Drop-down-Liste aus.
- Wechseln Sie zum Block Login-Einstellungen.
- Wählen Sie die Option Benutzer-ID.
- Wählen Sie in der Drop-down-Liste die Option Neuer Login aus.
- Geben Sie die URL ein, unter der Sie Webhooks empfangen möchten. Diese URL darf von der unter Projekteinstellungen > Webhooks angegebenen URL abweichen.
- Geben Sie die URL ein, um Webhooks zu empfangen. Diese URL kann von der in Einstellungen > Webhooks angegebenen URL abweichen.
https:// beginnen. Die Angabe von http:// führt zu einem Fehler.- Konfigurieren Sie die Autorisierung über die sozialen Netzwerke, die bereits mit Ihrer Anwendung verknüpft sind (optional):
- Öffnen Sie Ihr Projekt im Kundenportal, und wechseln Sie zum Abschnitt Login.
- Klicken Sie auf Konfigurieren.
- Scrollen Sie zum Block Authentifizierung, und klicken Sie auf Anmeldung über soziale Netzwerke.
- Konfigurieren Sie die Autorisierung über die sozialen Netzwerke, die bereits mit Ihrer Anwendung verknüpft sind (optional):
- Öffnen Sie Ihr Projekt im Handyspiele-Konto, und navigieren Sie zum Menüpunkt Other tools > Login.
- Klicken Sie auf Konfigurieren.
- Scrollen Sie zum Block Authentifizierung, und klicken Sie auf Anmeldung über soziale Netzwerke.
- Klicken Sie auf der Karte des gewünschten sozialen Netzwerks, rechts neben dem Titel, auf das ⚙-Symbol und dann auf Verknüpfen.
Ein Deep Link ist eine spezielle URL, die den Nutzer nicht nur zur Hauptseite einer Anwendung oder Website weiterleitet, sondern direkt zu einem bestimmten Abschnitt, einer Unterseite oder einer Aktion.
Deep Links können als zusätzliche Authentifizierungsmethode beim Anmelden über Benutzer-ID verwendet werden. Ist das Spiel auf dem Mobilgerät des Nutzers installiert, wird dieser über einen Deep Link zum Spiel weitergeleitet und ein Autorisierungstoken abgerufen.
Ablauf für den Nutzer
In der mobilen App
- Ein nicht autorisierter Nutzer klickt im Web Shop auf die Anmelden- oder Kaufen-Schaltfläche. Daraufhin öffnet sich ein Modalfenster zur Eingabe der Benutzer-ID oder zur Anmeldung beim Handyspiel.
- Der Nutzer klickt auf Über Handyspiel anmelden.
- Der Nutzer wird zum Spiel und dann automatisch als autorisierter Nutzer zurück zum Web Shop weitergeleitet.
In der Desktop-Version
- Ein nicht autorisierter Nutzer klickt im Web Shop auf die Anmelden- oder Kaufen-Schaltfläche. Daraufhin öffnet sich ein Modalfenster zur Eingabe der Benutzer-ID oder zur Anmeldung bei der mobilen Version des Spiels per QR-Code.
- Der Nutzer scannt den QR-Code mit seinem Mobilgerät.
- Der Web Shop öffnet sich auf dem Mobilgerät des Nutzers.
- Der Nutzer wird automatisch zum Spiel und dann als authentifizierter Nutzer zurück zum Web Shop weitergeleitet.
Interaktionsablauf
%%{init: {'themeVariables': { 'noteBkgColor': 'transparent', 'noteBorderColor': 'transparent' }}}%%
sequenceDiagram
participant U as Nutzer
participant WS as Web Shop
participant B as Browser
participant MOS as Betriebssystem
participant G as Spiel
participant LA as Login API
U->>WS: klickt auf Schaltfläche, um sich über das Handyspiel anzumelden
activate WS
WS->>B: leitet den Nutzer über einen Deep Link weiter
activate B
B->>MOS: führt Systemaufruf zum Öffnen des Handyspiels aus
activate MOS
MOS->>G: öffnet Handyspiel
activate G
G->>LA: generiert Autorisierungstoken
activate LA
LA-->>G: gibt Autorisierungstoken zurück
deactivate LA
G->>MOS: führt Systemaufruf zum Öffnen des Browser auf (Token ist in der URL enthalten)
deactivate G
MOS-->>B: öffnet den Browser mit Token in der URL
deactivate MOS
B-->>WS: öffnet Web-Shop-Seite für autorisierte Nutzer
deactivate B
WS-->>U: zeigt Nutzernamen im Header an
deactivate WS
Einrichtung
Aufseiten des Spiels
- Registrieren Sie in den Einstellungen Ihrer Spiele-App ein URL-Schema, um das Spiel über einen Deep Link zu öffnen:
- in Android-Anwendungen – in der Datei
AndroidManifest.xml. - in iOS-Anwendungen – in der Datei
Info.plist.
- in Android-Anwendungen – in der Datei
- Wenn sich ein Nutzer nach der Registrierung des Schemas über das Spiel im Web Shop authentifiziert, sollte sich das Spiel unter der angegebenen Adresse öffnen.
- Link zum Öffnen des Spiels über ein registriertes URL-Schema (Beispiel):
schemeeine eindeutige Kennung Ihres Spiels ist, die in einem benutzerdefinierten URL-Schema verwendet wird, um die App zu starten und zur gewünschten Aktion zu navigieren.authorizeein beispielhafter Aktionsname ist, der nach dem Start des Spiels ausgeführt werden soll. Verwenden Sie einen Aktionsnamen, der den Aktionen im Betriebssystem Ihrer Anwendung entspricht.operationPayload=<VALUE>ein Parameter ist, der Informationen für die Tokengenerierung während der Authentifizierung enthält. Als Wert dienen von Xsolla generierte Base64-kodierte Daten.
scheme://authorize?operationPayload=<VALUE>, wobei:Der Parameter operationPayload muss korrekt verarbeitet werden. Übermitteln Sie ihn unverändert – Sie dürfen ihn weder entschlüsseln, modifizieren noch manuell generieren.
Falls der Parameter fehlt oder geändert wurde, erhält man als Antwort auf die Anfrage den Fehlercode 400.
- Beispiele:
- xml
1<key>CFBundleURLTypes</key>
2 <array>
3 <dict>
4 <key>CFBundleTypeRole</key>
5 <string>Editor</string>
6 <key>CFBundleURLSchemes</key>
7 <array>
8 <string>scheme</string>
9 </array>
10 </dict>
11 </array>

- xml
1<intent-filter>
2 <action android:name="android.intent.action.VIEW" />
3 <category android:name="android.intent.category.DEFAULT" />
4 <category android:name="android.intent.category.BROWSABLE" />
5 <data android:scheme="scheme" android:host="authorize" />
6</intent-filter>
- Implementieren Sie, dass ein Autorisierungstoken im JWT-Format mithilfe der spielpezifischen Benutzer-ID generiert wird.
| Parameter | Typ | Beschreibung |
|---|---|---|
loginId | string | ID der Autorisierungsmethode aus dem Kundenportal. Erforderlich. |
settings.projectId | integer | Projekt-ID. Diese wird im Kundenportal neben dem Namen des Projekts in der Adresszeile des Browsers angezeigt. Die URL weist das folgende Format auf: https://publisher.xsolla.com/<merchantId>/projects/<projectId>. Erforderlich. |
settings.merchantId | integer | Händler-ID. Diese finden Sie im Kundenportal unter Firmeneinstellungen > Firma oder in der URL in der Adresszeile des Browsers auf einer beliebigen Seite im Kundenportal. Die URL weist das folgende Format auf: https://publisher.xsolla.com/<merchantId>/. Erforderlich. |
user.id | string | Benutzer-ID im Spiel. Erforderlich. |
user.country | string | Ländercode, bestehend aus 2 Großbuchstaben gemäß ISO 3166-1 Alpha-2. Detaillierte Informationen zu den von Xsolla unterstützten Ländern und zum Verfahren zur Bestimmung des Landes finden Sie in der Dokumentation. Beispiel: US |
operationPayload | string | Parameter, der Informationen für die Tokengenerierung während der Authentifizierung enthält. Als Wert dienen von Xsolla generierte Base64-kodierte Daten. Erforderlich. |
| Parameter | Typ | Beschreibung |
|---|---|---|
loginId | string | ID der Autorisierungsmethode aus dem Handyspiele-Konto. Erforderlich. |
settings.projectId | integer | Projekt-ID. Diese wird im Handyspiele-Konto neben dem Namen des Projekts in der Adresszeile des Browsers angezeigt. Die URL weist das folgende Format auf: https://xsolla.com/for/mobile-games/account/<merchantId>/projects/<projectId>. Erforderlich. |
settings.merchantId | integer | Händler-ID. Diese finden Sie im Handyspiele-Konto unter Firmeneinstellungen > Firma oder in der URL in der Adresszeile des Browsers auf einer beliebigen Seite im Handyspiele-Konto. Die URL weist das folgende Format auf: https://xsolla.com/for/mobile-games/account/<merchantId>/. Erforderlich. |
user.id | string | Benutzer-ID im Spiel. Erforderlich. |
user.country | string | Ländercode, bestehend aus 2 Großbuchstaben gemäß ISO 3166-1 Alpha-2. Detaillierte Informationen zu den von Xsolla unterstützten Ländern und zum Verfahren zur Bestimmung des Landes finden Sie in der Dokumentation. Beispiel: US |
operationPayload | string | Parameter, der Informationen für die Tokengenerierung während der Authentifizierung enthält. Als Wert dienen von Xsolla generierte Base64-kodierte Daten. Erforderlich. |
- Aufruf der API-Methode mittels curl für die Generierung des Benutzertokens (Beispiel):
- curl
1curl -X 'POST' \
2'https://sb-user-id-service.xsolla.com/api/v1/user-id/token' \
3-H 'accept: /' \
4-H 'Content-Type: application/json' \
5-d '{
6 "loginId": "000001aa-001a-0ab0-00001-01a01a01a01a",
7 "settings": {
8 "projectId": 123456,
9 "merchantId": 123456
10 },
11 "user": {
12 "id": "123",
13 "country": "US"
14 }
15 "operationPayload": "kosarb2NyrtIWaegJAH1f6P7XrBYPXYDya5coc_ZzcfiS_5o4QTUAL-CcGRC_Kv4CAtg"
16}'
- Die Antwort sieht in etwa wie folgt aus:
{token="JWT_TOKEN"}.Fügen Sie ein Pop-up-Fenster mit einer Benachrichtigung über die erfolgreiche Autorisierung hinzu (optional).
Implementieren Sie, dass der Web Shop im Browser unter Verwendung des abgerufenen Benutzertokens geöffnet wird.
- Beispiel für eine URL zum Öffnen des Web Shops im Browser für einen autorisierten Nutzer:
https://example.com/?token={token}, wenn Sie eine benutzerdefinierte Domain verwendenhttps://example.xsolla.site/?token={token}, wenn Sie eine Xsolla-Domain verwenden
- wobei
{token} der Autorisierungstoken des Nutzers ist.Innerhalb von Site Builder
- Öffnen Sie Ihr Projekt im Kundenportal, und navigieren Sie zum Menüpunkt Storefronts > Websites.
- Öffnen Sie Ihr Projekt im Handyspiele-Konto, und navigieren Sie zum Menüpunkt Web Shop.
- Klicken Sie bei der gewünschten Web-Shop-Seite, für die eine Authentifizierung über Benutzer-ID eingerichtet ist, auf Konfigurieren.
- Wechseln Sie zu den Login-Einstellungen, und wählen Sie Benutzer-ID.
- Aktivieren Sie den Schalter Deep-Link-Autorisierung.
- Geben Sie im Feld Deep-Link-URL den Link für die Benutzerauthentifizierung ein.
- Wenn Sie einen Fast Login-Block auf der Website platziert haben:
- Wechseln Sie zum Fast Login-Block.
- Aktivieren Sie im Abschnitt Layout den Schalter QR-Code.
- Klicken Sie auf Vorschau, um die Authentifizierung zu überprüfen.
- Klicken Sie auf Veröffentlichen, um die Website zu veröffentlichen.
Ein Deep Link ist eine spezielle URL, die den Nutzer nicht nur zur Hauptseite einer Anwendung oder Website weiterleitet, sondern direkt zu einem bestimmten Abschnitt, einer Unterseite oder einer Aktion.
Deep Links ermöglichen es dem Nutzer, sich mit einem Klick über das Spiel im Web Shop zu authentifizieren, anstatt den Authentifizierungsprozess mittels Benutzer-ID oder Xsolla Login zu durchlaufen.
Ist das Spiel auf dem Mobilgerät des Nutzers installiert, wird dieser über einen Deep Link zum Spiel weitergeleitet und ein Autorisierungstoken abgerufen.
Wird ein Deep Link als primäre Authentifizierungsmethode verwendet, können Zahlungsdaten gespeichert werden, wohingegen dies bei einer Authentifizierung über Benutzer-ID und Deep Link nicht möglich ist. In diesem Fall beschleunigt der Deep Link lediglich die Authentifizierung, ergänzt aber keine neuen Funktionen.
Ablauf für den Nutzer
In der mobilen App
- Ein nicht autorisierter Nutzer klickt im Web Shop auf die Anmelden- oder Kaufen-Schaltfläche. Daraufhin öffnet sich ein Modalfenster, in dem er sich über das Handyspiel anmelden kann.
- Der Nutzer klickt auf Über Handyspiel anmelden.
- Der Nutzer wird zum Spiel und dann automatisch als autorisierter Nutzer zurück zum Web Shop weitergeleitet.
In der Desktop-Version
- Ein nicht autorisierter Nutzer klickt im Web Shop auf die Anmelden- oder Kaufen-Schaltfläche. Daraufhin öffnet sich ein Modalfenster zur Anmeldung bei der mobilen Version des Spiels per QR-Code.
- Der Nutzer scannt den QR-Code mit seinem Mobilgerät.
- Der Web Shop öffnet sich auf dem Mobilgerät des Nutzers.
- Der Nutzer wird automatisch zum Spiel und dann als authentifizierter Nutzer zurück zum Web Shop weitergeleitet.
Interaktionsablauf
%%{init: {'themeVariables': { 'noteBkgColor': 'transparent', 'noteBorderColor': 'transparent' }}}%%
sequenceDiagram
participant U as Nutzer
participant WS as Web Shop
participant B as Browser
participant MOS as Betriebssystem
participant G as Spiel
participant LA as Login API
U->>WS: klickt auf Schaltfläche, um sich über das Handyspiel anzumelden
activate WS
WS->>B: leitet den Nutzer über einen Deep Link weiter
activate B
B->>MOS: führt Systemaufruf zum Öffnen des Handyspiels aus
activate MOS
MOS->>G: öffnet Handyspiel
activate G
G->>LA: generiert Autorisierungstoken
activate LA
LA-->>G: gibt Autorisierungstoken zurück
deactivate LA
G->>MOS: führt Systemaufruf zum Öffnen des Browser auf (Token ist in der URL enthalten)
deactivate G
MOS-->>B: öffnet den Browser mit Token in der URL
deactivate MOS
B-->>WS: öffnet Web-Shop-Seite für autorisierte Nutzer
deactivate B
WS-->>U: zeigt Nutzernamen im Header an
deactivate WS
Einrichtung
Aufseiten des Spiels
- Registrieren Sie in den Einstellungen Ihrer Spiele-App ein URL-Schema, um das Spiel über einen Deep Link zu öffnen:
- in Android-Anwendungen – in der Datei
AndroidManifest.xml. - in iOS-Anwendungen – in der Datei
Info.plist.
- in Android-Anwendungen – in der Datei
- Wenn sich ein Nutzer nach der Registrierung des Schemas über das Spiel im Web Shop authentifiziert, sollte sich das Spiel unter der angegebenen Adresse öffnen.
- Link zum Öffnen des Spiels über ein registriertes URL-Schema (Beispiel):
schemeeine eindeutige Kennung Ihres Spiels ist, die in einem benutzerdefinierten URL-Schema verwendet wird, um die App zu starten und zur gewünschten Aktion zu navigieren.authorizeein beispielhafter Aktionsname ist, der nach dem Start des Spiels ausgeführt werden soll. Verwenden Sie einen Aktionsnamen, der den Aktionen im Betriebssystem Ihrer Anwendung entspricht.operationPayload=<VALUE>ein Parameter ist, der Informationen für die Tokengenerierung während der Authentifizierung enthält. Als Wert dienen von Xsolla generierte Base64-kodierte Daten.
scheme://authorize?operationPayload=<VALUE>, wobei:Der Parameter operationPayload muss korrekt verarbeitet werden. Übermitteln Sie ihn unverändert – Sie dürfen ihn weder entschlüsseln, modifizieren noch manuell generieren.
Falls der Parameter fehlt oder geändert wurde, erhält man als Antwort auf die Anfrage den Fehlercode 400.
- Beispiele:
- xml
1<key>CFBundleURLTypes</key>
2 <array>
3 <dict>
4 <key>CFBundleTypeRole</key>
5 <string>Editor</string>
6 <key>CFBundleURLSchemes</key>
7 <array>
8 <string>scheme</string>
9 </array>
10 </dict>
11 </array>

- xml
1<intent-filter>
2 <action android:name="android.intent.action.VIEW" />
3 <category android:name="android.intent.category.DEFAULT" />
4 <category android:name="android.intent.category.BROWSABLE" />
5 <data android:scheme="scheme" android:host="authorize" />
6</intent-filter>
- Implementieren Sie, dass ein Autorisierungstoken im JWT-Format mithilfe der spielpezifischen Benutzer-ID generiert wird.
| Parameter | Typ | Beschreibung |
|---|---|---|
loginId | string | ID der Autorisierungsmethode aus dem Kundenportal. Erforderlich. |
settings.projectId | integer | Projekt-ID. Diese wird im Kundenportal neben dem Namen des Projekts in der Adresszeile des Browsers angezeigt. Die URL weist das folgende Format auf: https://publisher.xsolla.com/<merchantId>/projects/<projectId>. Erforderlich. |
settings.merchantId | integer | Händler-ID. Diese finden Sie im Kundenportal unter Firmeneinstellungen > Firma oder in der URL in der Adresszeile des Browsers auf einer beliebigen Seite im Kundenportal. Die URL weist das folgende Format auf: https://publisher.xsolla.com/<merchantId>/. Erforderlich. |
user.id | string | Benutzer-ID im Spiel. Erforderlich. |
user.country | string | Ländercode, bestehend aus 2 Großbuchstaben gemäß ISO 3166-1 Alpha-2. Detaillierte Informationen zu den von Xsolla unterstützten Ländern und zum Verfahren zur Bestimmung des Landes finden Sie in der Dokumentation. Beispiel: US |
operationPayload | string | Parameter, der Informationen für die Tokengenerierung während der Authentifizierung enthält. Als Wert dienen von Xsolla generierte Base64-kodierte Daten. Erforderlich. |
| Parameter | Typ | Beschreibung |
|---|---|---|
loginId | string | ID der Autorisierungsmethode aus dem Handyspiele-Konto. Erforderlich. |
settings.projectId | integer | Projekt-ID. Diese wird im Handyspiele-Konto neben dem Namen des Projekts in der Adresszeile des Browsers angezeigt. Die URL weist das folgende Format auf: https://xsolla.com/for/mobile-games/account/<merchantId>/projects/<projectId>. Erforderlich. |
settings.merchantId | integer | Händler-ID. Diese finden Sie im Handyspiele-Konto unter Firmeneinstellungen > Firma oder in der URL in der Adresszeile des Browsers auf einer beliebigen Seite im Handyspiele-Konto. Die URL weist das folgende Format auf: https://xsolla.com/for/mobile-games/account/<merchantId>/. Erforderlich. |
user.id | string | Benutzer-ID im Spiel. Erforderlich. |
user.country | string | Ländercode, bestehend aus 2 Großbuchstaben gemäß ISO 3166-1 Alpha-2. Detaillierte Informationen zu den von Xsolla unterstützten Ländern und zum Verfahren zur Bestimmung des Landes finden Sie in der Dokumentation. Beispiel: US |
operationPayload | string | Parameter, der Informationen für die Tokengenerierung während der Authentifizierung enthält. Als Wert dienen von Xsolla generierte Base64-kodierte Daten. Erforderlich. |
Bevor ein Autorisierungstoken zum ersten Mal generiert wird, müssen Sie sich an den Kundenbetreuer Ihres Projekts wenden oder eine E-Mail an [email protected] senden, um die Tokenkonfiguration zu aktivieren. Dieser Schritt ist notwendig, um damit die Benutzerauthentifizierungsmethode ordnungsgemäß funktioniert.
- Aufruf der API-Methode mittels curl für die Generierung des Benutzertokens (Beispiel):
- curl
1curl -X 'POST' \
2'https://sb-user-id-service.xsolla.com/api/v1/user-id/token' \
3-H 'Accept: /' \
4-H 'Content-Type: application/json' \
5-d '{
6 "loginId": "string",
7 "settings": {
8 "projectId": 0,
9 "merchantId": 0
10 },
11 "user": {
12 "id": "string",
13 "country": "string",
14 "name": "string",
15 "picture": "string"
16 },
17 "operationPayload": "eyJ4c29sbGF1aWQiOiIzNzE5Nzc5NjU1MDE2Nzc2MzcifQ%3D%3D"
18}'
- Die Antwort sieht in etwa wie folgt aus:
{token="JWT_TOKEN"}.Fügen Sie ein Pop-up-Fenster mit einer Benachrichtigung über die erfolgreiche Autorisierung hinzu (optional).
Implementieren Sie, dass der Web Shop im Browser unter Verwendung des abgerufenen Benutzertokens geöffnet wird.
- Beispiel für eine URL zum Öffnen des Web Shops im Browser für einen autorisierten Nutzer:
https://example.com/?token={token}, wenn Sie eine benutzerdefinierte Domain verwendenhttps://example.xsolla.site/?token={token}, wenn Sie eine Xsolla-Domain verwenden
- wobei
{token} der Autorisierungstoken des Nutzers ist.Innerhalb von Site Builder
- Öffnen Sie Ihr Projekt im Kundenportal, und navigieren Sie zum Menüpunkt Storefronts > Websites.
- Klicken Sie bei der gewünschten Web-Shop-Seite auf Konfigurieren.
- Öffnen Sie Ihr Projekt im Handyspiele-Konto, und navigieren Sie zum Menüpunkt Web Shop.
- Klicken Sie in der Website-Karte auf das ⋮-Symbol und dann auf Konfigurieren.
- Wechseln Sie zu den Login-Einstellungen, und wählen Sie Deep Link.
- Geben Sie im Feld Deep-Link-URL den Link für die Benutzerauthentifizierung ein.
- Wenn Sie einen Fast Login-Block auf der Website platziert haben:
- Wechseln Sie zum Fast Login-Block.
- Passen Sie in den Blockeinstellungen den Anzeigestil für die QR-Code-Anmeldeschaltfläche an.
- Klicken Sie auf Vorschau, um die Authentifizierung zu überprüfen.
- Klicken Sie auf Veröffentlichen, um die Website zu veröffentlichen.
Ablauf für den Nutzer
- Der Nutzer öffnet den Web Shop, für den die Authentifizierung über Xsolla Login konfiguriert ist.
- Der Nutzer klickt bei dem ausgewählten Artikel auf die Schaltfläche “Kaufen”, auf die Schaltfläche “Anmelden” in der oberen Leiste oder auf die Schaltfläche “Anmelden” im Block Fast Login.
- Daraufhin öffnet sich ein Modalfenster, darin werden die in Xsolla Login eingerichteten Autorisierungsmethoden angezeigt.
- Der Nutzer fährt mit der Autorisierung fort und gibt ggf. weitere Daten ein.
- Das System prüft, ob der Nutzer im Spiel existiert. Wenn der Nutzer im Spiel existiert, wird er im Web Shop autorisiert. Andernfalls wird eine Fehlermeldung angezeigt.
Wie komme ich dazu
- Wechseln Sie im Baukasten Ihrer Website zum Block Login-Einstellungen.
- Wählen Sie die Autorisierungsoption Xsolla Login aus.
- Wählen Sie in der Drop-down-Liste Neuer Login aus.
Daraufhin wird automatisch ein Login-Projekt erstellt, bei dem die Benutzerauthentifizierung per E-Mail-Adresse und Passwort erfolgt. Für das erstellte Login-Projekt wird die Web Shop-URL in Form einer Rückruf-URL angegeben, an die der Benutzer in den folgenden Fällen weitergeleitet wird:
- nach erfolgreicher Authentifizierung
- nach erfolgreicher Bestätigung der E-Mail-Adresse
- nach dem Zurücksetzen des Passworts
- im Falle eines Authentifizierungsfehlers
Wenn Sie die Domain des Web Shops ändern, ändert sich auch automatisch die Rückruf-URL in den Login-Projekteinstellungen.
- Wechseln Sie aus dem Modalfenster zu den Login-Projekteinstellungen oder klicken Sie im Block Xsolla Login auf Konfigurieren Sie die Authentifizierungsmethoden.
Um die Authentifizierung im Web Shop zu ermöglichen, konfigurieren Sie dieselben sozialen Netzwerke wie für die Authentifizierung in Ihrer Anwendung. Wenn keine sozialen Netzwerke konfiguriert sind, ist die Benutzerauthentifizierung nur per E-Mail-Adresse und Passwort möglich.
Wenn Sie die Authentifizierung über soziale Netzwerke für den Web Shop einrichten, verwenden Sie dieselbe Anwendungs-ID und denselben geheimen Schlüssel wie für die Authentifizierung in Ihrer Anwendung.

- Benutzerdatenspeicher verknüpfen.
Je nachdem, wo die Nutzerdaten gespeichert sind, sind verschiedene Produktfunktionen verfügbar (siehe Vergleich der Nutzerdatenspeicher-Möglichkeiten).
Xsolla-Speicher
Wenn Sie möchten, dass Login die gesamte Authentifizierungslogik verarbeitet, verknüpfen Sie den Xsolla-Speicher. Infolgedessen stehen Ihnen flexiblere Einstellungen zur Verfügung.
Wenn Sie ein Login-Projekt erstellen, wird standardmäßig der Xsolla-Speicher verknüpft, es sind keine weiteren Schritte zur Konfiguration erforderlich. Gehen Sie wie folgt vor, wenn Sie den standardmäßigen Speichertyp geändert haben und den Xsolla-Speicher erneut verknüpfen müssen:
- Scrollen Sie zum Block Nutzerdatenbank, und klicken Sie auf Speicher.
- Wählen Sie Xsolla-Speicher aus, und klicken Sie auf Speichern.
PlayFab-Speicher
Wenn Sie die PlayFab-Funktionen für die Arbeit mit Benutzern verwenden möchten, verknüpfen Sie den PlayFab-Speicher. Im Speicher werden folgende Nutzerdaten hinterlegt:
- Benutzername
- E-Mail-Adresse des Benutzers
- Benutzerpasswort
- Felder aus einem erweiterten Registrierungsformular, sofern das Formular eingerichtet ist
Der PlayFab-Speicher ermöglicht Ihnen den Zugriff auf folgende Funktionen:
- Benutzerregistrierung
- Authentifizierung über E-Mail-Adresse oder Benutzername und Passwort
- Authentifizierung über Twitch
- Zurücksetzen von Benutzerpasswörtern
- Benutzer sperren
So verknüpfen Sie den Speicher:
- Scrollen Sie zum Block Nutzerdatenbank, und klicken Sie auf Speicher.
- Wählen Sie PlayFab aus.
- Geben Sie im Feld Titel-ID den Wert des gleichnamigen Felds aus Ihrem PlayFab-Konto ein.
- Klicken Sie auf Speichern.
Firebase-Speicher
Wenn Sie die Firebase-Funktionen für Benutzer verwenden möchten, verknüpfen Sie den Firebase-Speicher. In diesem Speicher sind folgende Nutzerdaten hinterlegt:
- Benutzername
- E-Mail-Adresse des Benutzers
- Benutzerpasswort
- Felder aus einem erweiterten Registrierungsformular, sofern das Formular eingerichtet ist
- Scrollen Sie zum Block Nutzerdatenbank, und klicken Sie auf Speicher.
- Wählen Sie Firebase aus.
- Geben Sie im Feld API-Schlüssel den Wert des gleichnamigen Felds aus Ihrem Firebase-Konto ein.
- Klicken Sie auf Speichern.
Kundenseitiger Speicher
Verknüpfen Sie den eigenen Speicher, wenn Sie ein eigenes Autorisierungssystem verwenden und Benutzerdaten aufseiten Ihrer Anwendung speichern.
Der eigene Speicher ermöglicht Ihnen den Zugriff auf folgende Funktionen:
- Benutzerregistrierung
- Authentifizierung über E-Mail-Adresse oder Benutzername und Passwort
- Passwortlose Authentifizierung über eine Telefonnummer
- Authentifizierung über soziale Netzwerke
- Zurücksetzen von Benutzerpasswörtern
- Verknüpfen Sie den eigenen Speicher.
- Konfigurieren Sie die Verarbeitung von Anfragen vom Xsolla Login-Server.
Kundenseitigen Speicher verknüpfen
- Scrollen Sie zum Block Nutzerdatenbank, und klicken Sie auf Speicher.
- Wählen Sie Eigener Speicher aus.
- Geben Sie die URLs ein, an die die API-Anfragen gesendet werden sollen:
- Klicken Sie auf Speichern.
- Implementieren Sie für die festgelegten URLs eine API, die wie folgt antwortet:
- mit dem Statuscode HTTP 200/HTTP 205 bei erfolgreichen Anfragen. Bei Bedarf kann ein JSON mit zusätzlichen Benutzerdaten in den Antwortrumpf eingefügt werden. Die übermittelten Daten werden in ein JWT geschrieben (Parameter
partner_data). - mit einem sonstigen HTTP-Statuscode bei einer fehlgeschlagenen Anfrage.
- mit dem Statuscode HTTP 200/HTTP 205 bei erfolgreichen Anfragen. Bei Bedarf kann ein JSON mit zusätzlichen Benutzerdaten in den Antwortrumpf eingefügt werden. Die übermittelten Daten werden in ein JWT geschrieben (Parameter
- Befolgen Sie die Anleitung, um JSON-Felder den Benutzerprofileigenschaften in Xsolla zuzuordnen und die Verknüpfung von Konten anhand der Benutzer-ID auf Ihrem Server zu konfigurieren.
- Damit die passwortlose Authentifizierung über eine Telefonnummer ordnungsgemäß funktioniert, muss Ihre API-Antwort den
account_id-Parameter enthalten, der mit der Benutzer-ID aus dem Client übereinstimmt.
Verarbeitung von Anfragen vom Xsolla Login-Server einrichten
Anfragen des Xsolla Login-Servers werden samt Header Authorization: Bearer <JWT> an die von Ihnen im Kundenportal angegebenen URLs gesendet. Der JWT wird mit dem geheimen Schlüssel Ihres Projekts unterzeichnet.
- Validieren Sie einen empfangenen JWT.
- Dekodieren Sie bei erfolgreicher Validierung das JWT und stellen Sie sicher, dass es die Claims aus der folgenden Tabelle enthält. Finden und verwenden Sie eine Bibliothek für die Dekodierung.
| Claim | Typ | Beschreibung |
|---|---|---|
| exp | Unix Timestamp | Das Verfallsdatum und die Verfallsuhrzeit des JWT. Die JWT-Lebensspanne beträgt 7 Minuten. |
| iat | Unix Timestamp | Das Ausgabedatum und die Ausgabeuhrzeit des JWT. |
| iss | string | Der Dienst, der das JWT unterzeichnet hat https://login.xsolla.com. |
| request_type | string | Konstant: gateway_request. |
| xsolla_login_project_id | string (UUID) | Die ID Ihres Login-Projekts im Kundenportal. |
| social_access_token | string (UUID) | Zugriffstoken des sozialen Netzwerks, über das der Nutzer authentifiziert wurde. Wenden Sie sich an Ihren Customer Success Manager oder senden Sie eine E-Mail an [email protected], wenn Sie diesen Claim übermitteln möchten. |
- json
1{
2 "exp": 1573635020,
3 "iat": 1573634600,
4 "iss": "https://login.xsolla.com",
5 "request_type": "gateway_request",
6 "xsolla_login_project_id": "00000000-0000-0000-0000-000000000000"
7}
Ablauf für den Nutzer
- Der Nutzer besucht den Web Shop zum ersten Mal, wobei die Authentifizierung über eine verknüpfte Benutzer-ID bereits konfiguriert sein muss.
- Der Nutzer klickt bei dem ausgewählten Artikel auf die Schaltfläche “Kaufen”, auf die Schaltfläche “Anmelden” in der oberen Leiste oder auf die Schaltfläche “Anmelden” im Block Fast Login.
- Daraufhin öffnet sich ein Modalfenster, darin werden die in Xsolla Login eingerichteten Autorisierungsmethoden angezeigt.
- Der Nutzer fährt mit der Autorisierung fort und gibt bei Bedarf zusätzliche Daten ein.

- Nach erfolgreicher Autorisierung über Xsolla Login öffnet sich ein Modalfenster, in dem der Nutzer seine ID aus dem Spiel verknüpft.

- Das System überprüft, ob der Nutzer existiert. Wenn der Nutzer mit der angegebenen ID im Spiel vorhanden ist, wird er im Web Shop autorisiert. Andernfalls wird eine Fehlermeldung angezeigt.
Vorgehensweise
Implementieren Sie aufseiten Ihrer Anwendung das Handling des Webhooks für die Benutzervalidierung.
Beim Empfang eines Webhooks sollte die Anwendung Folgendes tun:
- Nach einem Benutzer anhand seiner im Webhook übermittelten ID suchen.
- Je nach Ergebnis einen der folgenden HTTP-Statuscodes senden:
- 200 inklusive einer Antwort vom Webhook, sofern ein Benutzer gefunden wurde
- 404, sofern keine Benutzer-ID gefunden wurde
- Benutzerattribute zum Zwecke der Personalisierung senden.
- Öffnen Sie Ihr Projekt im Kundenportal, und navigieren Sie zum Menüpunkt Storefronts > Websites.
- Klicken Sie bei der gewünschten Website auf Site Builder öffnen.
- Öffnen Sie Ihr Projekt im Handyspiele-Konto, und navigieren Sie zum Menüpunkt Web Shop.
- Klicken Sie auf die gewünschte Website.
- Wenn Ihre Website mehrere Seiten umfasst, wählen Sie die gewünschte Seite aus:
- Klicken Sie oben im Editor auf den Titel der aktuellen Seite.
- Wählen Sie die gewünschte Seite aus der Drop-down-Liste aus.
- Wechseln Sie zum Block Login-Einstellungen.
- Wählen Sie die Option Anmeldung mit verknüpfter Benutzer-ID.
- Wählen Sie in der Drop-down-Liste die Option Neuer Login oder eines der erstellten Projekte.
- Geben Sie die URL an, unter der Sie Webhooks empfangen möchten.
https:// beginnen. Die Angabe von http:// führt zu einem Fehler.Sie können jede beliebige Autorisierungsmethode einrichten. Um jedoch die User Experience bei der erstmaligen Authentifizierung zu vereinfachen, empfehlen wir eine Anmeldung über soziale Netzwerke:
a. Öffnen Sie Ihr Projekt im Kundenportal, und navigieren Sie zum Menüpunkt Spieler > Login. b. Klicken Sie bei dem gewünschten Login-Projekt auf Konfigurieren.
c. Scrollen Sie zum Block Authentifizierung, und wählen Sie Anmeldung über soziale Netzwerke.
d. Klicken Sie auf der Karte des gewünschten sozialen Netzwerks, rechts neben dem Titel, auf das ⚙-Symbol und dann auf Verknüpfen.
Sie können jede beliebige Autorisierungsmethode einrichten. Um jedoch die User Experience bei der erstmaligen Authentifizierung zu vereinfachen, empfehlen wir eine Anmeldung über soziale Netzwerke: a. Öffnen Sie Ihr Projekt im Handyspiele-Konto, und navigieren Sie zum Menüpunkt Other tools > Login.
b. Klicken Sie bei dem gewünschten Login-Projekt auf Konfigurieren.
c. Scrollen Sie zum Block Authentifizierung, und wählen Sie Anmeldung über soziale Netzwerke.
d. Klicken Sie auf der Karte des gewünschten sozialen Netzwerks, rechts neben dem Titel, auf das ⚙-Symbol und dann auf Verknüpfen.
Block "Fast Login" einrichten
Im Block Fast Login können Sie den Autorisierungsschritt hervorheben und den Kaufvorgang für den Nutzer vereinfachen.

Um den Block Fast Login zu verwenden, müssen Sie zunächst in den Login-Einstellungen eine Autorisierungsmethode auswählen. Das Erscheinungsbild und das Verhalten des Blocks sind abhängig von der gewählten Authentifizierungsmethode.
Ist für die Website die Option Authentifizierung über Benutzer-ID konfiguriert, wird im Block Fast Login ein Feld für die Eingabe der ID und eine Anmeldeschaltfläche angezeigt.
Merkmale:
- Benutzerauthentifizierung ohne Umweg über das Modalfenster
- Einrichtung des Blockinhalts. Folgende Abschnitte können Sie aktivieren und konfigurieren:
- Titel
- Beschreibung
- Anweisungen zum Auffinden der Benutzer-ID
- Benutzerdefinierter Hintergrund
Sie können den Funktionsumfang des Blocks auch per JS-Code erweitern, z. B. Text, eine Schaltfläche oder ein Bild hinzufügen.
Für die Methode “Authentifizierung über Benutzer-ID” müssen Sie in den Login-Einstellungen außerdem die URL angeben, die den Webhook empfangen soll. Ist keine URL angeben, lässt sich die Website nicht veröffentlicht, weil die Benutzerauthentifizierung nicht verfügbar ist.
In der Website-Vorschau ist es auch ohne angegebene Webhook-URL möglich, Benutzer zu authentifizieren.
Der Block Fast Login wird automatisch auf den Websites platziert, die mit der Vorlage Web Shop erstellt wurden.
Sollte auf Ihrer Website ein solcher Block fehlen, können Sie ihn manuell in Site Builder hinzufügen.
So fügen Sie den Block Fast Login hinzu:
- Öffnen Sie das Projekt im Kundenportal, und navigieren Sie zum Menüpunkt Storefronts > Websites.
- Wählen Sie im Abschnitt Seiten die gewünschte Website aus, und klicken Sie auf Site Builder öffnen.
- Öffnen Sie Ihr Projekt im Handyspiele-Konto, und navigieren Sie zum Menüpunkt Web Shop.
- Klicken Sie auf die Karte Ihrer Website.
- Klicken Sie auf Block hinzufügen.
- Wählen Sie die Option Fast Login.
Weitere Informationen
Nützliche Links
IntegrationsablaufHaben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.