OAuth 2
Verwenden Sie DTZ Identity als Ihren OAuth 2.0- und OpenID Connect (OIDC)-Provider, damit sich Benutzer mit ihren DTZ-Konten in Ihren Anwendungen anmelden können.
Was ist OIDC?
OpenID Connect (OIDC) ermöglicht es Ihrer Anwendung, Benutzer über DTZ Identity zu authentifizieren, ohne Passwörter direkt zu verarbeiten. Anstatt Benutzeranmeldeinformationen zu verwalten, leiten Sie Benutzer zur Anmeldung an DTZ weiter und erhalten dann ein sicheres Token, um auf ihre Informationen zuzugreifen.
Ideal für: Web-Apps, mobile Apps oder jeden Dienst, der eine sichere Benutzer-Authentifizierung benötigt.
Schnellstart
1. Holen Sie Ihre Context-ID
In DTZ verwendet jede Anwendung einen “context” als Bezeichner. Sie benötigen eine context-{uuid}, auf die Ihre Benutzer Zugriff haben.
Beispiel: context-abc123
Hinweis: Im System von DTZ sind sowohl Ihr
client_idals auch Ihrclient_secretdie gleiche Context-ID. Das vereinfacht die Einrichtung und gewährleistet gleichzeitig Sicherheit.
2. Wesentliche Endpunkte
Sie benötigen nur diese beiden Endpunkte, um zu starten:
| Zweck | Endpoint |
|---|---|
| Benutzeranmeldung | https://identity.dtz.rocks/api/2021-02-21/oauth/authorize |
| Token abrufen | https://identity.dtz.rocks/api/2021-02-21/oauth/token |
| Benutzerinformationen | https://identity.dtz.rocks/api/2021-02-21/oauth/userinfo |
3. Automatische Erkennung
Die meisten OAuth-Bibliotheken können sich mithilfe des Discovery-Endpunkts von DTZ automatisch konfigurieren:
https://identity.dtz.rocks/.well-known/openid-configuration
So funktioniert es
Schritt 1: Benutzer zu DTZ umleiten
Wenn sich ein Benutzer anmelden möchte, leiten Sie ihn weiter zu:
https://identity.dtz.rocks/api/2021-02-21/oauth/authorize?
response_type=code&
client_id=YOUR_CONTEXT_ID&
redirect_uri=https://yourapp.com/callback&
scope=openid&
state=random-string-for-security
Schritt 2: Benutzer meldet sich an
DTZ übernimmt den Anmeldevorgang:
- Ist bereits angemeldet → sofortige Weiterleitung zurück zu Ihrer App
- Ist nicht angemeldet → zeigt das Anmeldeformular, dann Weiterleitung zurück
Schritt 3: Code gegen Token austauschen
DTZ leitet mit einem Code zurück zu Ihrer App. Tauschen Sie ihn gegen ein Token ein:
curl -X POST https://identity.dtz.rocks/api/2021-02-21/oauth/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=authorization_code" \
-d "client_id=YOUR_CONTEXT_ID" \
-d "client_secret=YOUR_CONTEXT_ID" \
-d "redirect_uri=https://yourapp.com/callback" \
-d "code=THE_CODE_FROM_REDIRECT"
Schritt 4: Benutzerinformationen abrufen
Verwenden Sie das Access-Token, um Benutzerdetails abzurufen:
curl -X GET https://identity.dtz.rocks/api/2021-02-21/oauth/userinfo \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Antwort:
{
"sub": "identity-12345678",
"iss": "dtz.rocks",
"contexts": ["abc124"],
"roles": ["https://dtz.rocks/context/admin/abc123..."]
}