Benutzerinformationen innerhalb einer Organisation abrufen
Wo wird es verwendet
Dies wird üblicherweise auf der Benutzerprofilseite verwendet, auf der Benutzer ihre Organisationsinformationen anzeigen müssen.
Wie wird es implementiert
Es gibt zwei Möglichkeiten, Benutzerinformationen innerhalb einer Organisation abzurufen.
ID-Token entschlüsseln
Das ID-Token (ID token) ist ein standardisiertes JWT, das Benutzerprofilinformationen und organisationsbezogene Ansprüche (Claims) enthält. Rufe die SDK-Methode decodeIdToken() auf, um ein JSON-Objekt wie dieses zu erhalten:
{
"sub": "aauqbb63vg4s",
"name": "John Doe",
"picture": "https://example.com/johndoe.png",
"email": "johndoe@example.com",
// ...
"organizations": [
"organization-id-1",
"organization-id-2",
"organization-id-3"
// ...
],
"organization_roles": [
"organization-id-1:admin",
"organization-id-2:member",
"organization-id-3:viewer"
// ...
],
"aud": "admin-console"
// ...
}
Das ID-Token (ID token) wird jedoch nur während der Authentifizierung ausgegeben und kann veraltet sein, wenn sich das Benutzerprofil danach ändert.
Für die aktuellsten Informationen verwende die zweite Methode unten oder rufe clearAllTokens() auf und starte einen Authentifizierungsablauf neu, um ein frisches ID-Token (ID token) zu erhalten.
await logtoClient.clearAllTokens();
logtoClient.signIn({
redirectUri: 'https://your-app.com/callback',
prompt: 'consent',
});
Wenn die Sitzung noch gültig ist, leitet der signIn-Aufruf ohne erneute Eingabe von Zugangsdaten zurück zu deiner App. Aus Sicht des Benutzers wird die App einfach aktualisiert und im Hintergrund ein neues ID-Token (ID token) ausgegeben.
Benutzerinformationen vom /oidc/me-Endpunkt abrufen
Du kannst auch /oidc/me anfragen, um Benutzerinformationen in Echtzeit im Organisationskontext zu erhalten. Rufe dazu die SDK-Methode fetchUserInfo() auf.