Obsługa usług AD FS

Active Directory Federation Services (AD FS) w Windows Server umożliwia dodawanie uwierzytelniania opartego na protokole OpenID Connect i uwierzytelniania OAuth 2.0 do opracowywanych aplikacji. Te aplikacje mogą uwierzytelniać użytkowników bezpośrednio w usługach AD FS. Aby uzyskać więcej informacji, zapoznaj się ze scenariuszami usług AD FS dla deweloperów.

Zwykle istnieją dwa sposoby uwierzytelniania w usługach AD FS:

  • Biblioteka MSAL łączy się z Microsoft Entra ID, która następnie sfederuje się z usługami AD FS.
  • Biblioteka MSAL łączy się bezpośrednio z urzędem usług AD FS.

Biblioteka MSAL4J obsługuje oba te przepływy.

Biblioteka MSAL łączy się z Microsoft Entra ID, która następnie sfederuje się z usługami AD FS

Biblioteka MSAL4J obsługuje łączenie z usługą Microsoft Entra ID, która umożliwia logowanie użytkowników zarządzanych (użytkowników zarządzanych w usłudze Microsoft Entra ID) lub użytkowników federowanych (użytkowników zarządzanych przez innego dostawcę tożsamości, takiego jak AD FS). MSAL4J nie uwzględnia faktu, że użytkownicy są sfederowani. Jeśli o to chodzi, komunikuje się z Microsoft Entra ID.

Urząd używany w tym przypadku to zwykły urząd (nazwa hosta urzędu + dzierżawa, wspólne lub organizacje).

Interakcyjne uzyskiwanie tokenu dla użytkowników federacyjnych

Gdy wywołasz metodę AcquireToken z parametrami AuthorizationCodeParameters lub DeviceCodeParameters, sposób obsługi przez użytkownika jest zwykle następujący:

  1. Użytkownik wprowadza swój identyfikator konta.
  2. Microsoft Entra ID na krótko wyświetla komunikat „Przenosimy Cię na stronę Twojej organizacji”. Użytkownik jest przekierowywany do strony logowania dostawcy tożsamości. Strona logowania jest zwykle dostosowywana przy użyciu logo organizacji.
  3. Obsługiwane wersje usług AD FS w tym scenariuszu federacyjnym to USŁUGI AD FS w wersji 2, AD FS w wersji 3 (Windows Server 2012 R2) i AD FS v4 (AD FS 2016).

MSAL łączy się bezpośrednio z urzędem AD FS

Biblioteka MSAL4J zapewnia obsługę bezpośredniego uwierzytelniania za pomocą usług AD FS 2019. W takim przypadku podczas inicjowania klienta w MSAL4J można podać specyficzny dla usługi ADFS adres URL autorytetu. Wartość pola authority powinna wyglądać mniej więcej tak: https://adfs.contoso.com/adfs.

Uzyskiwanie tokenu za pomocą metody AcquireToken z parametrami IntegratedWindowsAuthenticationParameters lub UsernamePasswordParameters

Podczas uzyskiwania tokenu za pomocą metody AcquireToken z użyciem IntegratedWindowsAuthenticationParameters lub UsernamePasswordParameters biblioteka MSAL4J na podstawie nazwy użytkownika określa, z którym dostawcą tożsamości należy się skontaktować. Biblioteka MSAL4J otrzymuje token SAML po nawiązaniu kontaktu z dostawcą tożsamości. Biblioteka MSAL4J następnie przekazuje token SAML do usługi Microsoft Entra ID jako asercję użytkownika (podobnie jak w przepływie w imieniu użytkownika), aby uzyskać token JWT.