Auth0 ne prend pas en charge l’authentification SMS standard.
- Configurez une connexion SMS Passwordless. Pour savoir comment faire, consultez la section Implement Passwordless dans Connexions Passwordless.
- Obtenez un Jeton d’accès pour la Management API. Vous en aurez besoin pour effectuer des appels à la Management API afin de mettre à jour votre connexion Passwordless.
- Utilisez le point de terminaison GET Connections pour récupérer des renseignements sur les connexions associées à votre locataire. Plus précisément, vous devez obtenir l’ID de votre connexion SMS Passwordless afin de pouvoir l’utiliser dans un appel API ultérieur pour mettre à jour la connexion.
Assurez-vous de remplacer
ACCESS_TOKENpar le jeton que vous avez obtenu à l’étape 1 avant d’effectuer l’appel suivant à la Management API :
"name": "sms". Notez que la connexion affiche actuellement les informations Twilio que vous avez fournies pendant le processus de configuration.
-
Mettez à jour la connexion. Vous pouvez le faire en envoyant une requête PATCH au point de terminaison Mettre à jour une connexion. Plus précisément, vous allez mettre à jour l’objet
optionsde la connexion afin de fournir des informations sur la passerelle SMS. Apportez les modifications suivantes :- Supprimez les paramètres
twilio_sidettwilio_token - Ajoutez le paramètre
provideret attribuez-lui la valeursms_gateway - Ajoutez le paramètre
gateway_urlet attribuez-lui l’URL de votre passerelle SMS. Auth0 doit pouvoir joindre cette URL pour utiliser votre passerelle afin d’envoyer des messages en votre nom.
- Supprimez les paramètres
Requêtes authentifiées
options :
gateway_authentication dans votre objet options, Auth0 ajoute un JSON Web Token à l’en-tête Authorization chaque fois qu’il envoie des requêtes à votre passerelle SMS. Le jeton contient les valeurs gateway_authentication.subject et gateway_authentication.audience, et il est signé à l’aide de gateway_authentication.secret.
Si votre secret est encodé en base64url, définissez secret_base64_encoded à true.
Une fois la connexion mise à jour, Auth0 enverra ce qui suit à votre passerelle SMS chaque fois qu’un utilisateur s’inscrit ou se connecte avec votre connexion .
forward_req_info de l’objet options à true, la passerelle recevra également des informations sur la requête HTTP qui a déclenché le processus Passwordless. Cela comprend l’adresse IP de l’application qui appelle /passwordless/start et son agent utilisateur.
Gestion des erreurs
/passwordless/start renverra un code HTTP 400 ainsi qu’une réponse semblable à la suivante :
error_description sera Échec de l’authentification lors de l’appel à la passerelle SMS : 401. (Veuillez noter que le libellé de la description de l’erreur peut changer à tout moment.)
Auth0 impose un délai d’expiration de 30 secondes pour les appels HTTP aux passerelles SMS personnalisées. Si la passerelle SMS ne répond pas dans ce délai, le point de terminaison /passwordless/start renverra également un code HTTP 400. La réponse aura le format indiqué ci-dessus et le champ error_description sera Délai d’expiration lors de l’appel à la passerelle SMS : <Code d’expiration>. (Là encore, le libellé de la description de l’erreur peut changer à tout moment.)