OAuth 2

Verwenden Sie DTZ Identity als Ihren OAuth 2.0- und OpenID Connect (OIDC)-Anbieter, um es Benutzern zu ermöglichen, sich mit ihren DTZ-Konten bei Ihren Anwendungen anzumelden.

Was ist OIDC?

OpenID Connect (OIDC) ermöglicht es Ihrer Anwendung, Benutzer über DTZ Identity zu authentifizieren, ohne Passwörter direkt zu verwalten. Anstatt Benutzeranmeldeinformationen zu handhaben, leiten Sie Benutzer zur Anmeldung an DTZ weiter und erhalten dann ein sicheres Token, um auf ihre Informationen zuzugreifen.

Perfekt für: Web-Apps, mobile Apps oder jeden Dienst, der eine sichere Benutzerauthentifizierung benötigt.

Schnellstart

1. Holen Sie Ihre Context ID

In DTZ verwendet jede Anwendung einen “Context” als ihre Kennung. Sie benötigen eine context-{uuid}, auf die Ihre Benutzer Zugriff haben.

Beispiel: context-abc123

Hinweis: Im DTZ-System sind sowohl Ihre client_id als auch Ihr client_secret dieselbe Context ID. Dies vereinfacht die Einrichtung bei gleichbleibender Sicherheit.

2. Wesentliche Endpunkte

Diese zwei Endpunkte benötigen Sie, um zu starten:

Zweck Endpunkt
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. Auto-Discovery

Die meisten OAuth-Bibliotheken können sich automatisch mit dem DTZ-Discovery-Endpunkt konfigurieren:

https://identity.dtz.rocks/.well-known/openid-configuration

So funktioniert es

Schritt 1: Benutzer zu DTZ weiterleiten

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:

  • Wenn bereits angemeldet → sofortige Weiterleitung zurück zu Ihrer App
  • Wenn nicht angemeldet → zeigt das Anmeldeformular an und leitet dann zurück

Schritt 3: Code gegen Token tauschen

DTZ leitet mit einem Code zurück zu Ihrer App. Tauschen Sie ihn gegen ein Token:

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 Zugriffstoken, 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..."]
}