ADFS-ondersteuning

Active Directory Federation Services (AD FS) in Windows Server kunt u openID Connect en OAuth 2.0 gebaseerde verificatie en autorisatie toevoegen aan toepassingen die u ontwikkelt. Deze toepassingen kunnen gebruikers rechtstreeks verifiëren tegen AD FS. Lees AD FS-scenario's voor ontwikkelaars voor meer informatie.

Er zijn meestal twee manieren om te verifiëren tegen AD FS:

  • MSAL maakt verbinding met Microsoft Entra ID, die vervolgens federatief is met AD FS.
  • MSAL maakt rechtstreeks verbinding met een AD FS-instantie.

MSAL4J ondersteunt beide stromen.

MSAL maakt verbinding met Microsoft Entra ID, die vervolgens federatief is met AD FS

MSAL4J ondersteunt het maken van verbinding met Microsoft Entra ID, die zich aanmeldt bij beheerde gebruikers (gebruikers die worden beheerd in Microsoft Entra ID) of federatieve gebruikers (gebruikers die worden beheerd door een andere id-provider, zoals AD FS). MSAL4J weet niet dat gebruikers federatief zijn. Wat het betreft, praat het met Microsoft Entra ID.

De instantie die u in dit geval gebruikt, is de gebruikelijke instantie (instantiehostnaam + tenant, algemeen of organisaties).

Een token interactief verkrijgen voor federatieve gebruikers

Wanneer u het AcquireToken aanroept met AuthorizationCodeParameters of DeviceCodeParameters, is de gebruikerservaring doorgaans:

  1. De gebruiker voert zijn account-id in.
  2. Microsoft Entra ID geeft kort het bericht 'U wordt doorgestuurd naar de pagina van uw organisatie' weer. De gebruiker wordt omgeleid naar de aanmeldingspagina van de id-provider. De aanmeldingspagina wordt meestal aangepast met het logo van de organisatie.
  3. Ondersteunde AD FS-versies in dit federatieve scenario zijn AD FS v2, AD FS v3 (Windows Server 2012 R2) en AD FS v4 (AD FS 2016).

MSAL maakt rechtstreeks verbinding met een AD FS-instantie

MSAL4J biedt ondersteuning voor rechtstreekse verificatie met AD FS 2019. In dit geval kunt u de ADFS-specifieke instantie-URL opgeven voor MSAL4J bij het initialiseren van de client. De autoriteitswaarde moet er ongeveer als https://adfs.contoso.com/adfsvolgt uitzien.

Een token verkrijgen met AcquireToken met IntegratedWindowsAuthenticationParameters of UsernamePasswordParameters

Wanneer met AcquireToken met IntegratedWindowsAuthenticationParameters of UsernamePasswordParameters een token wordt verkregen, bepaalt MSAL4J op basis van de gebruikersnaam met welke identiteitsprovider contact moet worden opgenomen. MSAL4J ontvangt een SAML-token nadat u contact hebt opgenomen met de id-provider. MSAL4J biedt vervolgens het SAML-token aan Microsoft Entra ID als een gebruikersverklaring (vergelijkbaar met de on-behalf-of-flow) om een JWT terug te krijgen.