Passer au contenu principal

Before you start

Management API Auth0 fournit plusieurs points de terminaison que vous pouvez utiliser pour gérer les méthodes d’authentification  de vos utilisateurs. Cette méthode repose sur l’authentification à l’aide d’une application confidentielle. Pour en savoir plus sur les demandes confidentielles et publiques, consultez Applications confidentielles et publiques.

Obtenir toutes les méthodes d’authentification

Le point de terminaison Obtenir une liste de méthodes d’authentification permet d’obtenir une liste de toutes les méthodes d’authentification auxquelles un utilisateur a adhéré en tout ou en partie. Ce point de terminaison requiert la permission : read:authentication_methods.

Exemples

La requête suivante renvoie une liste de toutes les méthodes d’authentification pour un utilisateur donné.
curl --request GET \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}'

Réponse

Pour chaque demande valide, Management API renvoie une réponse au format JSON.
[
  {
    "id": "totp|dev_XXXXXXXXXXXXXXXX",
    "type": "totp",
    "confirmed": true,
    "created_at": "2021-09-23T22:57:30.206Z",
    "last_auth_at": "2021-09-23T22:57:51.652Z"
  }
]

Obtenir une méthode d’authentification unique

Le point de terminaison Obtention d’une méthode d’authentification par ID permet d’obtenir une méthode d’authentification unique pour un utilisateur désigné par l’ID de la méthode d’authentification. Ce point de terminaison requiert la permission : read:authentication_methods.

Exemples

La requête suivante renvoie une seule méthode d’authentification pour un utilisateur sur la base de l’ID de la méthode d’authentification indiquée.
curl --request GET \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods/%7BauthenticationMethodId%7D \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}'

Réponse

Pour chaque demande valide, Management API renvoie une réponse au format JSON.
{
    "id": "totp|dev_XXXXXXXXXXXXXXXX",
    "type": "totp",
    "confirmed": true,
    "created_at": "2021-09-23T22:57:30.206Z",
    "last_auth_at": "2021-09-23T22:57:51.652Z"
}

Créer une méthode d’authentification

Utilisez le point de terminaison Créer une méthode d’authentification pour un utilisateur donné pour créer une méthode d’authentification pour un utilisateur, y compris par SMS, courriel, mot de passe à usage unique (OTP) ou WebAuthn avec des clés de sécurité. Pour en savoir plus sur les facteurs d’authentification MFA possibles, consultez Facteurs d’authentification multifacteur (MFA). Ce point de terminaison nécessite la permission : create:authentication_methods.
Les méthodes d’authentification créées par l’intermédiaire de ce point de terminaison seront confirmées automatiquement et disponibles immédiatement. Vérifiez auprès de l’utilisateur que la méthode d’authentification est configurée correctement et qu’elle est toujours valide.

SMS

Envoyer aux utilisateurs un OTP par SMS, que l’utilisateur est ensuite invité à saisir avant de pouvoir terminer l’authentification.

Exemples

La demande suivante crée une méthode d’authentification par SMS pour un utilisateur.
curl --request POST \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}' \
  --data '{ "type": "phone", "name": "SMS", "phone_number": "+00000000000" }'

Réponse

Pour chaque demande valide, Management API renvoie une réponse au format JSON.
{
    "type": "phone",
    "name": "SMS",
    "created_at": "2023-01-01T00:00:00.000Z",
    "phone_number": "user@example.com",
    "id": "phone|dev_XXXXXXXXXXXXXXXX"
}

Courriel

Envoyer aux utilisateurs un OTP par courriel, que l’utilisateur est ensuite invité à saisir avant de pouvoir terminer l’authentification. Le facteur courriel n’est pris en charge que lorsque l’utilisateur ne dispose d’aucun autre facteur.

Exemples

La requête suivante crée une méthode d’authentification par courriel pour un utilisateur.
curl --request POST \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}' \
  --data '{ "type": "email", "name": "Email Factor", "email": "user@example.com" }'

Réponse

Pour chaque demande valide, Management API renvoie une réponse au format JSON.
{
    "type": "email",
    "name": "Email Factor",
    "created_at": "2023-01-01T00:00:00.000Z",
    "email": "user@example.com",
    "id": "email|dev_XXXXXXXXXXXXXXXX"
}

Mots de passe à usage unique (OTP)

Autoriser les utilisateurs à utiliser une application d’authentification, telle que Google Authenticator, sur leur appareil personnel pour générer un OTP qui change périodiquement, que l’utilisateur est invité à saisir avant de finir de s’authentifier.

Exemples

La demande suivante crée une méthode d’authentification OTP pour un utilisateur.
curl --request POST \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}' \
  --data '{ "type": "totp", "name": "OTP Application", "totp_secret": "{yourSecret}" }'

Réponse

