Bibliothèques d’authentification d’Azure Active DirectoryAzure Active Directory Authentication Libraries

Important

La Plateforme d’identités Microsoft (v2.0) est une évolution de la plateforme de développement Azure Active Directory (Azure AD) (v1.0).Microsoft identity platform (v2.0) is an evolution of the Azure Active Directory (Azure AD) developer platform (v1.0). Elle permet aux développeurs de générer des applications qui connectent toutes les identités Microsoft et obtiennent des jetons pour appeler des API Microsoft comme Microsoft Graph ou des API que des développeurs ont créées.It allows developers to build applications that sign in all Microsoft identities and get tokens to call Microsoft APIs such as Microsoft Graph or APIs that developers have built. Ce contenu concerne l’ancien point de terminaison Azure AD v1.0.This content is for the older, Azure AD v1.0 endpoint. Nous vous recommandons d'utiliser le point de terminaison v2.0 pour les nouveaux projets.We recommend that you use the v2.0 endpoint for new projects. Pour plus d’informations, consultez Pourquoi opérer une mise à jour vers la Plateforme d’identités Microsoft (v2.0)For more info, read Why update to Microsoft identity platform (v2.0)? et les limitations de la Plateforme d’identités Microsoft.as well as Microsoft identity platform limitations.

La bibliothèque d’authentification Azure Active Directory v1.0 (ADAL, Azure Active Directory Authentication Library) permet aux développeurs d’applications d’authentifier les utilisateurs dans une instance locale d’Active Directory (AD) ou dans le cloud, puis d’obtenir des jetons pour sécuriser les appels d’API.The Azure Active Directory Authentication Library (ADAL) v1.0 enables application developers to authenticate users to cloud or on-premises Active Directory (AD), and obtain tokens for securing API calls. La bibliothèque ADAL facilite l’authentification pour les développeurs grâce à des fonctionnalités comme :ADAL makes authentication easier for developers through features such as:

  • Un cache de jeton configurable qui stocke les jetons d’accès et les jetons d’actualisationConfigurable token cache that stores access tokens and refresh tokens
  • L’actualisation automatique des jetons lorsqu’un jeton d’accès expire et qu’un jeton d’actualisation est disponibleAutomatic token refresh when an access token expires and a refresh token is available
  • La prise en charge des appels de méthode asynchronesSupport for asynchronous method calls

Notes

Vous recherchez les bibliothèques Azure AD v2.0 (MSAL) ?Looking for the Azure AD v2.0 libraries (MSAL)? Consultez le guide des bibliothèques MSAL.Checkout the MSAL library guide.

Bibliothèques clientes prises en charge par MicrosoftMicrosoft-supported Client Libraries

PlateformePlatform BibliothèqueLibrary TéléchargementDownload Code sourceSource Code ExempleSample Informations de référenceReference
.NET Client, Windows Store, UWP, Xamarin iOS et Android.NET Client, Windows Store, UWP, Xamarin iOS and Android ADAL .NET v3ADAL .NET v3 NuGetNuGet GitHubGitHub Application de bureauDesktop app RéférenceReference
JavaScriptJavaScript ADAL.jsADAL.js GitHubGitHub GitHubGitHub Application à page uniqueSingle-page app
iOS, macOSiOS, macOS ADALADAL GitHubGitHub GitHubGitHub Application iOSiOS app RéférenceReference
AndroidAndroid ADALADAL MavenMaven GitHubGitHub Application AndroidAndroid app JavaDocsJavaDocs
Node.jsNode.js ADALADAL npmnpm GitHubGitHub Application web Node.jsNode.js web app RéférenceReference
JavaJava ADAL4JADAL4J MavenMaven GitHubGitHub Applications web JavaJava web app RéférenceReference
PythonPython ADALADAL GitHubGitHub GitHubGitHub Application Web PythonPython web app RéférenceReference

Bibliothèques serveur prises en charge par MicrosoftMicrosoft-supported Server Libraries

PlateformePlatform BibliothèqueLibrary TéléchargementDownload Code sourceSource Code ExempleSample Informations de référenceReference
.NET.NET OWIN pour Azure ADOWIN for AzureAD NuGetNuGet GitHubGitHub Application MVCMVC App
.NET.NET OWIN pour OpenIDConnectOWIN for OpenIDConnect NuGetNuGet GitHubGitHub Application webWeb App
.NET.NET OWIN pour WS-FederationOWIN for WS-Federation NuGetNuGet GitHubGitHub Application Web MVCMVC Web App
.NET.NET Extensions de protocole d’identité pour .NET 4.5Identity Protocol Extensions for .NET 4.5 NuGetNuGet GitHubGitHub
.NET.NET Gestionnaire JWT pour .NET 4.5JWT Handler for .NET 4.5 NuGetNuGet GitHubGitHub
Node.jsNode.js Azure AD PassportAzure AD Passport npmnpm GitHubGitHub API WebWeb API

ScénariosScenarios

Voici trois scénarios courants d’utilisation de la bibliothèque ADAL sur un client qui accède à une ressource distante :Here are three common scenarios for using ADAL in a client that accesses a remote resource:

Authentification des utilisateurs d’une application cliente native exécutée sur un appareilAuthenticating users of a native client application running on a device

