Freigeben über


Konfigurieren von AD FS zum Authentifizieren von Benutzern, die in LDAP-Verzeichnissen in Windows Server 2016 oder höher gespeichert sind

Im folgenden Thema wird die Konfiguration beschrieben, die erforderlich ist, damit Ihre AD FS-Infrastruktur Benutzer authentifiziert, deren Identitäten in LDAP-kompatiblen Verzeichnissen (Lightweight Directory Access Protocol) gespeichert sind.

In vielen Organisationen bestehen Identitätsverwaltungslösungen aus einer Kombination aus Active Directory-, AD LDS- oder LDAP-Verzeichnissen von Drittanbietern. Mit dem Hinzufügen der AD FS-Unterstützung für die Authentifizierung von Benutzern, die in LDAP v3-kompatiblen Verzeichnissen gespeichert sind, können Sie von dem gesamten AD FS-Featuresatz der Unternehmensklasse profitieren, unabhängig davon, wo Ihre Benutzeridentitäten gespeichert sind. AD FS unterstützt jedes LDAP v3-kompatible Verzeichnis.

Hinweis

Einige der AD FS-Features umfassen einmaliges Anmelden (Single Sign-On, SSO), Geräteauthentifizierung, flexible Richtlinien für bedingten Zugriff, Unterstützung von praktisch überall aus über die Integration mit dem Webanwendungsproxy und einen nahtlosen Partnerverbund mit Microsoft Entra, mit dem Sie und Ihre Benutzer wiederum die Cloud nutzen können, einschließlich Office 365 und anderen SaaS-Anwendungen. Weitere Informationen finden Sie unter Active Directory-Verbunddienste (Übersicht).

Damit AD FS Benutzer aus einem LDAP-Verzeichnis authentifiziert, müssen Sie dieses LDAP-Verzeichnis mit Ihrer AD FS-Farm verbinden, indem Sie eine lokale Anspruchsanbietervertrauensstellung erstellen. Ein lokales Anspruchsanbieter-Vertrauensobjekt ist ein Vertrauensobjekt, das ein LDAP-Verzeichnis in Ihrer AD FS-Farm darstellt. Ein vertrauensbasiertes Objekt für lokale Ansprüche besteht aus einer Vielzahl von Bezeichnern, Namen und Regeln, die dieses LDAP-Verzeichnis für den lokalen Verbunddienst identifizieren.

Sie können mehrere LDAP-Verzeichnisse mit jeweils eigener Konfiguration innerhalb derselben AD FS-Farm unterstützen, indem Sie mehrere lokale Anspruchsanbietervertrauensstellungen hinzufügen. Darüber hinaus können AD DS-Gesamtstrukturen, denen die Gesamtstruktur, in der die AD FS-Instanz sich befindet, nicht vertraut, auch als Vertrauensstellungen eines lokalen Anbieters modelliert werden. Sie können lokale Anspruchsanbietervertrauensstellungen mithilfe von Windows PowerShell erstellen.

LDAP-Verzeichnisse (lokale Anspruchsanbietervertrauensstellungen) können mit AD-Verzeichnissen (Anspruchsanbietervertrauensstellungen) auf demselben AD FS-Server in derselben AD FS-Farm koexistieren, daher ist eine einzelne Instanz von AD FS in der Lage, den Zugriff für Benutzer zu authentifizieren und zu autorisieren, die sowohl in AD- als auch in Nicht-AD-Verzeichnissen gespeichert sind.

Nur formularbasierte Authentifizierung wird für die Authentifizierung von Benutzern aus LDAP-Verzeichnissen unterstützt. Zertifikatbasierte und integrierte Windows-Authentifizierung werden für die Authentifizierung von Benutzern in LDAP-Verzeichnissen nicht unterstützt.

Alle passiven Autorisierungsprotokolle, die von AD FS unterstützt werden, einschließlich SAML, WS-Federation und OAuth, werden auch für Identitäten unterstützt, die in LDAP-Verzeichnissen gespeichert sind.

Das WS-Trust-Autorisierungsprotokoll wird auch für Identitäten unterstützt, die in LDAP-Verzeichnissen gespeichert sind.

Konfigurieren von AD FS zum Authentifizieren von Benutzern, die in einem LDAP-Verzeichnis gespeichert sind

