Azure Active Directory como proveedor de identidades de tu aplicación, pero sólo para un conjunto de usuarios

Si trabajas con Active Directory, y necesitas un proveedor de identidades para tu aplicación, Azure Active Directory es una opción más que interesante y súper completa. Si además trabajas con .NET la forma de configurarlo es más que sencilla, ya que puedes hacerlo durante la creación de la aplicación a través del botón Change Authentication:

ASP.NET Web Application – Change Authentication

Esto creará un registro para tu aplicación en tu Azure Active Directory con ciertos valores por defecto.

Azure Active Directory – App registrations

Una de las preguntas que me llegó esta semana, y es más que interesante, es la siguiente:

“Tenemos una aplicación con autenticación basada en Azure Active Directory. Sin embargo, queremos que a dicha aplicación sólo tenga acceso un conjunto de usuarios del directorio. Seguimos los pasos de creación del registro de la aplicación en Azure Active Directory y modificamos a Yes la opción User assigment required?

AAD – Enterprise Application – User assignment required – Yes

“Aunque ya tenemos registrados los usuarios que queremos que accedan a la aplicación (apartado Users and groups) no les es posible, recibiendo este mensaje:”

AAD – AADWebApp – Need admin approval

Lo que quiere decir este mensajes es que la aplicación necesita permisos para acceder al directorio activo de Azure y sólo un administrador puede dar ese consentimiento. La solución es sencilla y sólo es necesario hacerlo una vez: accede con un Global Admin a tu Azure Active Directory > App registrations > Tu aplicación > Settings > Required permissions y haz clic en Grant permissions sobre Windows Azure Active Directory.

AAD – Registered app – Settings – Required permissions – Grant permissions

Si vuelves a probar con el mismo usuario verás que ya puede acceder sin problemas y tendrás Azure Active Directory como proveedor de identidad, limitado a un conjunto de usuarios de tu directorio.

¡Saludos!