Willkommen auf dem OAuth-Server
Dieser Server implementiert OAuth 2.0:
Erste Schritte
Um diesen OAuth-Server zu nutzen, kontaktiere uns bitte, um einen OAuth-Antrag anzufordern.
Bitte gib eine kurze Beschreibung der Anwendung, die du erstellen möchtest, zusammen mit den unten stehenden Details an. Keine Sorge, wenn du dir unsicher bist - wir können die Beschreibung, die du uns gibst, zur Hilfe nehmen.
- Der Kundentyp: öffentlich oder vertraulich?
- Der Zuschusstyp: Autorisierung oder Client-Credentials?
- Die erlaubten Redirect URIs.
- Die Ressourcen, auf die du zugreifen möchtest. Bitte erkunde unsere API Dokumentation und unsere GraphQL API.
Beispiel (Berechtigung)
3. Autorisierungscode für Zugangstoken austauschen
POST /token/
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code&code=AUTH_CODE&redirect_uri=YOUR_REDIRECT_URI&client_id=YOUR_CLIENT_ID&code_verifier=YOUR_CODE_VERIFIER
Beispiel (Client-Anmeldedaten)
1. Zugangsdaten austauschen für ein Zugangs-Token
POST /token/
Authorization: Basic BASE64_ENCODED(client_id:client_secret)
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials
2. Zugang zur geschützten Ressource
GET /resource/
Authorization: YOUR_ACCESS_TOKEN
Beispiel (Gerät)
2. Gerätecode gegen Zugriffstoken austauschen
Während der User die Autorisierung durchführt, sollte das Gerät periodisch versuchen, ein Zugriffstoken zu erwerben (mit der durch interval Sekunden angegebenen Rate):
POST /token/
Content-Type: application/x-www-form-urlencoded
client_id=YOUR_CLIENT_ID&device_code=DEVICE_CODE&grant_type=urn:ietf:params:oauth:grant-type:device_code
3. Zugang zur geschützten Ressource
GET /resource/
Authorization: YOUR_ACCESS_TOKEN
Beispiel (Token-Austausch)
RFC 8693-Delegationssemantik wird unterstützt. Das bedeutet, dass Sie das Client-Credentials-Token sowohl im Authorization-Header als auch im actor_token verwenden, wie unten dargestellt.
1. Rufen Sie ein Zugriffstoken für Ihre Client-Credentials-App ab, wie beschrieben in Beispiel (Client-Anmeldedaten).
2. Unter der Annahme, dass EXTERNAL_IDP_USER_ACCESS_TOKEN von Ihrem externen IdP ausgestellt wurde, führen Sie den Token-Austausch-Aufruf durch:
POST /token
Authorization: YOUR_CLIENT_CREDENTIALS_ACCESS_TOKEN
Content-Type: application/x-www-form-urlencoded
grant_type="urn:ietf:params:oauth:grant-type:token-exchange"&
actor_token_type="urn:ietf:params:oauth:token-type:access_token"&
actor_token=YOUR_CLIENT_CREDENTIALS_ACCESS_TOKEN&
subject_token_type="urn:ietf:params:oauth:token-type:access_token"&
subject_token=EXTERNAL_IDP_USER_ACCESS_TOKEN
3. Zugang zur geschützten Ressource
GET /resource/
Authorization: YOUR_ACCESS_TOKEN