Um Ihre AD FS-Farm so zu konfigurieren, dass Benutzer aus einem LDAP-Verzeichnis authentifiziert werden, können Sie die folgenden Schritte ausführen:

  1. Konfigurieren Sie zunächst eine Verbindung mit Ihrem LDAP-Verzeichnis mithilfe des Cmdlets New-AdfsLdapServerConnection :

    $DirectoryCred = Get-Credential
    $vendorDirectory = New-AdfsLdapServerConnection -HostName dirserver -Port 50000 -SslMode None -AuthenticationMethod Basic -Credential $DirectoryCred
    

    Hinweis

    Es wird empfohlen, für jeden LDAP-Server, mit dem Sie eine Verbindung herstellen möchten, ein neues Verbindungsobjekt zu erstellen. AD FS kann eine Verbindung zu mehreren Replikat-LDAP-Servern herstellen und bei Ausfall eines bestimmten LDAP-Servers automatisch umschalten. Für einen solchen Fall können Sie eine AdfsLdapServerConnection für jeden dieser Replikat-LDAP-Server erstellen und dann das Array von Verbindungsobjekten mithilfe des Parameters "-LdapServerConnection " des Cmdlets "Add-AdfsLocalClaimsProviderTrust " hinzufügen.

    ANMERKUNG: Ihr Versuch, Get-Credential zu verwenden und einen DN und ein Kennwort einzugeben, das zum Binden an eine LDAP-Instanz verwendet werden soll, kann aufgrund der Anforderungen der Benutzeroberfläche an bestimmte Eingabeformate wie z. B. Domäne\Benutzername oder user@domain.tld fehlschlagen. Sie können stattdessen das Cmdlet ConvertTo-SecureString wie folgt verwenden (im folgenden Beispiel wird davon ausgegangen, dass uid=admin,ou=system als DN der Anmeldeinformationen verwendet wird, die für die Bindung an die LDAP-Instanz verwendet werden):

    $ldapuser = ConvertTo-SecureString -string "uid=admin,ou=system" -asplaintext -force
    $DirectoryCred = Get-Credential -username $ldapuser -Message "Enter the credentials to bind to the LDAP instance:"
    

    Geben Sie dann das Kennwort für die uid=admin ein, und führen Sie die restlichen Schritte aus.

  2. Als Nächstes können Sie den optionalen Schritt der Zuordnung von LDAP-Attributen zu den vorhandenen AD FS-Ansprüchen mithilfe des Cmdlets New-AdfsLdapAttributeToClaimMapping ausführen. Im folgenden Beispiel ordnen Sie den AD FS-Ansprüchen die LDAP-Attribute „givenName“, „Surname“ und „CommonName“ hinzu:

    #Map given name claim
    $GivenName = New-AdfsLdapAttributeToClaimMapping -LdapAttribute givenName -ClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"
    # Map surname claim
    $Surname = New-AdfsLdapAttributeToClaimMapping -LdapAttribute sn -ClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname"
    # Map common name claim
    $CommonName = New-AdfsLdapAttributeToClaimMapping -LdapAttribute cn -ClaimType "http://schemas.xmlsoap.org/claims/CommonName"
    

    Diese Zuordnung erfolgt, um Attribute aus dem LDAP-Speicher als Ansprüche in AD FS verfügbar zu machen, um Regeln für die bedingte Zugriffssteuerung in AD FS zu erstellen. Darüber hinaus ermöglicht AD FS das Arbeiten mit benutzerdefinierten Schemas in LDAP-Speicher, indem es eine einfache Möglichkeit zum Zuordnen von LDAP-Attributen zu Ansprüchen bietet.

  3. Schließlich müssen Sie den LDAP-Speicher bei AD FS als lokale Anspruchsanbietervertrauensstellung registrieren, indem Sie das Cmdlet "Add-AdfsLocalClaimsProviderTrust " verwenden:

    Add-AdfsLocalClaimsProviderTrust -Name "Vendors" -Identifier "urn:vendors" -Type Ldap
    
    # Connection info
    -LdapServerConnection $vendorDirectory
    
    # How to locate user objects in directory
    -UserObjectClass inetOrgPerson -UserContainer "CN=VendorsContainer,CN=VendorsPartition" -LdapAuthenticationMethod Basic
    
    # Claims for authenticated users
    -AnchorClaimLdapAttribute mail -AnchorClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn" -LdapAttributeToClaimMapping @($GivenName, $Surname, $CommonName)
    
    # General claims provider properties
    -AcceptanceTransformRules "c:[Type != ''] => issue(claim=c);" -Enabled $true
    
    # Optional - supply user name suffix if you want to use Ws-Trust
    -OrganizationalAccountSuffix "vendors.contoso.com"
    

    Im obigen Beispiel erstellen Sie Vertrauensstellung eines lokalen Anbieters mit dem Namen „Vendors“. Sie geben Verbindungsinformationen für AD FS an, um eine Verbindung mit dem LDAP-Verzeichnis herzustellen, das durch diese lokale Anspruchsanbietervertrauensstellung dargestellt wird, indem Sie $vendorDirectory dem -LdapServerConnection Parameter zuweisen. Beachten Sie, dass Sie in Schritt 1 eine Verbindungszeichenfolge zugewiesen $vendorDirectory haben, die beim Herstellen einer Verbindung mit Ihrem spezifischen LDAP-Verzeichnis verwendet werden soll. Schließlich geben Sie an, dass die $GivenName, $Surname und $CommonName LDAP-Attribute (die Sie den AD FS-Ansprüchen zugeordnet haben) für die bedingte Zugriffssteuerung verwendet werden sollen, einschließlich mehrstufiger Authentifizierungsrichtlinien und Ausstellungsautorisierungsregeln sowie für die Ausstellung über Ansprüche in AD FS ausgestellten Sicherheitstoken. Um aktive Protokolle wie WS-Trust mit AD FS zu verwenden, müssen Sie den Parameter „OrganizationalAccountSuffix“ angeben, mit dem AD FS in der Lage ist, bei der Verarbeitung einer aktiven Autorisierungsanforderung zwischen Vertrauensstellungen lokaler Anbieter zu unterscheiden.

Siehe auch

AD FS-Operationen