Authentifizierung über Ihren eigenen OAuth 2.0-Anbieter
Funktionsweise
Sie können die Benutzerautorisierung über Ihr soziales Netzwerk mithilfe des OAuth 2.0-Protokolls hinzufügen. Um eine Schaltfläche für Ihr soziales Netzwerk im Autorisierungs-Widget zu aktivieren, geben Sie die Anbieterdetails im Kundenportal an.

Authentifizierungsablauf
%%{init: {'themeVariables': { 'noteBkgColor': 'transparent', 'noteBorderColor': 'transparent' }}}%%
sequenceDiagram
actor User as User
participant TP as 3rd party
participant XL as Xsolla Login
participant OP as Partner OAuth2 Server
User->>TP: Clicks login button
TP->>XL: Calls Auth via social network (Xsolla Login API)
XL->>OP: Calls partner's Authorization URL
alt Success
OP-->>XL: Sends authorization code to https://login.xsolla.com/api/social/callback
else Dependency service unavailable
OP-->>XL: Sends "Dependency service unavailable" error. Error code = "010-035"
end
XL->>OP: Calls partner's Token URL to exchange authorization code to access token
alt Success
OP-->>XL: Sends access token
else Error getting token
OP-->>XL: Sends "Error occurred while getting OAuth 2.0 Access token" error. Error code = "010-015"
end
XL->>OP: Calls partner's Your info URL to get user data
alt Success
OP-->>XL: Sends user data
else Error getting profile
OP-->>XL: Sends "Failed to get social profile" error. Error code = "010-036"
end
XL-->>TP: Returns Xsolla Login token
TP-->>User: User is authenticated
Erstanmeldungsablauf
Der Benutzer klickt auf die Schaltfläche Log in with [Your Platform] im Autorisierungs-Widget.
Der Benutzer wird zu Ihrer Anmelde- oder Zustimmungsseite weitergeleitet (die Adresse ist im Authorization URL-Feld in den Einstellungen angegeben).
Der Benutzer gibt Anmeldedaten ein und genehmigt den Zugriff auf Ihrem System.
Ihr System leitet den Benutzer mit einem Autorisierungscode zurück zu Xsolla.
Xsolla kontaktiert Ihr System, um den Code gegen ein Zugriffstoken auszutauschen (die Adresse ist im Token URL-Feld in den Einstellungen angegeben).
Xsolla ruft die Profildaten des Benutzers (ID, E-Mail usw.) von Ihrem System mithilfe des Zugriffstokens ab (die Adresse ist im Your info URL-Feld in den Einstellungen angegeben).
Der Benutzer wird angemeldet und als authentifizierter Xsolla-Benutzer zur Anwendung zurückgeführt.
Ablauf für wiederkehrende Benutzer
Der Benutzer klickt auf die Schaltfläche Log in with [Your Platform] im Autorisierungs-Widget.
Der Benutzer wird zu Ihrer Anmelde- oder Zustimmungsseite weitergeleitet (die Adresse ist im Authorization URL-Feld in den Einstellungen angegeben).
Ihr System erkennt die aktive Sitzung und überspringt den Anmeldebildschirm. Wenn Ihr System bei jedem Besuch eine erneute Authentifizierung erfordert, sieht der Benutzer die Anmeldemaske erneut.
Ihr System überprüft, ob der Benutzer die angeforderten Berechtigungsumfänge bereits gewährt hat. Wenn die Zustimmung bereits erteilt wurde und nicht widerrufen wurde, wird der Zustimmungsbildschirm übersprungen.
Ihr System leitet den Benutzer mit einem Autorisierungscode zurück zu Xsolla.
Xsolla kontaktiert Ihr System, um den Code gegen ein Zugriffstoken auszutauschen (die Adresse ist im Token URL-Feld in den Einstellungen angegeben).
Xsolla ruft die aktuellen Profildaten des Benutzers von Ihrem System mithilfe des Zugriffstokens ab (die Adresse ist im Your info URL-Feld in den Einstellungen angegeben).
Der Benutzer wird angemeldet und zur Anwendung zurückgeführt. Der gesamte Ablauf wird in der Regel in wenigen Sekunden abgeschlossen, ohne dass eine sichtbare Interaktion vom Benutzer erforderlich ist.
Fehlgeschlagene Authentifizierung
Autorisierungs-URL nicht verfügbar (Fehler 010-035)
Der Benutzer klickt auf die Schaltfläche Log in with [Your Platform] im Autorisierungs-Widget.
Der Benutzer wird zu Ihrer Anmelde- oder Zustimmungsseite weitergeleitet (die Adresse ist im Authorization URL-Feld in den Einstellungen angegeben).
Der Partner-OAuth2-Server ist nicht verfügbar und gibt einen Fehler zurück.
Xsolla Login erhält einen “Dependency service unavailable”-Fehler (010-035) und fährt nicht fort.
Token-Austauschfehler (Fehler 010-015)
Der Benutzer klickt auf die Schaltfläche Log in with [Your Platform] im Autorisierungs-Widget.
Der Benutzer wird zu Ihrer Anmelde- oder Zustimmungsseite weitergeleitet (die Adresse ist im Authorization URL-Feld in den Einstellungen angegeben).
Der Benutzer gibt Anmeldedaten ein und genehmigt den Zugriff auf Ihrem System.
Ihr System leitet den Benutzer mit einem Autorisierungscode zurück zu Xsolla.
Xsolla kontaktiert Ihr System, um den Code gegen ein Zugriffstoken auszutauschen (die Adresse ist im Token URL-Feld in den Einstellungen angegeben).
Der Partner-OAuth2-Server kann kein Token ausstellen und gibt einen Fehler zurück.
Xsolla Login erhält einen “Error occurred while getting OAuth 2.0 Access token”-Fehler (010-015) und fährt nicht fort.
Fehler beim Abrufen von Nutzerdaten (Fehler 010-036)
Der Benutzer klickt auf die Schaltfläche Log in with [Your Platform] im Autorisierungs-Widget.
Der Benutzer wird zu Ihrer Anmelde- oder Zustimmungsseite weitergeleitet (die Adresse ist im Authorization URL-Feld in den Einstellungen angegeben).
Der Benutzer gibt Anmeldedaten ein und genehmigt den Zugriff auf Ihrem System.
Ihr System leitet den Benutzer mit einem Autorisierungscode zurück zu Xsolla.
Xsolla kontaktiert Ihr System, um den Code gegen ein Zugriffstoken auszutauschen (die Adresse ist im Token URL-Feld in den Einstellungen angegeben).
Xsolla ruft die Profildaten des Benutzers (ID, E-Mail usw.) von Ihrem System mithilfe des Zugriffstokens ab (die Adresse ist im Your info URL-Feld in den Einstellungen angegeben).
Der Partner-OAuth2-Server kann keine Nutzerdaten zurückgeben.
Xsolla Login erhält einen “Failed to get social profile”-Fehler (010-036) und fährt nicht fort.
Wie man es bekommt
Um die Autorisierung über OAuth 2.0 zu aktivieren:
Fügen Sie
https://login.xsolla.com/api/social/oauth2/callbackals erlaubte Weiterleitungs-URI in den Einstellungen Ihres eigenen OAuth 2.0-Anbieters hinzu, um Autorisierungsfehler zu vermeiden.Öffnen Sie Ihr Projekt im Kundenportal und gehen Sie zum Abschnitt Players > Login.
Klicken Sie auf Configure im Bereich einer klassischen Anmeldeoption.
Gehen Sie zum Block Authentication und wählen Sie die OAuth 2.0 login connection.
Füllen Sie die folgenden Felder aus:
Authorization name — Integrationsname. Wird zur Identifikation im Kundenportal verwendet. Kann Ziffern, lateinische Buchstaben, Bindestriche und Unterstriche ohne Leerzeichen enthalten, mit einer maximalen Länge von 100 Zeichen.
Authorization URL — URL der Methode zur Benutzerauthentifizierung.
Token URL — URL der Methode zum Erhalt eines Zugriffstokens.
Your info URL — URL der Methode zum Erhalt der Profildaten des Benutzers (wie ID und E-Mail) mithilfe des Zugriffstokens.
Client ID — eindeutiger Bezeichner des Clients auf dem Autorisierungsserver. Kann Ziffern, lateinische Buchstaben, Bindestriche und Unterstriche ohne Leerzeichen enthalten, mit einer maximalen Länge von 255 Zeichen.
Client secret key — eine eindeutige ID, die von Ihrem Autorisierungssystem generiert wird. Kann Ziffern, lateinische Buchstaben, Bindestriche und Unterstriche ohne Leerzeichen enthalten, mit einer Länge von 8-255.
Permission scope — die Liste der Zugriffsrechte, die Ihr System während der Autorisierung vom Benutzer anfordert (z. B.
openid,profile,email).
Richten Sie die Key name map ein:
Geben Sie den Schlüsselnamen für die E-Mail-Adresse in Ihrem System an (optional).
Geben Sie den Schlüsselnamen für die Benutzerkennung in Ihrem System an.
Geben Sie im Abschnitt Settings zusätzliche Authentifizierungseinstellungen an (optional):
auth_content_type— der Wert desContent-Type-Headers.auth_header— der Header, der das Autorisierungstoken beim Anfordern von Nutzerdaten überträgt (Autorisierung im Header).auth_param— der Name des Abfrageparameters, der das Autorisierungstoken beim Anfordern von Nutzerdaten überträgt (Autorisierung im Parameter).token_type— Tokentyp. Mögliche Werte:Bearer,OAuth.use_pkce— ein Flag, das die Verwendung der PKCE (Proof Key for Code Exchange)-Technologie während der Autorisierung anzeigt. Es wird dringend empfohlen, dies zu aktivieren, um den höchsten Sicherheitsstandard zu gewährleisten.
HinweisSchlüsselnamen sollten mit$.beginnen, zum Beispiel$.response[0].emailund$.response[0].id.

Wenn Sie die Integration über das Autorisierungs-Widget verwenden, richten Sie die Anpassung ein:
Geben Sie den Authorization button name an. Maximale Länge — 30 Zeichen.
Laden Sie Ihr Logo hoch. Empfohlene Größe: 24 × 24px. Unterstützte Formate: JPG, PNG und SVG.
Legen Sie die Schaltflächenfarbe für die Autorisierung fest.
Klicken Sie auf Save changes.
Wenn Sie die Integration über die Login-API-Methoden verwenden, konfigurieren Sie die Übertragung Ihrer Anbieter-ID im
provider_nameim folgenden Format:"<authorization_name>-<publisher_id>", wobei<authorization_name>— der von Ihnen in den Anbietereinstellungen angegebene Integrationsname ist und<publisher_id>— die ID Ihres Projekts im Kundenportal ist. Abhängig vom gewählten Autorisierungsprotokoll verwenden Sie die folgenden Methoden, um denprovider_name-Parameter zu übergeben:
Haben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.