Bibliotecas de autenticação da plataforma de identidade da MicrosoftMicrosoft identity platform authentication libraries

O ponto de extremidade da plataforma de identidade da Microsoft dá suporte aos protocolos OAuth 2,0 padrão do setor e OpenID Connect 1,0.The Microsoft identity platform endpoint supports the industry-standard OAuth 2.0 and OpenID Connect 1.0 protocols. A MSAL (biblioteca de autenticação da Microsoft) foi projetada para trabalhar com o ponto de extremidade da plataforma de identidade da Microsoft.The Microsoft Authentication Library (MSAL) is designed to work with the Microsoft identity platform endpoint. Você também pode usar bibliotecas de código-fonte aberto que dão suporte a OAuth 2,0 e a OpenID Connect 1,0.You can also use open-source libraries that support OAuth 2.0 and OpenID Connect 1.0.

Recomendamos que você use bibliotecas escritas por especialistas de domínio de protocolo que seguem uma metodologia de SDL (ciclo de vida de desenvolvimento de segurança).We recommend that you use libraries written by protocol domain experts who follow a Security Development Lifecycle (SDL) methodology. Essas bibliotecas incluem aquela que a Microsoft segue.Such libraries include the one that Microsoft follows. Se você tiver código à mão para os protocolos, deverá seguir uma metodologia como o Microsoft SDL.If you hand code for the protocols, you should follow a methodology such as Microsoft SDL. Preste muita atenção às considerações de segurança nas especificações de padrões para cada protocolo.Pay close attention to the security considerations in the standards specifications for each protocol.

Observação

Você está procurando pela ADAL (biblioteca de autenticação Azure Active Directory)?Are you looking for the Azure Active Directory Authentication Library (ADAL)? Confira o guia da biblioteca Adal.Check out the ADAL library guide.

Tipos de bibliotecasTypes of libraries

O ponto de extremidade da plataforma de identidade da Microsoft funciona com dois tipos de bibliotecas:The Microsoft identity platform endpoint works with two types of libraries:

  • Bibliotecas de cliente: Clientes e servidores nativos usam bibliotecas de cliente para adquirir tokens de acesso para chamar um recurso, como o Microsoft Graph.Client libraries: Native clients and servers use client libraries to acquire access tokens for calling a resource such as Microsoft Graph.
  • Bibliotecas de middleware de servidor: Os aplicativos Web usam bibliotecas de middleware de servidor para entrada do usuário.Server middleware libraries: Web apps use server middleware libraries for user sign in. As APIs da Web usam bibliotecas de middleware de servidor para validar tokens enviados por clientes nativos ou por outros servidores.Web APIs use server middleware libraries to validate tokens that are sent by native clients or by other servers.

Suporte à bibliotecaLibrary support

As bibliotecas vêm em duas categorias de suporte:Libraries come in two support categories:

  • Com suporte da Microsoft: A Microsoft fornece correções para essas bibliotecas e fez a devida diligência do SDL nessas bibliotecas.Microsoft-supported: Microsoft provides fixes for these libraries and has done SDL due diligence on these libraries.
  • Compatível: A Microsoft testou essas bibliotecas em cenários básicos e confirmou que elas funcionam com o ponto de extremidade da plataforma Microsoft Identity.Compatible: Microsoft has tested these libraries in basic scenarios and has confirmed that they work with the Microsoft identity platform endpoint. A Microsoft não fornece correções para essas bibliotecas e não fez uma análise dessas bibliotecas.Microsoft doesn't provide fixes for these libraries and hasn't done a review of these libraries. Os problemas e solicitações de recursos devem ser direcionados ao projeto de software livre da biblioteca.Issues and feature requests should be directed to the library’s open-source project.

Para obter uma lista de bibliotecas que funcionam com o ponto de extremidade da plataforma Microsoft Identity, consulte as seções a seguir.For a list of libraries that work with the Microsoft identity platform endpoint, see the following sections.

Bibliotecas de cliente com suporte da MicrosoftMicrosoft-supported client libraries

Use bibliotecas de autenticação de cliente para adquirir um token para chamar uma API Web protegida.Use client authentication libraries to acquire a token for calling a protected web API.

PlataformaPlatform BibliotecaLibrary BaixarDownload Código-fonteSource code AmostraSample ReferênciaReference Documentação conceitualConceptual doc RoteiroRoadmap
JavaScript MSAL.jsMSAL.js NPMNPM GitHubGitHub Aplicativo de página únicaSingle-page app ReferênciaReference Documentos conceituaisConceptual docs RoteiroRoadmap
Angular JS MSAL Angular JSMSAL Angular JS NPMNPM GitHubGitHub
Angular MSAL angular (versão prévia)MSAL Angular (Preview) NPMNPM GitHubGitHub
.NET Framework UWP Xamarin MSAL.NETMSAL.NET NuGetNuGet GitHubGitHub Aplicativo da área de trabalhoDesktop app MSAL.NETMSAL.NET Documentos conceituaisConceptual docs RoteiroRoadmap
Python MSAL Python (versão prévia)MSAL Python (Preview) PyPIPyPI GitHubGitHub AmostrasSamples ReadTheDocsReadTheDocs WikiWiki RoteiroRoadmap
Java MSAL Java (versão prévia)MSAL Java (Preview) MavenMaven GitHubGitHub AmostrasSamples WikiWiki RoteiroRoadmap
iOS / Objective C ou swift MSAL obj_c (versão prévia)MSAL obj_c (Preview) GitHubGitHub GitHubGitHub Aplicativo iOSiOS app WikiWiki
Android / Java MSAL (versão prévia)MSAL (Preview) Repositório centralCentral repository GitHubGitHub Aplicativo AndroidAndroid app JavaDocsJavaDocs WikiWiki

