Zum Hauptinhalt springen

Kontoeinstellungen über Management API

Integrationen

Logto stellt verschiedene Management API zur Verfügung, um Benutzerkonten zu verwalten. Du kannst diese APIs nutzen, um eine Self-Service-Kontoeinstellungsseite für Endbenutzer zu erstellen.

Architektur

  1. Benutzer: Authentifizierter Endbenutzer, der auf seine Kontoeinstellungen zugreifen und diese verwalten möchte.
  2. Client-Anwendung: Deine Client-Anwendung, die dem Benutzer die Kontoeinstellungsseite bereitstellt.
  3. Serverseitige Anwendung: Serverseitige Anwendung, die die Kontoeinstellungen-API für den Client bereitstellt. Interagiert mit der Logto Management API.
  4. Logto: Logto als Authentifizierungs- und Autorisierungsdienst. Stellt die Management API zur Verwaltung von Benutzerkonten bereit.

Sequenzdiagramm

  1. Der Benutzer greift auf die Client-Anwendung zu.
  2. Die Client-Anwendung sendet die Authentifizierungsanfrage an Logto und leitet den Benutzer zur Logto-Anmeldeseite weiter.
  3. Der Benutzer meldet sich bei Logto an.
  4. Der authentifizierte Benutzer wird mit dem Autorisierungscode zurück zur Client-Anwendung geleitet.
  5. Die Client-Anwendung fordert das Zugangstoken von Logto für den Zugriff auf die Self-hosted-Kontoeinstellungen-API an.
  6. Logto gewährt das Zugangstoken an die Client-Anwendung.
  7. Die Client-Anwendung sendet die Kontoeinstellungen-Anfrage an die serverseitige Anwendung mit dem Benutzer-Zugangstoken.
  8. Die serverseitige Anwendung prüft die Identität und Berechtigung des Anfragenden anhand des Benutzer-Zugangstokens. Dann fordert sie ein Management API Zugangstoken von Logto an.
  9. Logto gewährt das Management API Zugangstoken an die serverseitige Anwendung.
  10. Die serverseitige Anwendung fordert die Benutzerdaten von Logto mit dem Management API Zugangstoken an.
  11. Logto prüft die Identität des Servers und die Management API Berechtigung und gibt die Benutzerdaten zurück.
  12. Die serverseitige Anwendung verarbeitet die Benutzerdaten basierend auf der Berechtigung des Anfragenden und gibt die Kontodetails an die Client-Anwendung zurück.

Management API in serverseitige Anwendung integrieren

Siehe den Abschnitt Management API, um zu erfahren, wie du die Management APIs mit serverseitigen Anwendungen integrierst.

Benutzerverwaltungs-APIs

Benutzerdaten-Schema

Siehe den Abschnitt Benutzerdaten und benutzerdefinierte Daten, um mehr über das Benutzerschema in Logto zu erfahren.

Benutzerprofil- und Identifikatoren-Management-APIs

Das Profil und die Identifikatoren eines Benutzers sind essenziell für die Benutzerverwaltung. Du kannst die folgenden APIs verwenden, um Benutzerprofile und Identifikatoren zu verwalten.

MethodePfadBeschreibung
GET/api/users/{userId}Benutzerdetails nach Benutzer-ID abrufen.
PATCH/api/users/{userId}Benutzerdetails aktualisieren.
PATCH/api/users/{userId}/profileBenutzerprofilfelder nach Benutzer-ID ändern.
GET/api/users/{userId}/custom-dataBenutzerdefinierte Daten nach Benutzer-ID abrufen.
PATCH/api/users/{userId}/custom-dataBenutzerdefinierte Daten nach Benutzer-ID aktualisieren.
PATCH/api/users/{userId}/is-suspendedSperrstatus des Benutzers nach Benutzer-ID aktualisieren.

E-Mail- und Telefonnummer-Verifizierung

Im Logto-System können sowohl E-Mail-Adressen als auch Telefonnummern als Benutzeridentifikatoren dienen, weshalb deren Verifizierung unerlässlich ist. Dafür stellen wir eine Reihe von Verifizierungscode-APIs bereit, um die angegebene E-Mail oder Telefonnummer zu verifizieren.

hinweis:

Stelle sicher, dass du die E-Mail oder Telefonnummer verifizierst, bevor du das Benutzerprofil mit einer neuen E-Mail oder Telefonnummer aktualisierst.

MethodePfadBeschreibung
POST/api/verifications/verification-codeVerifizierungscode für E-Mail oder Telefonnummer senden.
POST/api/verifications/verification-code/verifyE-Mail oder Telefonnummer mit Verifizierungscode prüfen.

Benutzerpasswort-Verwaltung

MethodePfadBeschreibung
POST/api/users/{userId}/password/verifyAktuelles Benutzerpasswort nach Benutzer-ID prüfen.
PATCH/api/users/{userId}/passwordBenutzerpasswort nach Benutzer-ID aktualisieren.
GET/api/users/{userId}/has-passwordPrüfen, ob der Benutzer ein Passwort hat.
hinweis:

Stelle sicher, dass du das aktuelle Passwort des Benutzers prüfst, bevor du das Passwort aktualisierst.

Verwaltung sozialer Identitäten des Benutzers

