MSGRAPH #3 - Microsoft Graph Explorer
Microsoft Graph Explorer
Microsoft Graph Explorer est une application web qui vous permet d’apprendre et d’essayer les API Microsoft Graph. Voici quelques-unes de ses fonctionnalités principales :
- Tester les API Microsoft Graph : Vous pouvez faire des requêtes pour récupérer, ajouter, supprimer et mettre à jour des données
- Apprendre sur les permissions : Vous pouvez découvrir les permissions requises pour les différentes API.
- Explorer les ressources disponibles : Microsoft Graph offre une multitude de ressources que vous pouvez explorer rapidement.
- Intégration des modules PowerShell : Executer une requête vous permet d’obtenir la commande PowerShell associée.
- Gestion de l’authentification : Graph Explorer gère le processus d’authentification pour vous et vous permet même de récupérer facilement un access token.
Vous pouvez commencer à utiliser Graph Explorer sans avoir besoin de vous connecter pour exécuter une requête GET. Cependant, pour essayer les requêtes POST, PUT, PATCH et DELETE, vous devez vous connecter à Graph Explorer en utilisant un compte Microsoft 365 (celui de votre tenant de test par exemple).
Lancer Microsoft Graph Explorer
Se rendre sur https://developer.microsoft.com/en-us/graph/graph-explorer
Je vous recommande de garder la console en anglais pour mieux suivre le cours et éviter les traductions automatiques qui peuvent être parfois approximatives.
Se connecter à votre tenant
Cliquer en haut à droite pour vous connecter sur votre tenant de test. Entrer votre nom d’utilisateur, votre mot de passe ou/et votre authentification multifacteur.
Vous pouvez cocher la case “Consent on behalf of your organization” pour autoriser l’application Microsoft Graph à tous les utilisateurs de votre tenant. Si vous ne cochez pas la case, seul votre utilisateur pourra se connecter sans re-demander d’approbation.
Votre première requête
Exécuter la requête par défaut https://graph.microsoft.com/v1.0/me
avec le bouton “Run query” et consulter le résultat qui apparait dans la fenêtre “Response preview”.
L’appel API devrait afficher les informations relatives à votre profil.
Passage en version BETA
Selectionner le menu déroulant “v1.0” pour le modifier par “beta” puis exécuter la requête.
Vous pouvez observer alors que beaucoup d’informations supplémentaires sont disponibles en réponse.
Créer un utilisateur (POST)
Dans le volet gauche “Sample queries”, développer la section “Users” puis sélectionner ”[POST] create user”.
La méthode, l’URI et le corps de la requête vont être automatiquement modifiés pour définir tous les paramètres nécessaires à la création du compte.
Modifier le JSON pour remplacer {domain} par le domaine de votre tenant puis lancer votre appel API.
Celui-ci devrait tomber en erreur :
Forbidden - 403. Either the signed-in user does not have sufficient privileges, or you need to consent to one of the permissions on the Modify permissions tab
Comme évoqué dans Permissions et étendues (scope), même si vous êtes l’administrateur global de votre tenant vous n’avez pas tous les droits initialement : il faut les demander. Vous pouvez demander l’accès à la permission User.ReadWrite.All dans le volet supérieur sur l’onglet “Modify permissions” puis l’approuver.
Vous devriez alors recevoir le message de confirmation suivant :
Success - Scope consent successful
Il n’y a maintenant plus aucun obstacle pour créer votre utilisateur.
Rechercher un utilisateur (GET)
On va maintenant essayer de retrouver l’utilisateur qui vient d’être créé avec la requête suivante :
- Méthode : GET
- URI :
https://graph.microsoft.com/v1.0/users
Mais cette requête permet d’obtenir tous les utilisateurs. Pour obtenir uniquement l’utilisateur qui a été créé, on va ajouter le UserID ou le UserPrincipalName du compte dans notre URI : https://graph.microsoft.com/v1.0/users/{userId/upn}
.
On va maintenant ajouter un paramètre de requête pour obtenir une information supplémentaire : le pays de l’utilisatrice. Pour cela, on utilise $select=
avec la propriété “country” :
Problème : l’API prend notre demande au pied de la lettre et n’affiche plus que la propriété “country”. On va donc corriger le problème en ajoutant des propriétés supplémentaires dans notre requête : DisplayName, Id et UserPrincipalName :
Mettre à jour un utilisateur (PATCH)
Nous allons maintenant ajouter une information au compte que nous avons précédemment créé. Vous pouvez sélectionner l’appel ”[PATCH] update user” pour charger les paramètres.
Remplacer {id}
dans l’URI par le UserID ou le UserPrincipalName de l’utilisateur et modifier le JSON dans la fenêtre “Request body” pour indiquer la propriété “country” avec la valeur “Canada”.
Si vous n’avez pas d’erreur, vous devez recevoir un objet de retour vide avec le code suivant :
No Content - 204
Vous pouvez vérifier les modifications avec la requête GET précédente. Vous pouvez accéder à l’historique de vos appels API avec l’onglet “History” présent dans le volet gauche.
Supprimer un utilisateur (DELETE)
Pour boucler la boucle, il ne nous reste plus qu’à utiliser la dernière méthode : DELETE. On va donc supprimer l’utilisateur que nous avons créé avec l’appel ”[DELETE] delete user”.
Conclusion
Microsoft Graph Explorer est un outil formidable pour tester des requêtes simples, valider la syntaxe des paramètres de requêtes ou vérifier la disponibilité de certains filtres. Il est accessible facilement depuis n’importe quel ordinateur et sans installation supplémentaire. Il permet d’accéder simplement à la liste des appels API disponibles ainsi qu’à la documentation associée.
Il ne convient qu’à un usage ponctuel, principalement pour consulter de l’information ou tester des appels APIs.
Commentaires