Authentification
L'url d'authentification d'AGATA CONSENT est :
Mode d’authentification
Les API AGATA CONSENT utilisent le protocole OIDC, basé sur le protocole Oauth2.
OAuth2 permet d’autoriser une application (un Client) à utiliser l’API d’une autre application (Resource Server) pour le compte d’un utilisateur (Resource Owner).
En plus des mécanismes OAuth2, OIDC permet à un Client, de demander des informations sur l’utilisateur « connecté » (son adresse, ses droits …).
Client public
Ce client peut s’authentifier en utilisant un identifiant et un mot de passe lui permettant de récupérer un jeton (token) qu’il utilisera par la suite dans l’en-tête (Header) de ses requêtes HTTP.
Le type de Grant utilisé est « password ».
curl --location --request POST 'https://keycloak.agata-consent.com/auth/realms/sgc/protocol/openid-connect/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Cookie: KEYCLOAK_LOCALE=fr' \
--data-urlencode 'client_id=<client id>' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'username=<user>' \
--data-urlencode 'password=<password>'
Client applicatif
Ce client peut s’authentifier en utilisant le type de grant « client_credentials » associé à un client_id et un secret.
curl --location --request POST 'https://keycloak.agata-consent.com/auth/realms/sgc/protocol/openid-connect/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Cookie: KEYCLOAK_LOCALE=fr' \
--data-urlencode 'client_id=<client id>' \
--data-urlencode 'client_secret=<client secret>' \
--data-urlencode 'grant_type=client_credentials'