Biblioteca de autenticación de Azure Active Directory
Advertencia
Este contenido es el punto de conexión anterior de Azure AD v1.0. Use la Plataforma de identidad de Microsoft.
La Biblioteca de autenticación de Azure Active Directory (ADAL) versión 1.0 permite a los desarrolladores de aplicaciones autenticar a los usuarios en Active Directory (AD) local o en la nube y obtener tokens para proteger las llamadas API. ADAL facilita la autenticación para los desarrolladores a través de características como:
- Una memoria caché de tokens configurable que almacena tokens de acceso y tokens de actualización
- Actualización de tokens automática disponible cuando expira un token de acceso y un token de actualización
- Compatibilidad con las llamadas a métodos asincrónicos
Nota
¿Busca las bibliotecas Azure AD v2.0? Revise la Guía de la biblioteca MSAL.
Advertencia
La Biblioteca de autenticación de Azure Active Directory (ADAL) ha quedado en desuso. Use la Biblioteca de autenticación de Microsoft (MSAL). Si tiene aplicaciones existentes que usan ADAL, asegúrese de migrarlas a MSAL.
Bibliotecas de cliente compatibles con Microsoft
Plataforma | Biblioteca | Descargar | Código fuente | Muestra | Referencia |
---|---|---|---|---|---|
Cliente .NET, Tienda Windows, UWP, Xamarin iOS y Android | ADAL .NET v3 | NuGet | GitHub | Aplicación de escritorio | |
JavaScript | ADAL.js | GitHub | GitHub | Aplicación de una sola página | |
iOS, macOS | ADAL | GitHub | GitHub | Aplicación de iOS | |
Android | ADAL | Maven | GitHub | Aplicación para Android | JavaDocs |
Node.js | ADAL | npm | GitHub | Aplicación web para Node.js | Referencia |
Java | ADAL4J | Maven | GitHub | Aplicaciones web de Java | Referencia |
Python | ADAL | GitHub | GitHub | Aplicación web de Python | Referencia |
Bibliotecas de servidor compatibles con Microsoft
Plataforma | Biblioteca | Descargar | Código fuente | Muestra | Referencia |
---|---|---|---|---|---|
.NET | OWIN para AzureAD | NuGet | GitHub | Aplicación MVC | |
.NET | OWIN para OpenIDConnect | NuGet | GitHub | Aplicación web | |
.NET | OWIN para WS-Federation | NuGet | GitHub | Aplicación web MVC | |
.NET | Extensiones de protocolo de identidad para .NET Framework 4.5 | NuGet | GitHub | ||
.NET | Controlador JWT para .NET 4.5 | NuGet | GitHub | ||
Node.js | Azure AD Passport | npm | GitHub | API web |
Escenarios
Presentamos tres escenarios comunes para el uso de ADAL en un cliente que accede a un recurso remoto:
Autenticación de los usuarios de una aplicación cliente nativa que se ejecuta en un dispositivo
En este escenario, un desarrollador tiene un cliente móvil o una aplicación de escritorio que necesita acceso a un recurso remoto, como una API web. La API web no admite llamadas anónimas y se debe llamar en el contexto de un usuario autenticado. La API web está preconfigurada para confiar en los tokens de acceso emitidos por un inquilino de Azure AD determinado. Azure AD está preconfigurado para emitir tokens de acceso para ese recurso. Para invocar la API web desde el cliente, el desarrollador usa ADAL a fin de facilitar la autenticación con Azure AD. El modo más seguro de usar ADAL es hacer que represente la interfaz de usuario para recopilar las credenciales de usuario (se representa como una ventana del explorador).
ADAL hace que resulte fácil autenticar el usuario, obtener un token de acceso y un token de actualización de Azure AD, y luego llamar a la API web mediante el token de acceso.
Para un código de ejemplo que muestra este escenario con autenticación en Azure AD, vea Aplicación WPF cliente nativa para API web.
Autenticación de una aplicación cliente confidencial que se ejecuta en un servidor web
En este escenario, un desarrollador tiene una aplicación en ejecución en un servidor que necesita acceso a un recurso remoto, como una API web. La API no admite llamadas anónimas, por lo que debe llamarse desde un servicio autorizado. La API web está preconfigurada para confiar en los tokens de acceso emitidos por un inquilino de Azure AD determinado. Azure AD está preconfigurado para emitir tokens de acceso para ese recurso a un servicio con las credenciales del cliente (identificador y secreto de cliente). ADAL facilita la autenticación del servicio con Azure AD al devolver un token de acceso que se puede usar para llamar a la API web. ADAL también controla la administración de la duración del token de acceso almacenándolo en la caché y renovándolo cuando sea necesario. Para un código de ejemplo que muestra este escenario, vea Aplicación de consola demonio para API web.
Autenticación de una aplicación cliente confidencial que se ejecuta en un servidor web en nombre de un usuario
En este escenario, un desarrollador tiene una aplicación web en ejecución en un servidor que necesita acceso a un recurso remoto, como una API web. La API no admite llamadas anónimas, por lo que debe llamarse desde un servicio autorizado en nombre de un usuario autenticado. La API web está preconfigurada para confiar en los tokens de acceso emitidos por un inquilino de Microsoft Entra determinado, y Microsoft Entra ID está preconfigurado para emitir tokens de acceso para ese recurso a un servicio con las credenciales del cliente. Cuando el usuario se autentica en la aplicación web, la aplicación puede obtener un código de autorización para el usuario de Microsoft Entra ID. La aplicación web puede luego usar ADAL para obtener un token de acceso y un token de actualización en nombre del usuario con las credenciales de cliente y el código de autorización asociados a la aplicación de Microsoft Entra ID. Cuando la aplicación web está en posesión del token de acceso, puede llamar a la API web hasta que el token expire. Cuando el token expira, la aplicación web puede usar ADAL para obtener un nuevo token de acceso con el token de actualización que recibió anteriormente. Para un código de ejemplo que muestra este escenario, vea Cliente nativo de API web a API web.