Pour chaque demande valide, Management API renvoie une réponse au format JSON.
{
    "type": "totp",
    "name": "OTP Application",
    "created_at": "2023-01-01T00:00:00.000Z",
    "email": "user@example.com",
    "id": "totp|dev_XXXXXXXXXXXXXXXX"
}

WebAuthn avec clés de sécurité

Permettre aux utilisateurs d’utiliser des clés de sécurité conformes à FIDO (par ex., Yubikey ou Google Titan) pour effectuer une authentification multifacteur (MFA).

Exemples

La requête suivante crée une méthode d’authentification WebAuthn avec clés de sécurité pour un utilisateur.
curl --request POST \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}' \
  --data '{ "type": "webauthn_roaming", "name": "WebAuthn with security keys", "public_key": "{yourPublicKey}", "key_id": "{yourKeyId}", "relying_party_identifier": "{yourDomain}" }'

Réponse

Pour chaque demande valide, Management API renvoie une réponse au format JSON.
{
    "type": "webauthn-roaming",
    "name": "WebAuthn with security keys",
    "relyingPartyIdentifier": "example-tenant.auth0.com",
    "keyId": "X9FrwMfmzj...",
    "publicKey": "bXktcHVibGljLWtle...",
    "created_at": "2023-03-09T17:33:47.545Z",
    "id": "webauthn-roaming|dev_XXXXXXXXXXXXXXXX"
}

Remplacer toutes les méthodes d’authentification

Utilisez le point de terminaison Met à jour toutes les méthodes d’authentification en les remplaçant par celles fournies pour remplacer toutes les méthodes d’authentification existantes par celles fournies. Ce point de terminaison nécessite la permission : update:authentication_methods.

Exemples

La requête suivante remplace toutes les méthodes d’authentification existantes pour un utilisateur.
curl --request PUT \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}' \
  --data '[{ "type": "phone", "preferred_authentication_method": "sms", "phone_number": "+00000000000", "name": "SMS" }]'

Réponse

Pour chaque demande valide, Management API renvoie une réponse au format JSON.
[
  {
    "id": "phone|dev_XXXXXXXXXXXXXXXX",
    "type": "phone",
    "name": "SMS",
    "phone_number": "+00000000000",
    "created_at": "2023-03-09T17:53:23.647Z",
    "preferred_authentication_method": "sms",
    "authentication_methods": [
      {
        "id": "sms|dev_XXXXXXXXXXXXXXXX",
        "type": "sms"
      }
    ]
  }
]

Mise à jour d’une méthode d’authentification unique

Utilisez le point de terminaison Met à jour d’une méthode d’authentification pour mettre à jour une seule méthode d’authentification pour un utilisateur. Ce point de terminaison nécessite la permission : update:authentication_methods.

Exemples

La requête suivante met à jour une méthode d’authentification unique pour un utilisateur sur la base de l’identifiant de la méthode d’authentification spécifique.
curl --request PATCH \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods/%7BauthenticationMethodId%7D \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}' \
  --data '{ "name": "Mobile SMS" }'

Réponse

Pour chaque demande valide, Management API renvoie une réponse au format JSON.
{
    "type": "phone",
    "name": "Mobile SMS",
    "created_at": "2023-01-12T00:03:52.855Z",
    "last_auth_at": "2023-01-12T00:04:05.157Z",
    "phone_number": "+00000000000",
    "preferred_authentication_method": "sms",
    "id": "phone|dev_XXXXXXXXXXXXXXXX",
    "authentication_methods": [
        {
            "id": "phone|dev_XXXXXXXXXXXXXXXX",
            "type": "phone"
        }
    ]
}

Supprimer toutes les méthodes d’authentification

Utilisez le point de terminaison Supprime toutes les méthodes d’authentification pour l’utilisateur donné pour supprimer toutes les méthodes d’authentification d’un utilisateur. Ce point de terminaison nécessite la permission : delete:authentication_methods.

Exemples

La requête suivante supprime toutes les méthodes d’authentification pour un utilisateur.
curl --request DELETE \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}'

Réponse

Pour chaque demande valide, Management API renvoie une réponse avec un code d’état 204 et un corps vide.

Supprimer une méthode d’authentification unique

Utilisez le point de terminaison Supprime une méthode d’authentification par ID pour supprimer une seule méthode d’authentification pour un utilisateur.

Exemples

La requête suivante supprime une méthode d’authentification unique pour un utilisateur sur la base de l’ID de la méthode d’authentification indiquée.
curl --request DELETE \
  --url https://%7ByourDomain%7D/api/v2/users/%7BuserId%7D/authentication-methods/%7BauthenticationMethodId%7D \
  --header 'authorization: Bearer {yourMgmtApiAccessToken}'

Réponse

Pour chaque demande valide, Management API renvoie une réponse avec un code d’état 204 et un corps vide.

En savoir plus

I