Biblioteca de Autenticação do Azure Active Directory

Aviso

Este conteúdo destina-se ao ponto final Azure AD v1.0 mais antigo. Utilize o plataforma de identidades da Microsoft para novos projetos.

A Biblioteca de Autenticação do Azure Active Directory (ADAL) v1.0 permite aos programadores de aplicações autenticar os utilizadores na cloud ou Active Directory no local (AD) e obter tokens para proteger chamadas à API. A ADAL facilita a autenticação para os programadores através de funcionalidades como:

  • Cache de token configurável que armazena tokens de acesso e tokens de atualização
  • Atualização automática do token quando um token de acesso expira e um token de atualização está disponível
  • Suporte para chamadas de métodos assíncronos

Nota

Está à procura das bibliotecas Azure AD v2.0? Veja o guia da biblioteca MSAL.

Aviso

A Biblioteca de Autenticação do Azure Active Directory (ADAL) foi preterida. Utilize a Biblioteca de Autenticação da Microsoft (MSAL). Se tiver aplicações existentes que utilizam a ADAL, certifique-se de que as migra para a MSAL.

Bibliotecas de Cliente suportadas pela Microsoft

Plataforma Biblioteca Download Código Fonte Sample Referência
Cliente .NET, Loja Windows, UWP, Xamarin iOS e Android .NET v3 da ADAL NuGet GitHub Aplicação de ambiente de trabalho
JavaScript ADAL.js GitHub GitHub Aplicação de página única
iOS, macOS ADAL GitHub GitHub Aplicação iOS
Android ADAL Maven GitHub Aplicação Android JavaDocs
Node.js ADAL npm GitHub Aplicação Web Node.js Referência
Java ADAL4J Maven GitHub Aplicação Web Java Referência
Python ADAL GitHub GitHub Aplicação Web Python Referência

Bibliotecas de Servidor suportadas pela Microsoft

Plataforma Biblioteca Download Código Fonte Sample Referência
.NET OWIN para a AzureAD NuGet GitHub Aplicação MVC
.NET OWIN para OpenIDConnect NuGet GitHub Aplicação Web
.NET OWIN para WS-Federation NuGet GitHub Aplicação Web MVC
.NET Extensões do Protocolo de Identidade para .NET 4.5 NuGet GitHub
.NET Processador JWT para .NET 4.5 NuGet GitHub
Node.js Passaporte do Azure AD npm GitHub API Web

Cenários

Eis três cenários comuns para utilizar a ADAL num cliente que acede a um recurso remoto:

Autenticar utilizadores de uma aplicação cliente nativa em execução num dispositivo

Neste cenário, um programador tem um cliente móvel ou uma aplicação de ambiente de trabalho que precisa de aceder a um recurso remoto, como uma API Web. A API Web não permite chamadas anónimas e tem de ser chamada no contexto de um utilizador autenticado. A API Web está pré-configurada para confiar nos tokens de acesso emitidos por um inquilino Azure AD específico. Azure AD está pré-configurado para emitir tokens de acesso para esse recurso. Para invocar a API Web do cliente, o programador utiliza a ADAL para facilitar a autenticação com Azure AD. A forma mais segura de utilizar a ADAL é fazê-la compor a interface de utilizador para recolher credenciais de utilizador (composta como janela do browser).

A ADAL facilita a autenticação do utilizador, a obtenção de um token de acesso e o token de atualização a partir de Azure AD e, em seguida, chamar a API Web com o token de acesso.

Para obter um exemplo de código que demonstre este cenário com a autenticação para Azure AD, veja Aplicação WPF de Cliente Nativo para a API Web.

Autenticar uma aplicação cliente confidencial em execução num servidor Web

Neste cenário, um programador tem uma aplicação em execução num servidor que precisa de aceder a um recurso remoto, como uma API Web. A API Web não permite chamadas anónimas, pelo que tem de ser chamada a partir de um serviço autorizado. A API Web está pré-configurada para confiar nos tokens de acesso emitidos por um inquilino Azure AD específico. Azure AD está pré-configurado para emitir tokens de acesso para esse recurso para um serviço com credenciais de cliente (ID de cliente e segredo). A ADAL facilita a autenticação do serviço com Azure AD devolver um token de acesso que pode ser utilizado para chamar a API Web. A ADAL também processa a gestão da duração do token de acesso colocando-o em cache e renovando-o conforme necessário. Para obter um exemplo de código que demonstre este cenário, veja Aplicação da consola da Daemon para a API Web.

Autenticar uma aplicação cliente confidencial em execução num servidor, em nome de um utilizador

Neste cenário, um programador tem uma aplicação Web em execução num servidor que precisa de aceder a um recurso remoto, como uma API Web. A API Web não permite chamadas anónimas, pelo que tem de ser chamada a partir de um serviço autorizado em nome de um utilizador autenticado. A API Web está pré-configurada para confiar nos tokens de acesso emitidos por um inquilino de Microsoft Entra específico e Microsoft Entra ID está pré-configurado para emitir tokens de acesso desse recurso a um serviço com credenciais de cliente. Assim que o utilizador for autenticado na aplicação Web, a aplicação pode obter um código de autorização para o utilizador a partir de Microsoft Entra ID. Em seguida, a aplicação Web pode utilizar a ADAL para obter um token de acesso e atualizar o token em nome de um utilizador através do código de autorização e das credenciais de cliente associadas à aplicação a partir de Microsoft Entra ID. Assim que a aplicação Web estiver na posse do token de acesso, pode chamar a API Web até o token expirar. Quando o token expirar, a aplicação Web pode utilizar a ADAL para obter um novo token de acesso com o token de atualização que foi recebido anteriormente. Para obter um exemplo de código que demonstre este cenário, veja Cliente nativo para API Web para API Web.

Consulte também