Librerie di autenticazione di Azure Active Directory 2.0Azure Active Directory v2.0 authentication libraries

L'endpoint di Azure Active Directory (Azure AD) 2.0 supporta i protocolli standard del settore OAuth 2.0 e OpenID Connect 1.0.The Azure Active Directory (Azure AD) v2.0 endpoint supports the industry-standard OAuth 2.0 and OpenID Connect 1.0 protocols. Microsoft Authentication Library (MSAL) è progettata per funzionare con l'endpoint Azure AD versione 2.0.The Microsoft Authentication Library (MSAL) is designed to work with the Azure AD v2.0 endpoint. È anche possibile usare le librerie open source che supportano OAuth 2.0 e OpenID Connect 1.0.It's also possible to use open-source libraries that support OAuth 2.0 and OpenID Connect 1.0.

È consigliabile usare librerie scritte da esperti del dominio del protocollo che seguono una metodologia Security Development Lifecycle (SDL), come quella seguita da Microsoft.It's recommended that you use libraries written by protocol domain experts who follow a Security Development Lifecycle (SDL) methodology, like the one followed by Microsoft. Se si decide di creare manualmente il codice per il supporto dei protocolli, seguire una metodologia come Microsoft Security Development Lifecycle (SDL) e prestare attenzione alle considerazioni sulla sicurezza contenute nelle specifiche degli standard di ogni protocollo.If you decide to hand-code support for the protocols, follow a methodology like Microsoft's SDL and pay close attention to the security considerations in the standards specifications for each protocol.

Nota

Si cercano le librerie v1.0 di Azure AD (ASAL)?Looking for the Azure AD v1.0 libraries (ADAL)? Controllare la Guida alle librerie ADAL.Checkout the ADAL library guide.

Tipi di librerieTypes of libraries

L'endpoint di Azure AD v2.0 usa due tipi di librerie:Azure AD v2.0 endpoint works with two types of libraries:

  • Librerie client.Client libraries. I server e i client nativi usano le librerie client per ottenere i token di accesso per chiamare una risorsa, ad esempio Microsoft Graph.Native clients and servers use client libraries to get access tokens for calling a resource, such as Microsoft Graph.
  • Librerie middleware server.Server middleware libraries. Le librerie middleware server vengono usate dalle app Web per l'accesso degli utentiWeb apps use server middleware libraries for user sign-in. e dalle API Web per convalidare i token inviati da client nativi o altri server.Web APIs use server middleware libraries to validate tokens that are sent by native clients or by other servers.

Supporto per le librerieLibrary support

Dato che è possibile scegliere qualsiasi libreria conforme agli standard quando si usa l'endpoint 2.0, è importante sapere a chi rivolgersi per ottenere supporto.Because you can choose any standards-compliant library when you use the v2.0 endpoint, it’s important to know where to go for support. Per richieste relative a problemi e funzionalità nel codice della libreria, contattare il proprietario della libreria.For issues and feature requests in library code, contact the library owner. Per richieste relative a problemi e funzionalità nell'implementazione del protocollo sul lato del servizio, contattare Microsoft.For issues and feature requests in the service-side protocol implementation, contact Microsoft. Presentare una richiesta di funzionalità per funzionalità aggiuntive che si desidera vedere nel protocollo.File a feature request for additional features you would like to see in the protocol. Creare una richiesta di supporto se si rileva un problema in cui l'endpoint di Azure AD versione 2.0 non è conforme a OAuth 2.0 o OpenID Connect 1.0.Create a support request if you find an issue where the Azure AD v2.0 endpoint is not compliant with OAuth 2.0 or OpenID Connect 1.0.

Le librerie dispongono di due categorie di supporto:Libraries come in two support categories:

  • Librerie supportate da Microsoft.Microsoft-supported. Microsoft offre correzioni per queste librerie e ha applicato la due diligence SDL alle librerie.Microsoft provides fixes for these libraries and has done SDL due diligence on these libraries.
  • Librerie compatibili.Compatible. Microsoft ha testato queste librerie in scenari di base e ne ha confermato il funzionamento con l'endpoint 2.0.Microsoft has tested these libraries in basic scenarios and confirmed that they work with the v2.0 endpoint. Microsoft non fornisce correzioni per queste librerie e non ha eseguito una verifica su di esse.Microsoft does not provide fixes for these libraries and has not done a review of these libraries. Le richieste relative a problemi e funzionalità devono essere indirizzate al progetto open source della libreria.Issues and feature requests should be directed to the library’s open-source project.

Per un elenco delle librerie che funzionano con l'endpoint 2.0, vedere le sezioni successive di questo articolo.For a list of libraries that work with the v2.0 endpoint, see the next sections in this article.

Librerie client supportate da MicrosoftMicrosoft-supported client libraries

Importante

