Démarrez avec l'API des méthodes d'authentification Microsoft Graph
Les méthodes d'authentificationsont les moyens par lesquels les utilisateurs s'authentifient dans Azure Active Directory (Azure AD). Les méthodes d'authentification dans Azure AD comprennent le mot de passe et le téléphone (par exemple, les SMS et les appels vocaux), qui sont aujourd'hui gérables dans Microsoft Graph, parmi beaucoup d'autres comme les clés de sécurité FIDO2 et l'application Microsoft Authenticator. Les méthodes d'authentification sont utilisées dans l'authentification primaire, secondaire et progressive, ainsi que dans le processus de réinitialisation du mot de passe en libre-service (SSPR).
Vous pouvez utiliser les API de méthodes d'authentification pour gérer les méthodes d'authentification d'un utilisateur. Par exemple, vous pouvez:
- Ajouter un numéro de téléphone pour un utilisateur, qui peut ensuite utiliser ce numéro pour l'authentification des SMS et des appels vocaux s'il est autorisé à l'utiliser par la politique
- Mettre à jour ou supprimer le numéro de téléphone attribué à un utilisateur
- Activer ou désactiver le numéro pour la connexion SMS
- Réinitialiser le mot de passe d'un utilisateur
Les API sont un outil essentiel pour gérer les méthodes d'authentification de vos utilisateurs.
Dans ce tutoriel, vous apprendrez comment le faire :
- S'authentifier auprès d'Azure AD avec les bons rôles et autorisations
- Vérifier les méthodes d’authentification de l’utilisateur
- Ajouter de nouveaux numéros de téléphone pour l'utilisateur
- Supprimer un numéro de téléphone de l'utilisateur
- Réinitialiser le mot de passe de l'utilisateur
Étape 1 : S'authentifier auprès d'Azure AD avec les bons rôles et autorisations
En utilisant votre outil préféré pour interagir avec Microsoft Graph,, connectez-vous en utilisant un compte avec l'un de ces rôles :
- Administrateur global
- Administrateur d'authentification privilégié
- Administrateur de l'authentification
Ensuite, modifiez vos autorisations. Nous utiliserons la méthode d'authentification de l'utilisateur (UserAuthenticationMethod.ReadWrite.All) pour ce tutoriel, alors assurez-vous qu'elle est activée dans l'explorateur de graphiques ou dans votre application.
Une fois que le champ d'application est attribué et accepté, vous pouvez commencer à utiliser l'API. Les exemples ici utilisent un utilisateur standard nommé Avery Howard.. Vous devez utiliser un compte test préexistant ou en créer un nouveau en suivant ces instructions. Ces API sont en ligne, donc ne les testez pas sur des utilisateurs réels.
Étape 2 : Vérifier les méthodes d'authentification de l'utilisateur
Passez un appel pour connaître les méthodes d'authentification de l'utilisateur. Prenez l'URL pour voir le profil d'un utilisateur et ajoutez /authentication/methods
:
Demande
GET https://graph.microsoft.com/beta/users/avery.howard@wingtiptoysonline.com/authentication/methods
Réponse
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('avery.howard%40wingtiptoysonline.com')/authentication/methods",
"value": [
{
"@odata.type": "#microsoft.graph.passwordAuthenticationMethod",
"id": "28c10230-6103-485e-b985-444c60001490",
"password": null,
"creationDateTime": null
}
]
}
Étape 3 : Ajout de nouveaux numéros de téléphone pour l'utilisateur
Depuis l'étape précédente, un nouvel utilisateur (Avery) n'a qu'un mot de passe enregistré. Pour assigner un nouveau numéro de téléphone à Avery, faites une POST
demande en indiquant le type et le numéro de téléphone dans le corps. Pour indiquer au système qu'un numéro de téléphone est ajouté, vous devez également changer la fin de l'URL demethods
à phoneMethods
.
Demande
POST https://graph.microsoft.com/beta/users/avery.howard@wingtiptoysonline.com/authentication/phoneMethods
Content-Type: application/json
{
"phoneType": "mobile",
"phoneNumber": "+1 2065550123"
}
Réponse
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('avery.howard%40wingtiptoysonline.com')/authentication/phoneMethods/$entity",
"id": "3179e48a-750b-4051-897c-87b9720928f7",
"phoneNumber": "+1 2065550123",
"phoneType": "mobile",
"smsSignInState": "ready"
}
Pour ajouter le numéro du bureau d'Avery, vous POST
retrouverez à nouveau sur la même URL mais vous devrez mettre à jour le type et le numéro de téléphone :
Demande
POST https://graph.microsoft.com/beta/users/avery.howard@wingtiptoysonline.com/authentication/phoneMethods
Content-Type: application/json
{
"phoneType": "office",
"phoneNumber": "+1 4255550199"
}
Réponse
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('avery.howard%40wingtiptoysonline.com')/authentication/phoneMethods/$entity",
"id": "e37fc753-ff3b-4958-9484-eaa9425c82bc",
"phoneNumber": "+1 4255550199",
"phoneType": "office",
"smsSignInState": "notSupported"
}
Faites une nouvelle GET
recherche sur l'URL des méthodes téléphoniques pour voir tous les numéros de téléphone d'Avery :
Demande
GET https://graph.microsoft.com/beta/users/avery.howard@wingtiptoysonline.com/authentication/phoneMethods
Réponse
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('avery.howard%40wingtiptoysonline.com')/authentication/phoneMethods",
"value": [
{
"id": "e37fc753-ff3b-4958-9484-eaa9425c82bc",
"phoneNumber": "+1 4255550199",
"phoneType": "office",
"smsSignInState": "notSupported"
},
{
"id": "3179e48a-750b-4051-897c-87b9720928f7",
"phoneNumber": "+1 2065550123",
"phoneType": "mobile",
"smsSignInState": "ready"
}
]
}
Confirmez que vous pouvez voir les deux chiffres comme prévu.
Étape 4 : Supprimer un numéro de téléphone de l'utilisateur
Dans ce scénario, Avery travaille maintenant à domicile, vous devez supprimer le numéro de son bureau de son compte. Vous devez appeler DELETE
sur l'URL du téléphone du bureau, que vous pouvez créer en ajoutant l'ID du téléphone du bureau à l'URL des méthodes téléphoniques. Regardez la liste des téléphones d’Avers ci-dessus : l'identifiant du téléphone du bureau commence par « e37f ».
Demande
DELETE https://graph.microsoft.com/beta/users/avery.howard@wingtiptoysonline.com/authentication/phoneMethods/e37fc753-ff3b-4958-9484-eaa9425c82bc
Il n'y a pas de données dans la réponse car il n'y a plus de téléphone de bureau comme prévu. Vous pouvez confirmer sa disparition en examinant toutes les méthodes d'Avery, qui sont les mêmesGET
qui sont les mêmes que celles utilisées auparavant :
Demande
GET https://graph.microsoft.com/beta/users/avery.howard@wingtiptoysonline.com/authentication/methods
Réponse
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('avery.howard%40wingtiptoysonline.com')/authentication/methods",
"value": [
{
"@odata.type": "#microsoft.graph.phoneAuthenticationMethod",
"id": "3179e48a-750b-4051-897c-87b9720928f7",
"phoneNumber": "+1 2065550123",
"phoneType": "mobile",
"smsSignInState": "ready"
},
{
"@odata.type": "#microsoft.graph.passwordAuthenticationMethod",
"id": "28c10230-6103-485e-b985-444c60001490",
"password": null,
"creationDateTime": null
}
]
}
Comme prévu, l'utilisateur ne dispose plus que d'un seul téléphone portable et d'un mot de passe.
Étape 5 : Réinitialisation du mot de passe de l'utilisateur
Dans ce scénario, Avery a oublié son mot de passe et vous devez le réinitialiser pour lui. Pour réinitialiser, vous devez POST
vous rendre à l'URL de leur mot de passe (voir l'ID commençant par « 28c1 » ci-dessus dans la liste des méthodes d'authentification d'Avery), en spécifiant l'action « resetPassword ». Indiquez le nouveau mot de passe dans l'organisme de demande.
Demande
POST https://graph.microsoft.com/beta/users/avery.howard@wingtiptoysonline.com/authentication/passwordMethods/28c10230-6103-485e-b985-444c60001490/resetPassword
Content-Type: application/json
{
"newPassword": "29sdjfw#fajsdA_a_3an3223"
}
Réponse
Location: https://graph.microsoft.com/beta/users/ed178e23-7447-4892-baf8-fc46f8af26ce/authentication/operations/74bfa1a6-c0e0-4957-8c37-f91048f4959e?aadgdc=BY01P&aadgsu=ssprprod-a
Comme il s'agit de synchroniser le mot de passe avec Active Directory dans l'infrastructure on-prem du locataire, cela peut prendre quelques minutes, de sorte que vous avez une adresse où vous pouvez vérifier si elle est complète. Cette adresse se trouve dans l'en-tête de localisation de la réponse, et pour voir le statut, faites un GET
sur cette URL.
Demande
GET https://graph.microsoft.com/beta/users/ed178e23-7447-4892-baf8-fc46f8af26ce/authentication/operations/74bfa1a6-c0e0-4957-8c37-f91048f4959e?aadgdc=BY01P&aadgsu=ssprprod-a
Réponse
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('ed178e23-7447-4892-baf8-fc46f8af26ce')/authentication/operations/$entity",
"id": "74bfa1a6-c0e0-4957-8c37-f91048f4959e",
"createdDateTime": "2020-05-14T00:23:40Z",
"lastActionDateTime": "2020-05-14T00:23:41Z",
"status": "succeeded",
"statusDetail": "ResetSuccess",
"resourceLocation": "https://graph.microsoft.com/beta/users/ed178e23-7447-4892-baf8-fc46f8af26ce/authentication/methods/28c10230-6103-485e-b985-444c60001490"
}
Et succès ! Vous avez vu le profil d'un utilisateur, ses méthodes d'authentification, l'ajout et la suppression de numéros de téléphone et la réinitialisation de son mot de passe. Vous êtes maintenant prêt à aller gérer les méthodes de vos propres utilisateurs.
Référence API
Vous recherchez la référence API pour les méthodes d'authentification ?
Prochaines étapes
- Utilisez Azure AD pour vous authentifier sur Microsoft Graph.
- Intégrez l’expérience de connexion Azure AD dans votre application ou site web.
- Consultez le journal des modifications pour découvrir les nouveautés des API Azure AD.
- Explorez des exemples pour en savoir plus sur l’utilisation de Microsoft Graph.
Commentaires
Envoyer et afficher des commentaires pour