API Authentication
I meccanismi di autenticazione sono condivisi tra tutte le API DTZ. Quindi tutti i meccanismi descritti qui sono disponibili per tutte le API.
I dati di autenticazione possono essere trasportati attraverso i seguenti campi:
- bearer token
- basato su cookie
- api-key
- basic auth
Autenticazione
L’autenticazione è gestita dal servizio DTZ Identity.
OAuth 2.0 & OpenID Connect: Per un’integrazione completa di OAuth e OIDC, consulta la dettagliata Guida OAuth nella sezione Identity.
Possibili scenari di login:
WebUI
https://identity.dtz.rocks/login/

Con header HTTP Apikey
Per autenticarsi con una chiave API, la chiave deve essere passata come campo header X-API-KEY.
Ecco un esempio di comando curl:
curl -X GET "https://api.dtz.rocks/v1/me" -H "X-API-KEY: YOUR_API_KEY"
Con header HTTP Bearer Token
Per autenticarsi con un bearer token, il token deve essere passato come campo header Authorization: Bearer YOUR_BEARER_TOKEN.
Ecco un esempio di come ottenere un bearer token:
> 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
< }
Ecco un esempio di come usare il bearer token:
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": [ ]
< }
Con header HTTP Basic Auth
Ecco un esempio di comando curl su come usare basic auth per accedere all’API dtz.
curl -X GET -u 'apikey:apikey-1234' "https://identity.dtz.rocks/api/2021-02-21/me"
Come fallback, o quando l’autenticazione bearer regolare non è disponibile, il servizio accetta anche bearer token tramite lo schema basic auth.
curl -X GET -u 'bearer:{bearer-token}' "https://identity.dtz.rocks/api/2021-02-21/me"
Con cookie HTTP
È consentito anche l’uso del token JWT come cookie. Il token deve essere passato come cookie con il nome dtz-auth.
Con parametro Get
A volte, provider di terze parti non permettono di impostare alcuna autenticazione. Per questo caso, una chiave API può essere anche passata come parametro get con il nome apiKey.