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/

DTZ Identity 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"

È 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.