Login / Plattformübergreifendes Konto
 Alle Dokumentation

Login

  • Integrationsleitfaden

  • Authentifizierungs­optionen

  • Nutzerdatenspeicher

  • Sicherheit

  • Personalisierung

  • Anbieter von Kommunikationsdiensten

  • Funktionen

  • Anleitungen

  • Erweiterungen

  • Einstellungen zu Rechtlichem

  • Referenzen

  • Plattformübergreifendes Konto

    So funktioniert's

    Begriffserläuterung

    Sie haben im Kundenportal Zugriff auf folgende Login-Projekttypen:

    • Das Standard-Login-Projekt dient der Speicherung von Hauptkonten.
    • Das Schatten-Login-Projekt dient der Speicherung von Plattformkonten.

    Ein Hauptkonto ist ein in einem Standard-Login-Projekt erstellter Kontotyp und wird mit Plattformkonten verknüpft. Das Hauptkonto wird verwendet, um Spieler auf verschiedenen Plattformen zu identifizieren.

    Ein Plattformkonto ist ein in einem Schatten-Login-Projekt erstellter Kontotyp und wird mit einer bestimmten Publishing-Plattform verknüpft. Das Plattformkonto lässt sich mit keinem weiteren Plattformkonto verknüpfen. Zudem können Sie die Verknüpfung zwischen den Konten und einem Hauptkonto nicht aufheben.

    Eine Publishing-Plattform ist eine Plattform zur Distribution von Spielen (z. B. Steam, PlayStation, Xbox usw.).

    Ein plattformübergreifendes Konto ist ein Konto mit Haupt- und Plattformkontoverknüpfung.

    Für jedes Benutzerkonto mit Spielen auf einer bestimmten Plattform sollte ein entsprechendes Plattformkonto in einem Schatten-Login-Projekt existieren. Wenn ein Benutzer beispielsweise jeweils ein Spielkonto auf der Xbox- und der PlayStation-Plattform besitzt, sollten die Plattformkonten des Schatten-Login-Projekts mit den entsprechenden Xbox- bzw. PlayStation-Plattformkonto verknüpft sein.

    Nutzung von plattformübergreifenden Konten

    Das plattformübergreifende Konto ermöglicht Ihnen Folgendes:

    Bei miteinander verknüpften Haupt- und Plattformkonto:

    1. Benutzer authentifiziert sich auf einer Plattform.
    2. Der Xsolla-Login-Server sendet ein Hauptkontotoken an den Benutzer.
    3. Der Xsolla-Login-Server authentifiziert den Benutzer des Hauptkontos.

    Bei Nutzung des plattformübergreifenden Kontos entspricht die Benutzer-ID in einem Token der ID des Hauptkontos. Die Benutzer-ID finden Sie unter JWT > sub-Anspruch.

    Ablauf beim Verknüpfen von Konten

    Wenn der Benutzer über ein Hauptkonto verfügt, kann er es bei der Authentifizierung auf einer Plattform mit einem Plattformkonto verknüpfen. Der Ablauf sieht wie folgt aus:

    1. Der Spieler startet das Spiel auf der Konsolenspieleplattform zum ersten Mal.
    2. Im Spiel wird eine Nachricht angezeigt. Darin wird angeboten, das Plattformkonto mit dem Hauptkonto zu verknüpfen.
    3. Der Benutzer startet die Anwendung und authentifiziert sich im Hauptkonto.
    4. Die Anwendung sendet die Anfrage Create code for linking accounts an den Xsolla-Login-Server.
    5. In der Anwendung wird ein Code für das Verknüpfen der Konten angezeigt.
    6. Der Benutzer wechselt zur Konsolenversion des Spiels und gibt den Code ein.
    7. Der Spielserver sendet die Anfrage Link accounts by code an den Xsolla-Login-Server.
    8. Die Spielkonsole zeigt eine Bestätigungsnachricht an.

    Für wen ist es

    Partner, die Login bereits integriert haben und ein Konto bei einer Publishing-Plattform besitzen.

    Wie komme ich dazu

    Für die Integration eines plattformübergreifendes Konto benötigen Sie folgende Parameter aus dem Kundenportal:

    • main_project_id – ID eines Standard-Login-Projekts im UUID-Format. Zum Beispiel: f6c5011a-715e-4e5e-b7b1-a4812d85b8c8.
    • shadow_project_id – ID eines Schatten-Login-Projekts im UUID-Format. Diese Projekt wird als Schatten-Login-Projekt verwendet. Erstellen Sie ein Schatten-Login-Projekt, und geben Sie die zugehörige publisher_project_id in den Login-Projekteinstellungen an. Die shadow_project_id entspricht der ID des erstellten Projekts.
    • publisher_project_id – ID eines Projekts. Der Parameter wird unter Projekteinstellungen > Allgemeine Einstellungen > Projekt-ID angezeigt.

    Senden Sie die Parameter shadow_project_id und publisher_project_id an Ihren Customer Success Manager, um die folgenden OAuth 2.0-Client-Parameter abzurufen:

    • client_id – OAuth 2.0-Client-ID
    • client_secret – geheimer Schlüssel des OAuth 2.0-Client
    Sie können die obigen Parameter nutzen, um einen Servertoken abzurufen.

    Der Algorithmus für die Integration eines plattformübergreifenden Kontos sieht wie folgt aus:

    1. Benutzerauthentifizierung implementieren für:
      1. Hauptkonto
      2. Plattformkonto
    2. Konten verknüpfen:
      1. Code für das Verknüpfen abrufen
      2. Konten verknüpfen

    Authentifizierung von Benutzern im Hauptkonto

    Das Hauptkonto wird mit einer angegebenen main_project_id in einem Login-Projekt erstellt. Sie können sowohl das Login-Widget als auch die Login API zur Registrierung und Authentifizierung nutzen.

    Authentifizierung von Benutzern im Plattformkonto

    Wählen Sie zur Benutzerregistrierung und -authentifizierung über eine Plattform die Methode und folgen Sie den Anweisungen. Diese Methoden lassen sich kombinieren. Zum Beispiel können Sie die stille Authentifizierung für die Xbox-Plattform und die Authentifizierung über eine custom ID für eine andere Plattform verwenden.

    Authentifizierung über custom ID

    Nutzen Sie den Aufruf Auth by custom ID auf dem Spielserver, um ein Plattformkonto zu erstellen. Übermitteln Sie die folgenden Daten an diesen Aufruf:

    • den Parameter publisher_project_id oder shadow_project_id (andernfalls antwortet der Xsolla-Login-Server mit einem Fehler)
    • einen Servertoken
    • Benutzerdaten des Plattformkontos im Parameter social_profile

    Bei Nutzung dieses Authentifizierungsaufrufs können Sie die Liste der Freunde des Benutzers von verschiedenen Plattformen nicht abrufen. Die Liste der für die Authentifizierung verfügbaren Plattformen ist nicht beschränkt.

    Authentifizierungsablauf:

    1. Der Spiel-Client sendet die Authentifizierungsanfrage an einen Spielserver, wenn der Benutzer das Spiel startet.
    2. Der Spielserver generiert oder verwendet eine bereits vorhandene custom ID.
    3. Der Spielserver sendet die Anfrage Auth by custom ID an den Xsolla-Login-Server unter Angabe der Plattform und der darauf befindlichen Benutzerkennung (Parameter: platform und user_id). Wenn sich der Benutzer mit einer übermittelten custom ID nicht finden lässt, wird ein neuer Benutzer angelegt.
    4. Der Xsolla-Login-Server sendet ein Token an den Spieleserver.

    Anfragebeispiel:

    Copy
    Full screen
    Small screen
    http
    • http
    • curl

    POST https://login.xsolla.com/api/users/login/server_custom_id?publisher_project_id=<publisher_project_id> HTTP/1.1
    X-Server-Authorization: <server_token>
    Content-Type: application/json
    
    {
      "server_custom_id": "secret_value",
      "social_profile": {
        "platform": "xbox",
        "user_id": "123"
      }
    }
    curl --request POST \
      --url 'https://login.xsolla.com/api/users/login/server_custom_id?publisher_project_id=publisher_project_id' \
      --header 'content-type: application/json' \
      --header 'x-server-authorization: server_token' \
      --data '{"server_custom_id":"secret_value","social_profile":{"platform":"xbox","user_id":"123"}}'

    Antwortbeispiel:

    Copy
    Full screen
    Small screen

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
      "token": "<platform_user_token>"
    }

    Stille Authentifizierung

    Um die stille Authentifizierung einzurichten, erstellen Sie ein Schatten-Login-Projekt und folgen Sie den Anweisungen. Nutzen Sie die Methoden der stillen Authentifizierung auf dem Spielserver, um ein Plattformkonto zu erstellen.

    Verknüpfungscode abrufen

    So rufen Sie einen Verknüpfungscode ab:

    1. Nutzen Sie den Aufruf Create code for linking accounts. Übermitteln Sie den bei der Authentifizierung im Hauptkonto erhaltenen Benutzertoken an diesen Aufruf.
    2. Zeigen Sie dem Benutzer den empfangene Code an.

    Anfragebeispiel:

    Copy
    Full screen
    Small screen
    http
    • http
    • curl

    POST https://login.xsolla.com/api/users/account/code HTTP/1.1
    Authorization: Bearer <main_user_token>
    curl --request POST \
      --url https://login.xsolla.com/api/users/account/code \
      --header 'authorization: main_user_token'

    Antwortbeispiel:

    Copy
    Full screen
    Small screen

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
      "code": "123456"
    }

    Konten verknüpfen

    Nutzen Sie den Aufruf Link accounts by code, um ein Plattformkonto mit einem Hauptkonto zu verknüpfen. Übermitteln Sie den Parameter code samt dem vom Benutzer auf der Konsolenplattform eingegebenen Verknüpfungscode-Wert an diesen Aufruf.

    Anfragebeispiel:

    Copy
    Full screen
    Small screen
    http
    • http
    • curl

    POST https://login.xsolla.com/api/users/account/link HTTP/1.1
    X-Server-Authorization: <server_token>
    Content-Type: application/json
    
    {
      "code": "123456",
      "platform": "xbox",
      "user_id": "123",
      "publisher_project_id": 44056
    }
    curl --request POST \
      --url https://login.xsolla.com/api/users/account/link \
      --header 'content-type: application/json' \
      --header 'x-server-authorization: server_token' \
      --data '{"code":"123456","platform":"xbox","publisher_project_id":44056,"user_id":"123"}'

    Antwortbeispiel:

    Copy
    Full screen
    Small screen

    HTTP/1.1 204 No Content

    War dieser Artikel hilfreich?
    Vielen Dank!
    Gibt es etwas, das wir verbessern können? Nachricht
    Das tut uns leid
    Bitte erläutern Sie, weshalb dieser Artikel nicht hilfreich ist. Nachricht
    Vielen Dank für Ihr Feedback!
    Wir werden Ihr Feedback aufgreifen und dazu nutzen, Ihr Erlebnis verbessern.
    Diese Seite bewerten
    Diese Seite bewerten
    Gibt es etwas, das wir verbessern können?

    Jetzt nicht

    Vielen Dank für Ihr Feedback!
    Letztmalig aktualisiert: 27. Februar 2023

    Haben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.

    Problem melden
    Wir überprüfen unsere Inhalte ständig. Ihr Feedback hilft uns, sie zu verbessern.
    Geben Sie eine E-Mail-Adresse an, damit wir Sie erreichen können
    Vielen Dank für Ihr Feedback!