Compatibilidad con ADFS

Servicios de federación de Active Directory (AD FS) (AD FS) en Windows Server le permite agregar la autenticación y autorización basadas en OpenID Connect y OAuth 2.0 a las aplicaciones que está desarrollando. Esas aplicaciones pueden autenticar a los usuarios directamente en AD FS. Para obtener más información, lea Escenarios de AD FS para desarrolladores.

Normalmente hay dos maneras de autenticarse en AD FS:

  • MSAL se conecta a Microsoft Entra ID, que después se federa a AD FS.
  • MSAL se conecta directamente a una autoridad de AD FS.

MSAL4J admite ambos flujos.

MSAL se conecta a Microsoft Entra ID, que después se federa a AD FS.

MSAL4J admite la conexión a Microsoft Entra ID, que inicia sesión con usuarios administrados (usuarios administrados en Microsoft Entra ID) o usuarios federados (usuarios administrados por otro proveedor de identidades, como AD FS). MSAL4J no conoce el hecho de que los usuarios están federados. En este sentido, se comunica con Microsoft Entra ID.

La autoridad que usa en este caso es la habitual (nombre de host de la autoridad + inquilino, common u organizations).

Adquisición de un token de forma interactiva para usuarios federados

Cuando se llama a AcquireToken con AuthorizationCodeParameters o DeviceCodeParameters, la experiencia del usuario suele ser:

  1. El usuario escribe su identificador de cuenta.
  2. Microsoft Entra ID muestra brevemente el mensaje "Llevarle a la página de la organización". El usuario se redirige a la página de inicio de sesión del proveedor de identidades. La página de inicio de sesión normalmente se personaliza con el logotipo de la organización.
  3. Las versiones de AD FS admitidas en este escenario federado son AD FS v2, AD FS v3 (Windows Server 2012 R2) y AD FS v4 (AD FS 2016).

MSAL se conecta directamente a una autoridad de AD FS

MSAL4J proporciona compatibilidad para autenticarse directamente con AD FS 2019. En este caso, puede proporcionar la dirección URL de autoridad específica de ADFS a MSAL4J al inicializar el cliente. El valor de autoridad debe tener un aspecto similar a https://adfs.contoso.com/adfs.

Obtención de un token mediante AcquireToken con IntegratedWindowsAuthenticationParameters o UsernamePasswordParameters

Al adquirir un token mediante AcquireToken con IntegratedWindowsAuthenticationParameters o UsernamePasswordParameters, MSAL4J obtiene, en función del nombre de usuario, el proveedor de identidades con el que debe ponerse en contacto. MSAL4J recibe un token SAML después de ponerse en contacto con el proveedor de identidades. A continuación, MSAL4J proporciona el token SAML a Microsoft Entra ID como una aserción de usuario (similar al flujo «en nombre de») para obtener un JWT.