Authentification API

Les mécanismes d’authentification sont partagés entre toutes les API DTZ. Ainsi, tous les mécanismes décrits ici sont disponibles pour toutes les API.

Les données d’authentification peuvent être transmises via les champs suivants :

  • jeton bearer
  • basé sur cookie
  • clé API
  • authentification basique

Authentification

L’authentification est gérée par le service d’identité DTZ.

Scénarios de connexion possibles :

WebUI

https://identity.dtz.rocks/login/

Avec l’en-tête HTTP Apikey

Pour s’authentifier avec une clé API, la clé API doit être passée en tant que champ d’en-tête X-API-KEY.

Voici un exemple de commande curl :

curl -X GET "https://api.dtz.rocks/v1/me" -H "X-API-KEY: VOTRE_CLE_API"

Avec l’en-tête HTTP Bearer Token

Pour s’authentifier avec un token bearer, le token doit être passé en tant que champ d’en-tête Authorization: Bearer VOTRE_JETON_BEARER.

Voici un exemple comment obtenir un token bearer :

> 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
< }

Voici un exemple comment utiliser le token bearer :

curl -X GET "https://identity.dtz.rocks/api/2021-02-21/me" -H "Authorization: Bearer {jeton bearer}"
> GET https://identity.dtz.rocks/api/2021-02-21/me
> Authorization: Bearer eyJhb...

< {
<   "roles": [ ]
< }

Avec l’en-tête HTTP Basic Auth

Voici un exemple de commande curl pour utiliser l’authentification basique, afin d’accéder à l’API dtz.

curl -X GET -u 'apikey:apikey-1234' "https://identity.dtz.rocks/api/2021-02-21/me"

En dernier recours, ou lorsque l’authentification bearer classique n’est pas disponible, le service accepte aussi les tokens bearer via le schéma d’authentification basique.

curl -X GET -u 'bearer:{jeton-bearer}' "https://identity.dtz.rocks/api/2021-02-21/me"

Il est également permis d’utiliser le token JWT en tant que cookie. Le token doit être transmis dans un cookie nommé dtz-auth.

Avec un paramètre GET

Parfois, les fournisseurs tiers ne permettent pas de définir l’authentification. Dans ce cas, une clé API peut aussi être transmise comme paramètre GET nommé apiKey.