Microsoft.Identity.Client Espace de noms
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Microsoft.Identity.Clientest l’espace de noms principal de l’Microsoft Authentication Library (MSAL) pour .NET, disponible via le Microsoft.Identity.Client package. Il contient tous les composants clés dont vous avez besoin pour acquérir un jeton auprès des fournisseurs d’authentification pris en charge.
Installation
Utilisation de l’interface de .NET Command-Line (CLI) :
dotnet add package Microsoft.Identity.Client
Utilisation de l’interface de ligne de commande NuGet (CLI) :
nuget install Microsoft.Identity.Client
Utilisation de la console Gestionnaire de package :
Install-Package Microsoft.Identity.Client
Utilisation de Visual Studio :
- Ouvrez le Explorateur de solutions.
- Cliquez avec le bouton droit sur un projet dans la solution.
- Cliquez sur Gérer les packages NuGet...
- Cliquez sur l’onglet Parcourir et recherchez
Microsoft.Identity.Client. - Cliquez sur le
Microsoft.Identity.Clientpackage, puis cliquez sur Installer.
Documentation
Pour commencer, consultez le Microsoft Authentication Library pour .NET guide.
Échantillons
Reportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples.
Classes
| Nom | Description |
|---|---|
| AbstractAcquireTokenParameterBuilder<T> |
Classe de base pour les générateurs de demandes de jetons, qui tentent d’acquérir un jeton en fonction des paramètres fournis. |
| AbstractApplicationBuilder<T> |
InstallationUtilisation de l’interface de .NET Command-Line (CLI) :
Utilisation de l’interface de ligne de commande NuGet (CLI) :
Utilisation de la console Gestionnaire de package :
Utilisation de Visual Studio :
DocumentationPour commencer, consultez le Microsoft Authentication Library pour .NET guide. ÉchantillonsReportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples. |
| AbstractClientAppBaseAcquireTokenParameterBuilder<T> |
Classe de base pour les générateurs de paramètres communs à l’application cliente publique et aux opérations d’acquisition de jetons d’application client confidentielles |
| AbstractConfidentialClientAcquireTokenParameterBuilder<T> |
Classe de base pour les générateurs de demandes de jetons d’application client confidentielles |
| AbstractManagedIdentityAcquireTokenParameterBuilder<T> |
Classe de base abstraite pour les générateurs de demandes de jetons d’application d’identité managée. |
| AbstractPublicClientAcquireTokenParameterBuilder<T> |
Classe de base pour les générateurs de demandes de jetons d’application cliente publique |
| AccountExtensions |
Méthodes d’extension pour IAccount |
| AccountId |
Identificateur d’un compte dans un locataire spécifique. Retourné par IAccount.HomeAccountId |
| AcquireTokenByAuthorizationCodeParameterBuilder |
Builder pour AcquireTokenByAuthorizationCode |
| AcquireTokenByIntegratedWindowsAuthParameterBuilder |
Générateur pour AcquireTokenByIntegratedWindowsAuth |
| AcquireTokenByRefreshTokenParameterBuilder |
Générateur de paramètres pour la AcquireTokenByRefreshToken(IEnumerable<String>, String) méthode. Voir https://aka.ms/msal-net-migration-adal2-msal2 |
| AcquireTokenByUserFederatedIdentityCredentialParameterBuilder |
Générateur de paramètres pour l’opération AcquireTokenByUserFederatedIdentityCredential(IEnumerable<String>, String, String) . |
| AcquireTokenByUsernameAndPasswordConfidentialParameterBuilder |
Générateur de paramètres pour l’opération AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) . Voir https://aka.ms/msal-net-up |
| AcquireTokenByUsernamePasswordParameterBuilder |
Générateur de paramètres pour l’opération AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) . Voir https://aka.ms/msal-net-up |
| AcquireTokenForClientParameterBuilder |
Générateur pour AcquireTokenForClient (utilisé dans les flux d’informations d’identification du client, dans les applications démon). Voir https://aka.ms/msal-net-client-credentials |
| AcquireTokenForManagedIdentityParameterBuilder |
Générateur pour AcquireTokenForManagedIdentity (utilisé pour obtenir un jeton pour les identités managées). Voir https://aka.ms/msal-net-managed-identity |
| AcquireTokenInteractiveParameterBuilder |
Générateur pour une demande de jeton interactif. Voir https://aka.ms/msal-net-acquire-token-interactively |
| AcquireTokenOnBehalfOfParameterBuilder |
Générateur pour AcquireTokenOnBehalfOf (flux OBO) Voir https://aka.ms/msal-net-on-behalf-of |
| AcquireTokenSilentParameterBuilder |
Générateur de paramètres pour l’opération AcquireTokenSilent(IEnumerable<String>, IAccount) . Voir https://aka.ms/msal-net-acquiretokensilent |
| AcquireTokenWithDeviceCodeParameterBuilder |
Générateur de paramètres pour l’opération AcquireTokenWithDeviceCode(IEnumerable<String>, Func<DeviceCodeResult,Task>) . Voir https://aka.ms/msal-net-device-code-flow |
| ApplicationBase |
Interface utilisée pour la création d’applications clientes. Pour plus d’informations, consultez https://aka.ms/msal-net-client-applications. |
| ApplicationOptions |
Classe de base pour les objets options avec des valeurs de chaîne pouvant être chargées à partir d’un fichier de configuration (par exemple un fichier JSON, comme dans un scénario de configuration asp.net) Voir https://aka.ms/msal-net-application-configuration également les classes PublicClientApplicationOptions dérivées et ConfidentialClientApplicationOptions |
| AssertionRequestOptions |
Informations sur l’assertion du client qui doivent être générées https://aka.ms/msal-net-client-assertion |
| AuthenticationHeaderParser |
En-têtes d’authentification analysés pour récupérer les valeurs d’en-tête à partir de HttpResponseHeaders. |
| AuthenticationInfoParameters |
Paramètres retournés par l’en-tête Authentication-Info. Cela permet des scénarios tels que la preuve de possession, etc. Voir https://www.rfc-editor.org/rfc/rfc7615 |
| AuthenticationResult |
Contient les résultats d’une opération d’acquisition de jeton dans PublicClientApplication ou ConfidentialClientApplication. Pour plus d’informations, consultez https://aka.ms/msal-net-authenticationresult |
| AuthenticationResultMetadata |
Contient les métadonnées du résultat d’authentification. Metrics pour des métriques supplémentaires à l’échelle MSAL. |
| BaseAbstractAcquireTokenParameterBuilder<T> |
Classe de base pour les générateurs de demandes de jetons, qui tentent d’acquérir un jeton en fonction des paramètres fournis. |
| BaseAbstractApplicationBuilder<T> |
InstallationUtilisation de l’interface de .NET Command-Line (CLI) :
Utilisation de l’interface de ligne de commande NuGet (CLI) :
Utilisation de la console Gestionnaire de package :
Utilisation de Visual Studio :
DocumentationPour commencer, consultez le Microsoft Authentication Library pour .NET guide. ÉchantillonsReportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples. |
| BaseApplicationOptions |
Classe de base pour les objets options avec des valeurs de chaîne pouvant être chargées à partir d’un fichier de configuration (par exemple un fichier JSON, comme dans un scénario de configuration asp.net) Voir https://aka.ms/msal-net-application-configuration également les classes dérivées ApplicationOptions |
| BrokerOptions |
La classe spécifie les options du répartiteur dans OperatingSystems Les propriétés communes sont des propriétés spécifiques de la plateforme membres directes (le cas échéant) font partie des options correspondantes. |
| CacheOptions |
Options pour les caches de jetons MSAL. |
| ClientApplicationBase |
Classe abstraite contenant les méthodes et propriétés d’API courantes. À la fois PublicClientApplication et ConfidentialClientApplication étendent cette classe. Pour plus d’informations, consultez https://aka.ms/msal-net-client-applications |
| ClientSignedAssertion |
Conteneur retourné à partir de |
| ConfidentialClientApplication |
Classe à utiliser pour les applications clientes confidentielles (applications web, API web et applications démon). |
| ConfidentialClientApplicationBuilder |
InstallationUtilisation de l’interface de .NET Command-Line (CLI) :
Utilisation de l’interface de ligne de commande NuGet (CLI) :
Utilisation de la console Gestionnaire de package :
Utilisation de Visual Studio :
DocumentationPour commencer, consultez le Microsoft Authentication Library pour .NET guide. ÉchantillonsReportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples. |
| ConfidentialClientApplicationOptions |
Options de configuration pour une application cliente confidentielle (application web / API web / application démon). Voir https://aka.ms/msal-net/application-configuration |
| DeviceCodeResult |
Cet objet est retourné dans le cadre du flux de code de l’appareil et contient des informations destinées à être affichées à l’utilisateur sur l’emplacement où accéder à la connexion et à ce que le code de l’appareil doit être entré sur cet appareil. Voir https://aka.ms/msal-device-code-flow. |
| EmbeddedWebViewOptions |
Options d’utilisation de la vue web incorporée. |
| GetAuthorizationRequestUrlParameterBuilder |
REMARQUE : quelques-unes des méthodes dans AbstractAcquireTokenParameterBuilder (par exemple, compte) n’ont pas de sens ici. Voulons-nous créer une base supplémentaire qui contient TOUTES les méthodes courantes, puis avoir un autre compte incluant, etc. qui sont utilisés uniquement pour AcquireToken ? |
| IntuneAppProtectionPolicyRequiredException |
Cette exception est levée lorsque Intune requiert une stratégie de protection des applications. Les informations contenues dans cette exception peuvent être utilisées par l’application pour obtenir l’ID d’inscription requis à partir du Kit de développement logiciel (GAM) Mobile App Management. Voir https://aka.ms/msal-net-trueMAM |
| ManagedIdentityApplication |
Classe à utiliser pour les applications d’identité managée (sur des ressources Azure telles que App Services, Machines Virtuelles, Azure Arc, Service Fabric et Cloud Shell). |
| ManagedIdentityApplicationBuilder |
Générateur pour les applications d’identité managée. |
| ManagedIdentityPopExtensions |
Méthodes d’extension pour activer la preuve de possession mTLS dans les flux d’identité managée. |
| Metrics |
Métriques à l’échelle MSAL. |
| MsalClaimsChallengeException |
Cette exception indique que les revendications ont été retournées à partir du point de terminaison qui doivent être résolues. Pour ce faire, utilisez-les dans la demande d’authentification suivante. Consultez les défis liés à l’accès conditionnel et aux revendications. Consultez Gestion de l’authentification multifacteur (MFA), de l’accès conditionnel et du consentement incrémentiel. |
| MsalClientException |
Cette classe d’exception représente des erreurs locales dans la bibliothèque ou l’appareil. Contrairement à MsalServiceException ce qui représente les erreurs qui se produisent à partir du service AZURE AD ou du réseau. Pour plus d'informations, voir https://aka.ms/msal-net-exceptions |
| MsalError |
Code d’erreur retourné en tant que propriété dans MsalException |
| MsalException |
Type d’exception de base levée lorsqu’une erreur se produit lors de l’acquisition de jetons. Pour plus d'informations, voir https://aka.ms/msal-net-exceptions |
| MsalManagedIdentityException |
Cette classe d’exception concerne les exceptions générées à partir de sources d’identité managée. Cette classe est déconseillée et sera supprimée dans une prochaine version. Interceptez MsalServiceException à la place. Pour plus d'informations, voir https://aka.ms/msal-net-managed-identity |
| MsalServiceException |
Type d’exception levée lorsque le service retourne une réponse d’erreur ou d’autres erreurs réseau se produisent. Pour plus d'informations, voir https://aka.ms/msal-net-exceptions |
| MsalThrottledServiceException |
Type d’exception levée lorsque MSAL détecte qu’une application tente d’acquérir un jeton trop souvent, à la suite de :
Les propriétés de cette exception sont identiques à l’exception d’origine Pour plus d’informations, consultez https://aka.ms/msal-net-throttling |
| MsalThrottledUiRequiredException |
Type d’exception levée lorsque MSAL détecte qu’une application tente d’acquérir un jeton même si une MsalUiRequiredException exception a été levée récemment. Pour atténuer ce problème, lorsqu’une MsalUiRequiredException application est rencontrée, l’application doit basculer vers l’acquisition d’un jeton de manière interactive. Pour mieux comprendre pourquoi l’objet MsalUiRequiredException a été jeté, inspectez la Classification propriété. Les propriétés de cette exception sont identiques à l’exception d’origine Pour plus d’informations, consultez https://aka.ms/msal-net-throttling |
| MsalUiRequiredException |
Cette classe d’exception consiste à informer les développeurs que l’interaction de l’interface utilisateur est requise pour que l’authentification réussisse. Elle est levée lors de l'appel AcquireTokenSilent(IEnumerable<String>, IAccount) ou de l'une de ses substitutions, et lorsque le jeton n'existe pas dans le cache, ou que l'utilisateur doit fournir plus de contenu, ou effectuer une authentification à plusieurs facteurs en fonction de Azure stratégies AD, etc.. Pour plus d'informations, voir https://aka.ms/msal-net-exceptions |
| OsCapabilitiesExtensions |
Méthodes d’extension |
| PublicClientApplication |
Classe abstraite contenant les méthodes et propriétés d’API courantes. Pour plus d’informations, consultez https://aka.ms/msal-net-client-applications |
| PublicClientApplicationBuilder |
InstallationUtilisation de l’interface de .NET Command-Line (CLI) :
Utilisation de l’interface de ligne de commande NuGet (CLI) :
Utilisation de la console Gestionnaire de package :
Utilisation de Visual Studio :
DocumentationPour commencer, consultez le Microsoft Authentication Library pour .NET guide. ÉchantillonsReportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples. |
| PublicClientApplicationExtensions |
Méthodes d’extensibilité pour IPublicClientApplication |
| PublicClientApplicationOptions |
Options de configuration pour une application cliente publique (application de bureau/mobile). Voir https://aka.ms/msal-net/application-configuration |
| RegionDetails |
Contient le résultat de la région lorsque la découverte de la région MSAL est utilisée, publiée dans le cadre de AuthenticationResultMetadata. AuthenticationResultMetadata pour obtenir des informations de métadonnées supplémentaires sur le résultat d’authentification. |
| SystemWebViewOptions |
Options d’utilisation du navigateur de système d’exploitation par défaut comme processus distinct pour gérer l’authentification interactive. MSAL écoute le navigateur du système d’exploitation pour terminer l’authentification, mais elle ne peut pas fermer le navigateur. Il peut toutefois répondre avec un message 200 OK ou une redirection 302, qui peut être configurée ici. Pour plus d’informations, consultez https://aka.ms/msal-net-os-browser |
| TenantProfile |
Représente un compte dans un locataire spécifique. Le même compte peut exister dans son locataire domestique et également en tant qu’invité dans plusieurs autres locataires. Les jetons d’accès et les jetons d’ID sont spécifiques au locataire et cet objet fournit des informations générales sur tous les jetons d’ID associés au compte. |
| TokenCache |
Cache de jetons stockant les jetons d’accès et d’actualisation pour les comptes Cette classe est utilisée dans les constructeurs et PublicClientApplicationConfidentialClientApplication. Dans le cas de ConfidentialClientApplication, deux instances sont utilisées, une pour le cache de jetons utilisateur et une pour le cache de jetons d’application (dans le cas d’applications utilisant les flux d’informations d’identification du client). |
| TokenCacheExtensions |
Méthodes d’extension pour ITokenCache |
| TokenCacheNotificationArgs |
Contient des paramètres utilisés par l’appel MSAL accédant au cache. Consultez également ITokenCacheSerializer les méthodes permettant de personnaliser la sérialisation du cache. Pour plus d’informations sur le cache de jetons, consultez https://aka.ms/msal-net-web-token-cache |
| TraceTelemetryConfig |
Implémentation simple ITelemetryConfig qui écrit des données à l’aide de System.Diagnostics.Trace. |
| UserAssertion |
InstallationUtilisation de l’interface de .NET Command-Line (CLI) :
Utilisation de l’interface de ligne de commande NuGet (CLI) :
Utilisation de la console Gestionnaire de package :
Utilisation de Visual Studio :
DocumentationPour commencer, consultez le Microsoft Authentication Library pour .NET guide. ÉchantillonsReportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples. |
| WindowsBrokerOptions |
Options avancées pour l’utilisation du répartiteur Windows 10. Pour plus d’informations, consultez https://aka.ms/msal-net-wam |
| WwwAuthenticateParameters |
Paramètres retournés par l’en-tête WWW-Authenticate. Cela permet des scénarios dynamiques tels que le défi des revendications, l’évaluation de l’accès continu (CAE) et l’accès conditionnel (CAE). Voir https://aka.ms/msal-net/wwwAuthenticate. |
Structures
| Nom | Description |
|---|---|
| Prompt |
Structure contenant des membres statiques que vous pouvez utiliser pour spécifier la façon dont les remplacements interactifs d’AcquireTokenAsync doivent IPublicClientApplication inviter l’utilisateur. |
Interfaces
| Nom | Description |
|---|---|
| IAccount |
L’interface IAccount représente des informations sur un seul compte.
Le même utilisateur peut être présent dans différents locataires, c’est-à-dire qu’un utilisateur peut avoir plusieurs comptes.
Une |
| IAppConfig |
Propriétés de configuration utilisées pour générer une application cliente publique ou confidentielle. |
| IApplicationBase |
Interface utilisée pour la création d’applications clientes. Pour plus d’informations, consultez https://aka.ms/msal-net-client-applications. |
| IByRefreshToken |
InstallationUtilisation de l’interface de .NET Command-Line (CLI) :
Utilisation de l’interface de ligne de commande NuGet (CLI) :
Utilisation de la console Gestionnaire de package :
Utilisation de Visual Studio :
DocumentationPour commencer, consultez le Microsoft Authentication Library pour .NET guide. ÉchantillonsReportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples. |
| IByUserFederatedIdentityCredential |
Fournit une interface permettant d’acquérir des jetons à l’aide du flux User Federated Identity Credential (UserFIC). |
| IByUsernameAndPassword |
Fournit une interface explicite pour l’utilisation de l’octroi de mot de passe du propriétaire de la ressource sur le client confidentiel. |
| IClientApplicationBase |
Interface définissant des méthodes et des propriétés d’API courantes. À la fois PublicClientApplication et ConfidentialClientApplication étendez cette classe. Pour plus d’informations, consultez https://aka.ms/msal-net-client-applications |
| IConfidentialClientApplication |
Représente les applications clientes confidentielles : applications web, API web, applications démon. |
| ILongRunningWebApi |
Méthodes pour les processus de longue durée ou en arrière-plan dans les API web. |
| IManagedIdentityApplication |
Composant à utiliser avec des applications d’identité managée pour les ressources Azure. |
| IMsalHttpClientFactory |
Fabrique responsable de la création de HttpClient. Consultez https://learn.microsoft.com/dotnet/api/system.net.http.httpclient?view=net-7.0#instancing pour plus d’informations. |
| IMsalMtlsHttpClientFactory |
Fabrique responsable de la création d’instances HttpClient configurées pour le protocole TLS mutuel (mTLS). Cette fabrique est destinée à sécuriser la communication avec Azure AD à l’aide de mTLS. Pour plus d’informations sur l’instanciation HttpClient, consultez https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-8.0#instancing. |
| IMsalSFHttpClientFactory |
Fabrique responsable de la création de HttpClient avec un rappel de validation de certificat de serveur personnalisé. Cela est utile pour le scénario de Fabric de service dans lequel la validation du certificat de serveur est requise à l’aide du certificat de serveur. Pour plus d’informations, consultez https://learn.microsoft.com/dotnet/api/system.net.http.httpclient?view=net-7.0#instancing cette rubrique. |
| IPublicClientApplication |
Représente les applications clientes publiques : applications de bureau et mobiles. |
| ITelemetryConfig |
InstallationUtilisation de l’interface de .NET Command-Line (CLI) :
Utilisation de l’interface de ligne de commande NuGet (CLI) :
Utilisation de la console Gestionnaire de package :
Utilisation de Visual Studio :
DocumentationPour commencer, consultez le Microsoft Authentication Library pour .NET guide. ÉchantillonsReportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples. |
| ITelemetryEventPayload |
Données qui représentent un instantané unique dans la série d’événements collectés |
| ITokenCache |
Il s’agit de l’interface qui implémente l’accès public aux opérations de cache. Avec CacheV2, cela ne doit être nécessaire que si l’appelant conserve le cache dans son propre magasin, car cela fournira la sérialisation/désérialisation et avant/après les notifications utilisées dans ce scénario. Voir https://aka.ms/aka.ms/msal-net-token-cache-serialization |
| ITokenCacheSerializer |
Cette interface sera disponible dans le rappel TokenCacheNotificationArgs pour activer la sérialisation/désérialisation du cache. |
Énumérations
| Nom | Description |
|---|---|
| AadAuthorityAudience |
Spécifie les comptes Microsoft qui peuvent être utilisés pour la connexion avec une application donnée. Voir https://aka.ms/msal-net-application-configuration |
| AzureCloudInstance |
InstallationUtilisation de l’interface de .NET Command-Line (CLI) :
Utilisation de l’interface de ligne de commande NuGet (CLI) :
Utilisation de la console Gestionnaire de package :
Utilisation de Visual Studio :
DocumentationPour commencer, consultez le Microsoft Authentication Library pour .NET guide. ÉchantillonsReportez-vous à Plateforme d'identités Microsoft exemples de code et à l’Explorateur d’exemples. |
| BrokerOptions.OperatingSystems |
Systèmes d’exploitation pris en charge |
| CacheRefreshReason |
Spécifie la raison de l’extraction du jeton d’accès à partir du fournisseur d’identité lors de l’utilisation d’AcquireTokenSilent, AcquireTokenForClient ou AcquireTokenOnBehalfOf. |
| LogLevel |
Représente le niveau de journal dans MSAL. Pour plus d’informations, consultez la journalisation MSAL. |
| TelemetryAudienceType |
Décrit les types d’audiences pour la télémétrie. AudienceType |
| TokenSource |
Spécifie la source des jetons d’accès et d’ID dans le résultat d’authentification. |
| UiRequiredExceptionClassification |
Détails sur la cause d’un MsalUiRequiredException, donnant un indicateur sur ce que l’utilisateur peut attendre lorsqu’il passe par l’authentification interactive. Pour plus d’informations, consultez Présentation de MsalUiRequiredException . |
Délégués
| Nom | Description |
|---|---|
| LogCallback |
Délégué de rappel qui permet aux développeurs d’applications de consommer des journaux et de les gérer de manière personnalisée. Ce rappel est défini à l’aide WithLogging(LogCallback, Nullable<LogLevel>, Nullable<Boolean>, Nullable<Boolean>)de .
Si |
| TokenCacheCallback |
Notification pour certaines interactions de cache de jetons lors de l’acquisition de jetons. Ce délégué est utilisé en particulier pour fournir une sérialisation de cache de jetons personnalisée. Voir https://aka.ms/aka.ms/msal-net-token-cache-serialization |
Remarques
Contributions
Nous apprécions les commentaires et les contributions pour aider à améliorer Microsoft Authentication Library .NET ! Avant de commencer, lisez les documents suivants :
Problèmes
Pour fournir des commentaires sur la bibliothèque ou signaler un bogue, ouvrez un problème sur GitHub.