Biblioteca de Autenticação do Ative Directory do Azure
Advertência
Este conteúdo destina-se ao ponto de extremidade mais antigo do Azure AD v1.0. Use o de plataforma de identidade da Microsoft para novos projetos.
A Biblioteca de Autenticação do Ative Directory do Azure (ADAL) v1.0 permite que os desenvolvedores de aplicativos autentiquem usuários no Ative Directory (AD) local ou na nuvem e obtenham tokens para proteger chamadas de API. A ADAL facilita a autenticação para desenvolvedores por meio de recursos como:
- Cache de tokens configurável que armazena tokens de acesso e tokens de atualização
- Atualização automática de token quando um token de acesso expira e um token de atualização está disponível
- Suporte para chamadas de método assíncronas
Observação
Procurando as bibliotecas do Azure AD v2.0? Confira o guia da biblioteca MSAL.
Advertência
A Biblioteca de Autenticação do Active Directory do Azure (ADAL) foi preterida. Use o Microsoft Authentication Library (MSAL). Se você tiver aplicativos existentes que usam ADAL, certifique-se de migrá-los para o MSAL.
Bibliotecas de cliente suportadas pela Microsoft
Plataforma | Biblioteca | Baixar | Código Fonte | Exemplo | Referência |
---|---|---|---|---|---|
Cliente .NET, Windows Store, UWP, Xamarin iOS e Android | ADAL .NET v3 | NuGet | GitHub | Aplicação para computador | |
Javascript | ADAL.js | GitHub | GitHub | de aplicativo de página única | |
iOS, macOS | ADAL | GitHub | GitHub | Aplicação iOS | |
Androide | ADAL | Maven | GitHub | Aplicação Android | JavaDocs |
Node.js | ADAL | npm | GitHub | Node.js da aplicação Web | Referência |
Java | ADAL4J | Maven | GitHub | do aplicativo Web Java | Referência |
Python | ADAL | GitHub | GitHub | do aplicativo Web Python | Referência |
Bibliotecas de servidor suportadas pela Microsoft
Plataforma | Biblioteca | Baixar | Código Fonte | Exemplo | Referência |
---|---|---|---|---|---|
.NET | OWIN para AzureAD | NuGet | GitHub | MVC App | |
.NET | OWIN para OpenIDConnect | NuGet | GitHub | Aplicação Web | |
.NET | OWIN para WS-Federation | NuGet | GitHub | MVC Web App | |
.NET | Extensões de protocolo de identidade para .NET 4.5 | NuGet | GitHub | ||
.NET | Manipulador JWT para .NET 4.5 | NuGet | GitHub | ||
Node.js | Azure AD Passport | npm | GitHub | API Web |
Cenários
Aqui estão três cenários comuns para usar a ADAL em um cliente que acessa um recurso remoto:
Autenticando usuários de um aplicativo cliente nativo em execução em um dispositivo
Nesse cenário, um desenvolvedor tem um cliente móvel ou aplicativo de desktop que precisa acessar um recurso remoto, como uma API da Web. A API da Web não permite chamadas anônimas e deve ser chamada no contexto de um usuário autenticado. A API Web é pré-configurada para confiar em tokens de acesso emitidos por um locatário específico do Azure AD. O Azure AD está pré-configurado para emitir tokens de acesso para esse recurso. Para invocar a API Web do cliente, o desenvolvedor usa a ADAL para facilitar a autenticação com o Azure AD. A maneira mais segura de usar a ADAL é fazer com que ela renderize a interface do usuário para coletar credenciais do usuário (renderizadas como janela do navegador).
A ADAL facilita a autenticação do usuário, a obtenção de um token de acesso e um token de atualização do Azure AD e, em seguida, chama a API Web usando o token de acesso.
Para obter um exemplo de código que demonstra esse cenário usando a autenticação para o Azure AD, consulte Native Client WPF Application to Web API.
Autenticando um aplicativo cliente confidencial em execução em um servidor Web
Nesse cenário, um desenvolvedor tem um aplicativo em execução em um servidor que precisa acessar um recurso remoto, como uma API da Web. A API da Web não permite chamadas anônimas, por isso deve ser chamada de um serviço autorizado. A API Web é pré-configurada para confiar em tokens de acesso emitidos por um locatário específico do Azure AD. O Azure AD está pré-configurado para emitir tokens de acesso para esse recurso para um serviço com credenciais de cliente (ID do cliente e segredo). A ADAL facilita a autenticação do serviço com o Azure AD retornando um token de acesso que pode ser usado para chamar a API Web. A ADAL também lida com o gerenciamento do tempo de vida do token de acesso, armazenando-o em cache e renovando-o conforme necessário. Para obter um exemplo de código que demonstra esse cenário, consulte Daemon console Application to Web API.
Autenticando um aplicativo cliente confidencial em execução em um servidor, em nome de um usuário
Nesse cenário, um desenvolvedor tem um aplicativo Web em execução em um servidor que precisa acessar um recurso remoto, como uma API da Web. A API da Web não permite chamadas anônimas, portanto, deve ser chamada de um serviço autorizado em nome de um usuário autenticado. A API da Web é pré-configurada para confiar em tokens de acesso emitidos por um locatário específico do Microsoft Entra e a ID do Microsoft Entra é pré-configurada para emitir tokens de acesso para esse recurso para um serviço com credenciais de cliente. Depois que o usuário é autenticado no aplicativo Web, o aplicativo pode obter um código de autorização para o usuário do Microsoft Entra ID. O aplicativo Web pode usar a ADAL para obter um token de acesso e atualizar token em nome de um usuário usando o código de autorização e as credenciais de cliente associadas ao aplicativo do Microsoft Entra ID. Quando o aplicativo Web estiver em posse do token de acesso, ele poderá chamar a API da Web até que o token expire. Quando o token expira, o aplicativo Web pode usar a ADAL para obter um novo token de acesso usando o token de atualização recebido anteriormente. Para obter um exemplo de código que demonstra esse cenário, consulte Native client to Web API to Web API.