Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :
Cercle vert des locataires de main-d’œuvre
Locataires externes (en savoir plus)
Avant de commencer, utilisez le sélecteur Choisir un type de locataire en haut de cette page pour sélectionner le type de locataire. Microsoft Entra ID fournit deux configurations de locataire, la main-d’œuvre et l’externe. Une configuration de locataire de main-d’œuvre concerne vos employés, vos applications internes et d’autres ressources organisationnelles. Un locataire externe est destiné à vos applications orientées client.
Dans ce guide de démarrage rapide, vous téléchargez et exécutez un exemple de code qui montre comment une application Android peut connecter des utilisateurs et obtenir un jeton d’accès pour appeler l’API Microsoft Graph.
Les applications doivent être représentées par un objet d’application dans Microsoft Entra ID afin que la plateforme d’identités Microsoft puisse fournir des jetons à votre application.
Prerequisites
- Un compte Azure avec un abonnement actif. Si vous n’en avez pas encore, créez un compte gratuitement.
- Ce compte Azure doit disposer d’autorisations pour gérer les applications. Les rôles Microsoft Entra suivants incluent les autorisations requises :
- Administrateur d’application
- Développeur d’applications
- Un locataire de main-d’œuvre. Vous pouvez utiliser votre répertoire par défaut ou configurer un nouveau locataire.
- Inscrivez une nouvelle application dans le Centre d’administration Microsoft Entra, configurée pour les comptes dans n’importe quel annuaire organisationnel et comptes Microsoft personnels. Pour plus d’informations, reportez-vous à l’inscription d’une application . Enregistrez les valeurs suivantes à partir de la page Vue d’ensemble de l’application pour une utilisation ultérieure :
- ID d’application (client)
- ID de l’annuaire (locataire)
- Android Studio
- Android 16+
Ajouter un URI de redirection
Vous devez configurer des URI de redirection spécifiques dans votre inscription d’application pour garantir la compatibilité avec l’exemple de code téléchargé. Ces URI sont essentiels pour rediriger les utilisateurs vers l’application une fois qu’ils se connectent correctement.
Sous Gérer, sélectionnez Authentification>Ajouter une plateforme>Android.
Entrez le nom du package de votre projet en fonction du type d’exemple que vous avez téléchargé ci-dessus.
- Exemple Java -
com.azuresamples.msalandroidapp - Exemple Kotlin -
com.azuresamples.msalandroidkotlinapp
- Exemple Java -
Dans la section Hachage de signature du volet Configurer votre application Android , sélectionnez Générer un hachage de signature de développement et copiez la commande KeyTool dans votre ligne de commande.
- KeyTool.exe est installé dans le cadre du Kit de développement Java (JDK). Vous devez également installer l’outil OpenSSL pour exécuter la commande KeyTool. Pour plus d’informations, consultez la documentation Android sur la génération d’une clé pour plus d’informations.
Entrez le hachage de signature généré par KeyTool.
Sélectionnez Configurer et enregistrer la configuration MSAL qui s’affiche dans le volet de configuration Android afin de pouvoir l’entrer lorsque vous configurez votre application ultérieurement.
Cliquez sur Terminé.
Télécharger l’exemple d’application
- Java : Téléchargez le code.
- Kotlin : Téléchargez le code.
Configurer l’exemple d’application
Dans le volet de projet d’Android Studio, accédez à app\src\main\res.
Cliquez avec le bouton droit sur res et choisissez Nouveau>répertoire. Entrez
rawle nouveau nom du répertoire et sélectionnez OK.Dans app>src>main>res>raw, accédez au fichier JSON appelé
auth_config_single_account.jsonet collez la configuration MSAL que vous avez enregistrée précédemment.Sous l’URI de redirection, collez :
"account_mode" : "SINGLE",Votre fichier de configuration doit ressembler à cet exemple :
{ "client_id": "00001111-aaaa-bbbb-3333-cccc4444", "authorization_user_agent": "WEBVIEW", "redirect_uri": "msauth://com.azuresamples.msalandroidapp/00001111%cccc4444%3D", "broker_redirect_uri_registered": false, "account_mode": "SINGLE", "authorities": [ { "type": "AAD", "audience": { "type": "AzureADandPersonalMicrosoftAccount", "tenant_id": "common" } } ] }Ouvrez le fichierAndroidManifest.xml/app/src/main/ .
Recherchez l’espace réservé :
-
enter_the_signature_hashremplacez-le par le hachage de signature que vous avez généré précédemment lorsque vous avez ajouté l’URL de redirection de la plateforme.
Comme ce tutoriel montre uniquement comment configurer une application en mode Compte unique, consultez le mode monocompte etla configuration de votre application pour plus d’informations.
-
Exécuter l’exemple d’application
Sélectionnez votre émulateur ou votre appareil physique dans la liste déroulante des appareils disponibles d’Android Studio et exécutez l’application.
L’exemple d’application démarre sur l’écran Mode compte unique . Une étendue par défaut, user.read, est fournie par défaut, qui est utilisée lors de la lecture de vos propres données de profil pendant l’appel de l’API Microsoft Graph. L’URL de l’appel d’API Microsoft Graph est fournie par défaut. Vous pouvez modifier ces deux si vous le souhaitez.
Utilisez le menu de l’application pour passer d’un mode à plusieurs comptes.
En mode compte unique, connectez-vous à l’aide d’un compte professionnel ou domestique :
- Sélectionnez Obtenir des données de graphe de manière interactive pour inviter l’utilisateur à entrer ses informations d’identification. Vous verrez la sortie de l’appel à l’API Microsoft Graph en bas de l’écran.
- Une fois connecté, sélectionnez Obtenir les données de graphe en mode silencieux pour effectuer un appel à l’API Microsoft Graph sans inviter l’utilisateur à nouveau à entrer les informations d’identification. Vous verrez la sortie de l’appel à l’API Microsoft Graph en bas de l’écran.
En mode compte multiple, vous pouvez répéter les mêmes étapes. En outre, vous pouvez supprimer le compte connecté, qui supprime également les jetons mis en cache pour ce compte.
Fonctionnement de l’exemple
Le code est organisé en fragments qui montrent comment écrire une application MSAL unique et plusieurs comptes. Les fichiers de code sont organisés comme suit :
| Fichier | Montre ce qui suit |
|---|---|
| MainActivity | Gère l’interface utilisateur |
| MSGraphRequestWrapper | Appelle l’API Microsoft Graph à l’aide du jeton fourni par MSAL |
| MultipleAccountModeFragment | Initialise une application multi-compte, charge un compte d’utilisateur et obtient un jeton pour appeler l’API Microsoft Graph |
| SingleAccountModeFragment | Initialise une application à compte unique, charge un compte d’utilisateur et obtient un jeton pour appeler l’API Microsoft Graph |
| res/auth_config_multiple_account.json | Fichier de configuration de plusieurs comptes |
| res/auth_config_single_account.json | Fichier de configuration de compte unique |
| Gradle Scripts/build.grade (Module :app) | Les dépendances de bibliothèque MSAL sont ajoutées ici |
Nous allons maintenant examiner ces fichiers plus en détail et appeler le code spécifique à MSAL dans chacun d’eux.
Étapes suivantes
Passez au didacticiel Android dans lequel vous créez une application Android qui obtient un jeton d’accès à partir de la plateforme d’identités Microsoft et l’utilise pour appeler l’API Microsoft Graph.
Le guide de démarrage rapide vous guide dans la configuration d’exemples d’applications Android, .NET MAUI Android et iOS/macOS pour connecter des utilisateurs en inscrivant des applications, en configurant des URL de redirection, en mettant à jour les configurations et en testant l’application.
Prerequisites
- Un compte Azure avec un abonnement actif. Si vous n’en avez pas encore, créez un compte gratuitement.
- Ce compte Azure doit disposer d’autorisations pour gérer les applications. Les rôles Microsoft Entra suivants incluent les autorisations requises :
- Administrateur d’application
- Développeur d’applications
- Un locataire externe. Pour en créer un, choisissez parmi les méthodes suivantes :
- Utilisez l’extension Microsoft Entra External ID pour configurer un locataire externe directement dans Visual Studio Code. (Conseillé)
- Créez un locataire externe dans le Centre d’administration Microsoft Entra.
- Inscrivez une nouvelle application dans le Centre d’administration Microsoft Entra, configurée pour les comptes dans cet annuaire organisationnel uniquement. Pour plus d’informations, reportez-vous à l’inscription d’une application . Enregistrez les valeurs suivantes à partir de la page Vue d’ensemble de l’application pour une utilisation ultérieure :
- ID d’application (client)
- ID de l’annuaire (locataire)
Ajouter une URL de redirection de plateforme
Vous devez configurer des URI de redirection spécifiques dans votre inscription d’application pour garantir la compatibilité avec l’exemple de code téléchargé. Ces URI sont essentiels pour rediriger les utilisateurs vers l’application une fois qu’ils se connectent correctement.
Pour spécifier votre type d’application à votre inscription d’application, procédez comme suit :
- Sous Gérer, sélectionnez Authentification.
- Dans la page Configurations de la plateforme, sélectionnez Ajouter une plateforme, puis sélectionnez l’option Android .
- Entrez le nom du package de votre projet. Si vous avez téléchargé l’exemple de code, cette valeur est
com.azuresamples.msaldelegatedandroidkotlinsampleapp. - Dans la section Hachage de signature du volet Configurer votre application Android , sélectionnez Génération d’un hachage de signature de développement. Cela changera pour chaque environnement de développement. Copiez et exécutez la commande KeyTool pour votre système d’exploitation dans votre terminal.
- Entrez le hachage de signature généré par KeyTool.
- Sélectionnez Configurer.
- Copiez la configuration MSAL à partir du volet de configuration Android et enregistrez-la pour la configuration de l’application ultérieure.
- Cliquez sur Terminé.
Activer le flux client public
Pour identifier votre application en tant que client public, procédez comme suit :
Sous Gérer, sélectionnez Authentification.
Sous Paramètres avancés, pour Autoriser les flux de clients publics, sélectionnez Oui.
Cliquez sur Enregistrer pour enregistrer vos modifications.
Cloner un exemple d’application
Pour obtenir l’exemple d’application, vous pouvez le cloner à partir de GitHub ou le télécharger en tant que fichier .zip.
Pour cloner l’exemple, ouvrez une invite de commandes et accédez à l’emplacement où vous souhaitez créer le projet, puis entrez la commande suivante :
git clone https://github.com/Azure-Samples/ms-identity-ciam-browser-delegated-android-sample
Configurer l’exemple d’application
Pour activer l’authentification et l’accès aux ressources Microsoft Graph, configurez l’exemple en procédant comme suit :
Dans Android Studio, ouvrez le projet que vous avez cloné.
Ouvrez le fichier /app/src/main/res/raw/auth_config_ciam.json .
Recherchez l’espace réservé :
-
Enter_the_Application_Id_Hereet remplacez-le par l’ID d’application (client) de l’application que vous avez inscrite précédemment. -
Enter_the_Redirect_Uri_Hereremplacez-le par la valeur de redirect_uri dans le fichier de configuration MSAL (Microsoft Authentication Library) que vous avez téléchargé précédemment lorsque vous avez ajouté l’URL de redirection de la plateforme. -
Enter_the_Tenant_Subdomain_Hereet remplacez-le par le sous-domaine Directory (locataire). Par exemple, si votre domaine principal de locataire estcontoso.onmicrosoft.com, utilisezcontoso. Si vous ne connaissez pas votre sous-domaine de locataire, découvrez comment lire les détails de votre locataire.
-
Ouvrez le fichierAndroidManifest.xml/app/src/main/ .
Recherchez l’espace réservé :
-
ENTER_YOUR_SIGNATURE_HASH_HEREremplacez-le par le hachage de signature que vous avez généré précédemment lorsque vous avez ajouté l’URL de redirection de la plateforme.
-
Ouvrez /app/src/main/java/com/azuresamples/msaldelegatedandroidkotlinsampleapp/MainActivity.kt file.
Recherchez la propriété nommée
scopeset définissez les étendues enregistrées dans Accorder le consentement de l’administrateur. Si vous n’avez enregistré aucune étendue, vous pouvez laisser cette liste d’étendues vide.private const val scopes = "" // Developers should set the respective scopes of their Microsoft Graph resources here. For example, private const val scopes = "api://{clientId}/{ToDoList.Read} api://{clientId}/{ToDoList.ReadWrite}"
Vous avez configuré l’application et elle est prête à s’exécuter.
Exécuter et tester l’exemple d’application
Pour générer et exécuter votre application, procédez comme suit :
Dans la barre d’outils, sélectionnez votre application dans le menu Exécuter les configurations.
Dans le menu de l’appareil cible, sélectionnez l’appareil sur lequel vous souhaitez exécuter votre application.
Si vous n’avez pas configuré d’appareils, vous devez créer un appareil virtuel Android pour utiliser l’émulateur Android ou connecter un appareil Android physique.
Sélectionnez le bouton Exécuter .
Sélectionnez Acquérir un jeton de manière interactive pour demander un jeton d’accès.
Si vous sélectionnez l’API - Effectuez GET pour appeler une API web protégée ASP.NET Core, vous obtiendrez une erreur.
Pour plus d’informations sur l’appel d’une API web protégée, consultez les étapes suivantes