Bibliotecas de middleware de servidor com suporte da MicrosoftMicrosoft-supported server middleware libraries

Use bibliotecas de middleware para ajudar a proteger aplicativos Web e APIs Web.Use middleware libraries to help protect web applications and web APIs. Aplicativos Web ou APIs Web escritos com ASP.NET ou ASP.NET Core usam as bibliotecas de middleware.Web apps or web APIs written with ASP.NET or ASP.NET Core use the middleware libraries.

PlataformaPlatform BibliotecaLibrary BaixarDownload Código-fonteSource Code AmostraSample ReferênciaReference
.NET .NET Core Segurança do ASP.NETASP.NET Security NuGetNuGet GitHubGitHub Aplicativo MVCMVC app Referência da API do ASP.NETASP.NET API reference
.NET Extensões de IdentityModel para .NETIdentityModel Extensions for .NET GitHubGitHub Aplicativo MVCMVC app ReferênciaReference
Node.js Azure AD PassportAzure AD Passport NPMNPM GitHubGitHub Aplicativo WebWeb app

Bibliotecas com suporte da Microsoft por sistema operacional/idiomaMicrosoft-supported libraries by OS / language

Em termos de sistemas operacionais com suporte vs idiomas, o mapeamento é o seguinte:In term of supported operating systems vs languages, the mapping is the following:

Windows WindowsWindows LinuxLinux macOSmacOS iOS Android / Java AndroidAndroid
JavaScript MSAL.jsMSAL.js MSAL.jsMSAL.js MSAL.jsMSAL.js MSAL.jsMSAL.js MSAL.jsMSAL.js
C# ASP.NET, ASP.NET Core, MSAL.Net (.NET FW, Core, UWP)ASP.NET, ASP.NET Core, MSAL.Net (.NET FW, Core, UWP) ASP.NET Core, MSAL.Net (.NET Core)ASP.NET Core, MSAL.Net (.NET Core) ASP.NET Core, MSAL.Net (MacOS)ASP.NET Core, MSAL.Net (MacOS) MSAL.Net (Xamarin. iOS)MSAL.Net (Xamarin.iOS) MSAL.Net (Xamarin. Android)MSAL.Net (Xamarin.Android)
Objective C MSAL.iOSMSAL.iOS
Java JavaJava MSAL.AndroidMSAL.Android
Java JavaJava msal4jmsal4j msal4jmsal4j msal4jmsal4j
Python PythonPython MSAL PythonMSAL Python MSAL PythonMSAL Python MSAL PythonMSAL Python
Node. js Node.JSNode.JS Passport. NodePassport.node Passport. NodePassport.node Passport. NodePassport.node

Veja também cenários por plataformas e linguagens com suporteSee also Scenarios by supported platforms and languages

Bibliotecas de cliente compatíveisCompatible client libraries

PlataformaPlatform Nome da bibliotecaLibrary name Versão testadaTested version Código-fonteSource code AmostraSample
JavaScript Hello.jsHello.js 1.13.5 da versãoVersion 1.13.5 Hello.jsHello.js SPASPA
Java Scribe JavaScribe Java Versão 3.2.0Version 3.2.0 ScribeJavaScribeJava
Java Biblioteca Gluu OpenID ConnectGluu OpenID Connect library Versão 3.0.2Version 3.0.2 Biblioteca Gluu OpenID ConnectGluu OpenID Connect library
Python Solicitações-OAuthlibRequests-OAuthlib Versão 1.2.0Version 1.2.0 Solicitações-OAuthlibRequests-OAuthlib
Node.js openid-clientopenid-client 2.4.5 da versãoVersion 2.4.5 openid-clientopenid-client
PHP The PHP League oauth2-clientThe PHP League oauth2-client Versão 1.4.2Version 1.4.2 oauth2-clientoauth2-client
Ruby OmniAuthOmniAuth omniauth: 1.3.1omniauth: 1.3.1
omniauth-oauth2: 1.4.0omniauth-oauth2: 1.4.0
OmniAuthOmniAuth
OmniAuth OAuth2OmniAuth OAuth2
iOS Android Reagir à autenticação de aplicativo nativoReact Native App Auth 4.2.0 da versãoVersion 4.2.0 Reagir à autenticação de aplicativo nativoReact Native App Auth

Para qualquer biblioteca compatível com padrões, você pode usar o ponto de extremidade da plataforma de identidade da Microsoft.For any standards-compliant library, you can use the Microsoft identity platform endpoint. É importante saber para onde ir para obter suporte:It’s important to know where to go for support:

  • Para problemas e solicitações de novos recursos no código de biblioteca, entre em contato com o proprietário da biblioteca.For issues and new feature requests in library code, contact the library owner.
  • Para problemas e solicitações de novos recursos na implementação do protocolo do lado do serviço, entre em contato com a Microsoft.For issues and new feature requests in the service-side protocol implementation, contact Microsoft.
  • Arquivo uma solicitação de recurso para recursos adicionais que você deseja ver no protocolo.File a feature request for additional features you want to see in the protocol.
  • Crie uma solicitação de suporte se você encontrar um problema em que o ponto de extremidade da plataforma de identidade da Microsoft não está em conformidade com o OAuth 2,0 ou o OpenID Connect 1,0.Create a support request if you find an issue where the Microsoft identity platform endpoint isn't compliant with OAuth 2.0 or OpenID Connect 1.0.

Para obter mais informações sobre o ponto de extremidade da plataforma Microsoft Identity, consulte a visão geral da plataforma Microsoft Identity.For more information about the Microsoft identity platform endpoint, see the Microsoft identity platform overview.