Authentification de l'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 les cookies
  • clé API
  • authentification basique

Authentification

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

OAuth 2.0 & OpenID Connect : Pour une intégration complète d’OAuth et d’OIDC, consultez le Guide OAuth détaillé dans la section Identity.

Scénarios de connexion possibles :

WebUI

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

Connexion DTZ Identity

Avec l’en-tête HTTP ApiKey

Pour s’authentifier avec une clé API, la clé API doit être envoyée dans l’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: YOUR_API_KEY"

Avec un jeton Bearer HTTP

Pour s’authentifier avec un jeton Bearer, celui-ci doit être envoyé dans l’en-tête Authorization: Bearer YOUR_BEARER_TOKEN.

Voici un exemple montrant comment obtenir un jeton 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 d’utilisation du jeton Bearer :

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": [ ]
< }

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 également les jetons Bearer via le schéma d’authentification basique.

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

L’utilisation du jeton JWT en tant que cookie est également autorisée. Le jeton doit être transmis dans un cookie nommé dtz-auth.

Avec un paramètre GET

Parfois, des fournisseurs tiers n’autorisent pas la définition d’en-têtes pour l’authentification. Dans ce cas, une clé API peut aussi être passée en paramètre GET avec le nom apiKey.