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.
Pour vous authentifier et acquérir des jetons, vous initialisez une nouvelle application cliente publique ou confidentielle dans votre code. Vous pouvez définir plusieurs options de configuration lorsque vous initialisez l’application cliente dans la bibliothèque d’authentification Microsoft (MSAL). Ces options se répartissent en deux groupes :
- Options d’inscription, à savoir :
- Autorité (pour l’application composée de l’instance du fournisseur de service d’identité, de l’audience de connexion, et éventuellement de l’ID de locataire)
- ID du client
- URI de redirection
- Clé secrète client (pour les applications clientes confidentielles)
- Certificat (pour les applications clientes confidentielles)
- Informations d’identification d’identité fédérée (pour les applications clientes confidentielles)
- Options de journalisation, notamment le niveau de journal, le contrôle des données personnelles et le nom du composant à l’aide de la bibliothèque
Autorité
L’autorité est une URL indiquant un annuaire dont la bibliothèque d’authentification Microsoft peut demander des jetons.
Les autorités courantes sont les suivantes :
| URL d’autorité courante | Quand l’utiliser |
|---|---|
https://login.microsoftonline.com/<tenant>/ |
Connecter des utilisateurs d’une organisation spécifique uniquement. L’élément <tenant> dans l’URL est l’ID de locataire du locataire Microsoft Entra (un GUID) ou son domaine locataire. |
https://login.microsoftonline.com/common/ |
Connecter des utilisateurs disposant de comptes professionnels ou scolaires, ou de comptes Microsoft personnels. |
https://login.microsoftonline.com/organizations/ |
Connecter des utilisateurs disposant de comptes professionnels ou scolaires. |
https://login.microsoftonline.com/consumers/ |
Connecter des utilisateurs disposant uniquement de comptes Microsoft personnels (MSA). |
L’autorité que vous spécifiez dans votre code doit être cohérente avec les types de comptes pris en charge que vous avez spécifiés pour l’application dans les inscriptions d’applications dans le portail Azure.
L’autorité peut être :
- Une autorité cloud Microsoft Entra.
- Une autorité Azure AD B2C. Consultez les spécificités B2C.
- Une autorité de services de fédération Active Directory (AD FS). Consultez la prise en charge d’AD FS.
Les autorités cloud Microsoft Entra sont en deux parties :
- Instance du fournisseur d’identité
- Audience cible pour l’application
L’instance et l’audience peuvent être concaténées et fournies en tant que qu’URL de l’autorité. Ce diagramme montre comment l’URL de l’autorité est composée :
Instance cloud
L’instance est utilisée pour spécifier si votre application signe des utilisateurs à partir du cloud public Azure ou à partir de clouds nationaux. À l’aide de MSAL dans votre code, vous pouvez définir l’instance cloud Azure à l’aide d’une énumération ou en passant l’URL à l’instance de cloud nationale en tant que Instance membre.
MSAL.NET lève une exception explicite si les deux Instance et AzureCloudInstance sont spécifiées.
Si vous ne spécifiez pas d’instance, votre application cible l’instance de cloud public Azure (l’instance d’URL https://login.onmicrosoftonline.com).
Audience de l’application
L’audience de connexion varie selon les besoins métier de votre application :
- Si vous êtes développeur métier, vous allez probablement produire une application monolocataire utilisée uniquement dans votre organisation. Dans ce cas, spécifiez l’organisation par son ID de locataire (ID de votre instance Microsoft Entra) ou par un nom de domaine associé à l’instance Microsoft Entra.
- Si vous êtes un ISV, vous pouvez connecter des utilisateurs avec leurs comptes professionnels et scolaires dans toute organisation ou dans certaines organisations (application mutualisée). Mais vous pouvez également amener les utilisateurs à se connecter avec leurs comptes Microsoft personnels.
Comment spécifier l’audience dans votre code/configuration
En utilisant MSAL dans votre code, vous spécifiez l’audience à l’aide de l’une des valeurs suivantes :
- Énumération d’audience de l’autorité Microsoft Entra
- L’ID de locataire, qui peut être :
- Un GUID (ID de votre instance Microsoft Entra) pour des applications à locataire unique
- Un nom de domaine associé à votre instance Microsoft Entra (également pour des applications à locataire unique)
- Un de ces espaces réservés comme un ID de tenant à la place de l’énumération d’audience de l’autorité Microsoft Entra :
-
organizationspour une application mutualisée. -
consumerspour connecter les utilisateurs uniquement avec leurs comptes personnels. -
commonpour connecter des utilisateurs avec leurs comptes professionnels et scolaires, ou leurs comptes Microsoft personnels.
-
MSAL lève une exception significative si vous spécifiez à la fois l’audience de l’autorité Microsoft Entra et l’ID de locataire.
Il est recommandé de spécifier un public, car de nombreux locataires et applications déployés dans ces derniers auront des utilisateurs invités. Si votre application est destinée aux utilisateurs externes, évitez les points de terminaison et organization les common points de terminaison. Si vous ne spécifiez pas d’audience, votre application cible l’ID Microsoft Entra et les comptes Microsoft personnels en tant qu’audience et se comporte comme si common elles étaient spécifiées.
Audience effective
L’audience effective pour votre application sera la valeur minimale (s’il existe une intersection) de l’audience que vous définissez dans votre application et de l’audience spécifiée dans l’inscription d’application. En fait, l’expérience d’inscriptions d’applications vous permet de spécifier l’audience (types de comptes pris en charge) pour l’application. Pour plus d’informations, consultez Démarrage rapide : Inscrire une application auprès de la plateforme d’identités Microsoft.
Actuellement, la seule façon d’obtenir qu’une application connecte des utilisateurs disposant uniquement de comptes Microsoft personnels consiste à configurer ces deux paramètres :
- Définissez l’audience d’inscription d’application sur
Work and school accounts and personal accounts. - Définissez l’audience dans votre code/configuration sur
AadAuthorityAudience.PersonalMicrosoftAccount(ouTenantID="consumers").
ID client
L’ID client est l’ID unique d’application (client) affecté à votre application par l’ID Microsoft Entra lorsque l’application a été inscrite. Vous trouverez l’ID d’application (client) dans la page Vue d’ensemble de l’application dans les applications Entra ID>Enterprise.
URI de redirection
L’URI de redirection est l’URI auquel le fournisseur d’identité renvoie les jetons de sécurité.
URI de redirection pour les applications clientes publiques
Si vous êtes un développeur d’application cliente publique utilisant MSAL :
Vous souhaitez utiliser
.WithDefaultRedirectUri()dans les applications de bureau (MSAL.NET 4.1+). La.WithDefaultRedirectUri()méthode définit la propriété URI de redirection de l’application cliente publique sur l’URI de redirection recommandé par défaut pour les applications clientes publiques.Plateforme URI de redirection Application de bureau (.NET Framework) https://login.microsoftonline.com/common/oauth2/nativeclientPlateforme Windows Universelle (UWP) valeur de WebAuthenticationBroker.GetCurrentApplicationCallbackUri(). Cela active l’authentification unique (SSO) avec le navigateur en définissant la valeur sur le résultat de WebAuthenticationBroker.GetCurrentApplicationCallbackUri() que vous devez inscrire.FILET https://localhostpermet à l’utilisateur de se servir du navigateur système pour l’authentification interactive, car .NET ne dispose pas d’une interface utilisateur pour l’affichage web incorporé pour le moment.
Vous pouvez remplacer l’URI de redirection à l’aide de la propriété RedirectUri (par exemple, si vous utilisez des répartiteurs). Voici quelques exemples d’URI de redirection pour ce scénario :
RedirectUriOnAndroid="msauth-00001111-aaaa-2222-bbbb-3333cccc4444://com.microsoft.identity.client.sample";RedirectUriOnIos=$"msauth.{Bundle.ID}://auth";
Pour plus d’informations sur Android, consultez l’authentification répartie dans Android.
Lors de la génération d’une application à l’aide de MSAL Android, vous pouvez configurer l’étape
redirect_urid’inscription initiale de l’application ou l’ajouter par la suite.- Le format de l’URI de redirection est le suivant :
msauth://<yourpackagename>/<base64urlencodedsignature> - Exemple :
redirect_uri=msauth://com.azuresamples.myapp/6/aB1cD2eF3gH4iJ5kL6-mN7oP8qR=
- Le format de l’URI de redirection est le suivant :
Pour plus d’informations sur la configuration de l’application Android MSAL, reportez-vous à la configuration MSAL Android.
Configurez l’URI de redirection dans les inscriptions d’applications :
URI de redirection pour les applications clientes confidentielles
Pour les applications web, l’URI de redirection (ou URL de réponse) est l’URI que Microsoft Entra ID utilise pour renvoyer le jeton à l’application. L’URI peut être l’URL de l’application web/API web si l’application confidentielle correspond à l’une d’elles. L’URI de redirection doit être inscrit dans l’inscription d’application. L’inscription est particulièrement importante lorsque vous déployez une application que vous avez initialement testée localement. Vous devez ensuite ajouter l’URL de réponse de l’application déployée dans le portail d’inscription d’application.
Pour les applications démon, vous n’avez pas besoin de spécifier un URI de redirection.
Informations d’identification d’application
Pour les applications clientes confidentielles, la gestion des informations d’identification est essentielle. Les informations d’identification peuvent être des informations d’identification fédérées (recommandées), un certificat ou une clé secrète client.
Identifiants d’identité fédérée
Les informations d’identification d’identité fédérée sont un type d’informations d’identification qui permet aux charges de travail, telles que GitHub Actions, les charges de travail s’exécutant sur Kubernetes ou les charges de travail exécutées dans des plateformes de calcul en dehors des ressources protégées Par Microsoft Entra, sans avoir à gérer les secrets à l’aide de la fédération des identités de charge de travail.
Certificat
Cette option spécifie le certificat de l’application cliente confidentielle. Parfois appelé clé publique, un certificat est le type d’informations d’identification recommandé, car ils sont considérés comme plus sécurisés que les secrets client.
Clé secrète client
Cette option spécifie la clé secrète client pour l’application cliente confidentielle. La clé secrète client (mot de passe de l’application) est fournie par le portail d’inscription d’application ou, pour Microsoft Entra ID, fournie lors de l’inscription de l’application avec PowerShell Microsoft Entra ID, PowerShell AzureRM ou Azure CLI.
Journalisation
Pour favoriser les scénarios de résolution des problèmes d’authentification et de débogage, la bibliothèque MSAL offre une prise en charge intégrée de la journalisation. La journalisation dans chaque bibliothèque est couverte dans les articles suivants :
Étapes suivantes
Découvrez comment instancier des applications clientes à l’aide de MSAL.NET et instancier des applications clientes à l’aide de MSAL.js.