Le librerie di anteprima MSAL sono adatte per essere usate in ambienti di produzione.The MSAL preview libraries are suitable for use in a production environment. Per queste librerie Microsoft fornisce lo stesso supporto di livello produzione offerto per le librerie di produzione correnti (ADAL).Microsoft provides the same production level support for these libraries as the current production libraries (ADAL). In fase di anteprima prevedere modifiche all'API MSAL, al formato della cache interna e ad altri meccanismi delle librerie senza preavviso, ma queste modifiche dovranno essere replicate durante le correzioni di bug o i miglioramenti delle funzionalità.During the preview, expect changes to the MSAL API, internal cache format, and other mechanisms of these libraries without notice, which you will be required to take along with bug fixes or feature improvements. Possono infatti incidere sull'applicazione.This may impact your application. Una modifica al formato della cache, ad esempio, può richiedere agli utenti di accedere di nuovo.For instance, a change to the cache format may require your users to sign in again. Per aggiornare il codice è possibile che sia necessario modificare l'API.An API change may require you to update your code. Quando la versione Disponibilità generale (GA) diventa disponibile, tutte le applicazioni che usano una versione di anteprima della libreria devono essere aggiornate entro sei mesi o potrebbero smettere di funzionare.When the General Availability (GA) release becomes available, all applications using a preview version of the library must update within six months or they may stop working.

PiattaformaPlatform LibreriaLibrary DownloadDownload Codice sorgenteSource Code EsempioSample RiferimentiReference
.NET Client, Windows Store, UWP, Xamarin iOS e Android.NET Client, Windows Store, UWP, Xamarin iOS and Android MSAL .NET (anteprima)MSAL .NET (Preview) NuGetNuGet GitHubGitHub App desktopDesktop App
JavaScriptJavaScript MSAL.js (anteprima)MSAL.js (Preview) GitHubGitHub GitHubGitHub App a pagina singolaSingle Page App
iOS, macOSiOS, macOS MSAL (anteprima)MSAL (Preview) GitHubGitHub GitHubGitHub App iOSiOS App
AndroidAndroid MSAL (anteprima)MSAL (Preview) Repository centraleThe Central Repository GitHubGitHub App AndroidAndroid App JavaDocsJavaDocs

Librerie middleware server supportate da MicrosoftMicrosoft-supported server middleware libraries

PiattaformaPlatform LibreriaLibrary DownloadDownload Codice sorgenteSource Code EsempioSample RiferimentiReference
.NET 4.x.NET 4.x Middleware OWIN OpenID ConnectOWIN OpenID Connect middleware NuGetNuGet GitHubGitHub Applicazione MVCMVC App
.NET 4.x.NET 4.x Middleware OWIN OAuth Bearer per Azure ADOWIN OAuth Bearer middleware for AzureAD NuGetNuGet GitHubGitHub
.NET 4.x.NET 4.x Gestore token JWT per .NET 4.5JWT Handler for .NET 4.5 NuGetNuGet GitHubGitHub
.NET Core.NET Core Middleware ASP.NET OpenID ConnectASP.NET OpenID Connect middleware Microsoft.AspNetCore.Authentication.OpenIdConnect (NuGet)Microsoft.AspNetCore.Authentication.OpenIdConnect (NuGet) ASP.NET Security (GitHub)ASP.NET Security (GitHub) App MVCMVC app
.NET Core.NET Core Middleware ASP.NET OAuth BearerASP.NET OAuth Bearer middleware Microsoft.AspNetCore.Authentication.OAuth (NuGet)Microsoft.AspNetCore.Authentication.OAuth (NuGet) ASP.NET Security (GitHub)ASP.NET Security (GitHub)
.NET Core.NET Core Gestore token JWT per .NET CoreJWT Handler for .NET Core NuGetNuGet GitHubGitHub
Node.jsNode.js Passport Azure ADAzure AD Passport npmnpm GitHubGitHub App WebWeb app

Librerie client compatibiliCompatible client libraries

PiattaformaPlatform Nome libreriaLibrary name Versione testataTested version Codice sorgenteSource code EsempioSample
AndroidAndroid OIDCAndroidLibOIDCAndroidLib 0.2.10.2.1 OIDCAndroidLibOIDCAndroidLib Esempio di app nativaNative app sample
iOSiOS NXOAuth2ClientNXOAuth2Client 1.2.81.2.8 NXOAuth2ClientNXOAuth2Client Esempio di app nativaNative app sample
JavaScriptJavaScript Hello.jsHello.js 1.13.51.13.5 Hello.jsHello.js SPASPA
JavaJava Scribe Java scribejavaScribe Java scribejava Versione 3.2.0Version 3.2.0 ScribeJavaScribeJava
PHPPHP PHP League oauth2-clientThe PHP League oauth2-client Versione 1.4.2Version 1.4.2 oauth2-clientoauth2-client
RubyRuby OmniAuthOmniAuth omniauth:1.3.1omniauth:1.3.1
omniauth-oauth2:1.4.0omniauth-oauth2:1.4.0
OmniAuthOmniAuth
OmniAuth OAuth2OmniAuth OAuth2

Per altre informazioni sull'endpoint di Azure AD 2.0, vedere la panoramica del modello app di Azure AD 2.0.For more information about the Azure AD v2.0 endpoint, see the Azure AD app model v2.0 overview.