Bibliotecas 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 de Azure AD v2.0 (MSAL)? Revise la Guía de la biblioteca MSAL.

Advertencia

La compatibilidad con la Biblioteca de autenticación de Active Directory (ADAL) finalizará en diciembre de 2022. Las aplicaciones que usan ADAL en las versiones existentes del sistema operativo seguirán funcionando, pero no recibirán soporte técnico ni actualizaciones de seguridad. Sin actualizaciones de seguridad continuadas, las aplicaciones que usan ADAL se volverán cada vez más vulnerables a los patrones de ataque de seguridad más recientes. Si desea obtener más información, consulte Migración de aplicaciones a la Biblioteca de autenticación de Microsoft (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 Referencia
JavaScript ADAL.js GitHub GitHub Aplicación de una sola página
iOS, macOS ADAL GitHub GitHub Aplicación de iOS Referencia
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 Azure determinado, y Azure AD 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 Azure AD. 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 Azure AD. 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.

Consulte también