Dans ce scénario, un développeur dispose d’une application mobile cliente ou de bureau qui doit accéder à une ressource distante, par exemple une API web.In this scenario, a developer has a mobile client or desktop application that needs to access a remote resource, such as a web API. L’API web n’autorise pas les appels anonymes et doit être appelée dans le contexte d’un utilisateur authentifié.The web API does not allow anonymous calls and must be called in the context of an authenticated user. L’API web est préconfigurée de manière à approuver les jetons d’accès émis par un locataire Azure AD spécifique.The web API is pre-configured to trust access tokens issued by a specific Azure AD tenant. Azure AD est préconfiguré pour émettre des jetons d’accès pour cette ressource.Azure AD is pre-configured to issue access tokens for that resource. Pour appeler l’API web à partir du client, le développeur utilise la bibliothèque ADAL afin de faciliter l’authentification auprès d’Azure AD.To invoke the web API from the client, the developer uses ADAL to facilitate authentication with Azure AD. La méthode d’utilisation de la bibliothèque ADAL la plus sûre consiste à faire en sorte qu’elle affiche l’interface utilisateur pour recueillir les informations d’identification de l’utilisateur (sous forme de fenêtre de navigateur).The most secure way to use ADAL is to have it render the user interface for collecting user credentials (rendered as browser window).

La bibliothèque ADAL facilite l’authentification de l’utilisateur, l’obtention d’un jeton d’accès et d’un jeton d’actualisation à partir d’Azure AD, puis l’appel de l’API web à l’aide du jeton d’accès.ADAL makes it easy to authenticate the user, obtain an access token and refresh token from Azure AD, and then call the web API using the access token.

Pour voir un exemple de code qui illustre ce scénario en utilisant l’authentification auprès d’Azure AD, consultez la section Native Client WPF Application to Web API.For a code sample that demonstrates this scenario using authentication to Azure AD, see Native Client WPF Application to Web API.

Authentification d’une application cliente confidentielle exécutée sur un serveur webAuthenticating a confidential client application running on a web server

Dans ce scénario, un développeur a une application fonctionnant sur un serveur qui doit accéder à une ressource distante, par exemple une API web.In this scenario, a developer has an application running on a server that needs to access a remote resource, such as a web API. L’API web n’autorisant pas les appels anonymes, elle doit être appelée à partir d’un service autorisé.The web API does not allow anonymous calls, so it must be called from an authorized service. L’API web est préconfigurée de manière à approuver les jetons d’accès émis par un locataire Azure AD spécifique.The web API is pre-configured to trust access tokens issued by a specific Azure AD tenant. Azure AD est préconfiguré pour délivrer des jetons d’accès pour cette ressource à un service avec des informations d’identification client (ID client et secret).Azure AD is pre-configured to issue access tokens for that resource to a service with client credentials (client ID and secret). La bibliothèque ADAL facilite l’authentification du service auprès d’Azure AD en retournant un jeton d’accès qui peut être utilisé pour appeler l’API web.ADAL facilitates authentication of the service with Azure AD returning an access token that can be used to call the web API. La bibliothèque ADAL gère également la durée de vie du jeton d'accès en le mettant en cache et en le renouvelant si nécessaire.ADAL also handles managing the lifetime of the access token by caching it and renewing it as necessary. Pour voir un exemple de code qui illustre ce scénario, consultez Daemon console Application to Web API.For a code sample that demonstrates this scenario, see Daemon console Application to Web API.

Authentification d’une application cliente confidentielle exécutée sur un serveur, pour le compte d’un utilisateurAuthenticating a confidential client application running on a server, on behalf of a user

Dans ce scénario, un développeur a une application web fonctionnant sur un serveur qui doit accéder à une ressource distante, par exemple une API web.In this scenario, a developer has a web application running on a server that needs to access a remote resource, such as a web API. L’API web n’autorisant pas les appels anonymes, elle doit être appelée à partir d’un service autorisé pour le compte d’un utilisateur authentifié.The web API does not allow anonymous calls, so it must be called from an authorized service on behalf of an authenticated user. L’API web est préconfigurée de manière à approuver les jetons d’accès émis par un locataire Azure spécifique, et Azure AD est préconfiguré pour délivrer des jetons d’accès pour cette ressource à un service avec des informations d’identification client.The web API is pre-configured to trust access tokens issued by a specific Azure AD tenant, and Azure AD is pre-configured to issue access tokens for that resource to a service with client credentials. Une fois l’utilisateur authentifié dans l’application web, l’application peut obtenir d’Azure AD un code d’autorisation pour l’utilisateur.Once the user is authenticated in the web application, the application can get an authorization code for the user from Azure AD. L'application web peut ensuite utiliser ADAL pour obtenir d’Azure AD un jeton d'accès et un jeton d’actualisation pour le compte de l'utilisateur en utilisant le code d'autorisation et les informations d’identification client associés à l'application.The web application can then use ADAL to obtain an access token and refresh token on behalf of a user using the authorization code and client credentials associated with the application from Azure AD. Une fois l'application web en possession du jeton d'accès, elle peut appeler l'API web jusqu’à expiration du jeton.Once the web application is in possession of the access token, it can call the web API until the token expires. Lorsque le jeton expire, l'application web peut utiliser la bibliothèque ADAL pour obtenir un nouveau jeton d'accès en utilisant le jeton d’actualisation reçu précédemment.When the token expires, the web application can use ADAL to get a new access token by using the refresh token that was previously received. Pour voir un exemple de code qui illustre ce scénario, consultez Native client to Web API to Web API.For a code sample that demonstrates this scenario, see Native client to Web API to Web API.

Voir aussiSee Also