MethodePfadBeschreibung
GET/api/users/{userId}Benutzerdetails nach Benutzer-ID abrufen. Die sozialen Identitäten findest du im Feld identities.
POST/api/users/{userId}/identitiesEine authentifizierte soziale Identität mit dem Benutzer nach Benutzer-ID verknüpfen.
DELETE/api/users/{userId}/identitiesEine soziale Identität vom Benutzer nach Benutzer-ID trennen.
PUT/api/users/{userId}/identitiesEine mit dem Benutzer verknüpfte soziale Identität direkt aktualisieren.
POST/api/connectors/{connectorId}/authorization-uriDie Autorisierungs-URI für einen sozialen Identitätsanbieter abrufen. Verwende diese URI, um eine neue Verbindung zu initiieren.
  1. Der Benutzer greift auf die Client-Anwendung zu und fordert das Verknüpfen einer sozialen Identität an.
  2. Die Client-Anwendung sendet eine Anfrage an den Server, um eine soziale Identität zu verknüpfen.
  3. Der Server sendet eine Anfrage an Logto, um die Autorisierungs-URI für den sozialen Identitätsanbieter zu erhalten. Du musst deinen eigenen state-Parameter und redirect_uri in der Anfrage angeben. Stelle sicher, dass du die redirect_uri beim sozialen Identitätsanbieter registrierst.
  4. Logto gibt die Autorisierungs-URI an den Server zurück.
  5. Der Server gibt die Autorisierungs-URI an die Client-Anwendung zurück.
  6. Die Client-Anwendung leitet den Benutzer zur IdP-Autorisierungs-URI weiter.
  7. Der Benutzer meldet sich beim IdP an.
  8. Der IdP leitet den Benutzer mit dem Autorisierungscode und der redirect_uri zurück zur Client-Anwendung.
  9. Die Client-Anwendung validiert den state und leitet die IdP-Antwort an den Server weiter.
  10. Der Server sendet eine Anfrage an Logto, um die soziale Identität mit dem Benutzer zu verknüpfen.
  11. Logto ruft die Benutzerinformationen vom IdP mit dem Autorisierungscode ab.
  12. Der IdP gibt die Benutzerinformationen an Logto zurück und Logto verknüpft die soziale Identität mit dem Benutzer.
hinweis:

Es gibt einige Einschränkungen, die beim Verknüpfen neuer sozialer Identitäten mit einem Benutzer zu beachten sind:

  • Die Management API hat keinen Sitzungs-Kontext. Jeder Social Connector, der eine aktive Sitzung benötigt, um den Status der sozialen Authentifizierung sicher zu halten, kann nicht über die Management API verknüpft werden. Nicht unterstützte Connectoren sind unter anderem Apple, Standard OIDC und Standard OAuth 2.0 Connector.
  • Aus demselben Grund kann Logto den state-Parameter in der Autorisierungsantwort nicht prüfen. Stelle sicher, dass du den state-Parameter in deiner Client-App speicherst und prüfst, wenn die Autorisierungsantwort empfangen wird.
  • Du musst die redirect_uri im Voraus beim sozialen Identitätsanbieter registrieren. Andernfalls wird der soziale IdP den Benutzer nicht zurück zu deiner Client-App weiterleiten. Dein sozialer IdP muss mehr als eine Callback-redirect_uri akzeptieren, eine für die Benutzeranmeldung, eine für deine eigene Profilbindungsseite.

Verwaltung von Enterprise-Identitäten des Benutzers

MethodePfadBeschreibung
GET/api/users/{userId}?includeSsoIdentities=trueBenutzerdetails nach Benutzer-ID abrufen. Die Enterprise-Identitäten findest du im Feld ssoIdentities. Füge den Query-Parameter includeSsoIdentities=true hinzu, um sie einzuschließen.

Derzeit unterstützt die Management API nicht das Verknüpfen oder Trennen von Enterprise-Identitäten mit einem Benutzer. Du kannst nur die mit einem Benutzer verknüpften Enterprise-Identitäten anzeigen.

Persönlicher Zugriffstoken

MethodePfadBeschreibung
GET/api/users/{userId}/personal-access-tokensAlle persönlichen Zugriffstokens des Benutzers abrufen.
POST/api/users/{userId}/personal-access-tokensEinen neuen persönlichen Zugriffstoken für den Benutzer hinzufügen.
DELETE/api/users/{userId}/personal-access-tokens/{name}Einen Token für den Benutzer nach Name löschen.
PATCH/api/users/{userId\s}/personal-access-tokens/{name}Einen Token für den Benutzer nach Name aktualisieren.

Persönliche Zugriffstokens bieten eine sichere Möglichkeit für Benutzer, Zugangstoken (Access token) zu gewähren, ohne ihre Zugangsdaten und eine interaktive Anmeldung zu verwenden. Erfahre mehr über die Verwendung persönlicher Zugriffstokens.

Verwaltung der MFA-Einstellungen des Benutzers

MethodePfadBeschreibung
GET/api/users/{userId}/mfa-verificationsMFA-Einstellungen des Benutzers nach Benutzer-ID abrufen.
POST/api/users/{userId}/mfa-verificationsMFA-Verifizierung für den Benutzer einrichten.
DELETE/api/users/{userId}/mfa-verifications/{verificationId}MFA-Verifizierung des Benutzers nach ID löschen.

Benutzerkonto löschen

MethodePfadBeschreibung
DELETE/api/users/{userId}Benutzer nach Benutzer-ID löschen.