API Authentication
Die Authentifizierungsmechanismen werden von allen DTZ-APIs gemeinsam genutzt. Somit stehen alle hier beschriebenen Mechanismen für alle APIs zur Verfügung.
Die Authentifizierungsdaten können über folgende Felder übertragen werden:
- Bearer-Token
- cookie-basiert
- API-Key
- Basic Auth
Authentifizierung
Die Authentifizierung wird vom DTZ Identity Service übernommen.
OAuth 2.0 & OpenID Connect: Für eine umfassende OAuth- und OIDC-Integration siehe den detaillierten OAuth Guide im Identity-Bereich.
Mögliche Anmelde-Szenarien:
WebUI
https://identity.dtz.rocks/login/

Mit HTTP Apikey Header
Um sich mit einem API-Schlüssel zu authentifizieren, muss der API-Schlüssel als Header-Feld X-API-KEY übergeben werden.
Hier ein Beispiel für einen curl-Befehl:
curl -X GET "https://api.dtz.rocks/v1/me" -H "X-API-KEY: YOUR_API_KEY"
Mit HTTP Bearer Token
Um sich mit einem Bearer-Token zu authentifizieren, muss das Token als Header-Feld Authorization: Bearer YOUR_BEARER_TOKEN übergeben werden.
Hier ein Beispiel, wie man ein Bearer-Token erhält:
> POST https://identity.dtz.rocks/api/2021-02-21/token/auth
> Content-Type: application/json
>
> {
> "username": "user",
> "password": "password"
> }
< {
< "access_token": "eyJhb...",
< "scope": "00000000-0000-0000-0000-000000000000",
< "token_type": "Bearer",
< "expires_in": 86400
< }
Hier ein Beispiel, wie das Bearer-Token verwendet wird:
curl -X GET "https://identity.dtz.rocks/api/2021-02-21/me" -H "Authorization: Bearer {bearer token}"
> GET https://identity.dtz.rocks/api/2021-02-21/me
> Authorization: Bearer eyJhb...
< {
< "roles": [ ]
< }
Mit HTTP Basic Auth Header
Hier ein Beispiel für einen curl-Befehl, wie man Basic Auth verwendet, um auf die DTZ API zuzugreifen.
curl -X GET -u 'apikey:apikey-1234' "https://identity.dtz.rocks/api/2021-02-21/me"
Als Fallback, oder wenn die reguläre Bearer-Authentifizierung nicht verfügbar ist, akzeptiert der Service auch Bearer-Tokens über das Basic-Auth-Schema.
curl -X GET -u 'bearer:{bearer-token}' "https://identity.dtz.rocks/api/2021-02-21/me"
Mit HTTP Cookie
Die Verwendung des JWT-Tokens als Cookie ist ebenfalls erlaubt. Das Token muss als Cookie mit dem Namen dtz-auth übergeben werden.
Mit GET-Parameter
Manchmal erlauben Drittanbieter nicht, Authentifizierungsheader zu setzen. In diesem Fall kann ein API-Schlüssel auch als GET-Parameter mit dem Namen apiKey übergeben werden.