Verbundauthentifizierung und AD DS-Ansprüche in AD FS
Windows Server 2012 verbessert die Kerberos-Authentifizierung durch Einführung einer zusammengesetzten Authentifizierung. Bei der zusammengesetzten Authentifizierung kann eine Kerberos-TGS-Anforderung (Ticket-Granting Service) zwei Identitäten enthalten:
- Identität des Benutzers
- Identität des Geräts des Benutzers
Unter Windows wird die zusammengesetzte Authentifizierung durch eine Erweiterung von Kerberos FAST (Flexible Authentication Secure Tunneling) bzw. Kerberos-Schutz erreicht.
In AD FS 2012 und höheren Versionen können von AD DS ausgestellte Benutzer- oder Geräteansprüche verwendet werden, die sich in einem Kerberos-Authentifizierungsticket befinden. In früheren Versionen von AD FS konnte die Anspruchs-Engine nur Benutzer- und Gruppensicherheits-IDs (SIDs) aus Kerberos lesen. Anspruchsinformationen innerhalb eines Kerberos-Tickets konnten nicht gelesen werden.
Sie können eine umfassendere Zugriffssteuerung für Verbundanwendungen erreichen, indem Sie in den Active Directory-Verbunddiensten (AD FS) Benutzer- und Geräteansprüche zusammen verwenden, die von Active Directory Domain Services (AD DS) ausgestellt werden.
Anforderungen
Die Computer, die auf Verbundanwendungen zugreifen, müssen sich mithilfe der integrierten Windows-Authentifizierung bei AD FS authentifizieren.
- Die integrierte Windows-Authentifizierung ist nur verfügbar, wenn eine Verbindung mit den Back-End-AD FS-Servern besteht.
- Zum Abrufen des Verbunddienstnamens müssen Computer in der Lage sein, die Back-End-AD FS-Server zu erreichen.
- AD FS-Server müssen die integrierte Windows-Authentifizierung als primäre Authentifizierungsmethode in den Intraneteinstellungen anbieten.
Die Richtlinie Unterstützung des Kerberos-Clients für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz muss auf alle Computer angewendet werden, die auf Verbundanwendungen zugreifen, die durch zusammengesetzte Authentifizierung geschützt werden. Dies gilt für Szenarien mit einzelnen oder mehreren Gesamtstrukturen.
In der Domäne, in der die AD FS-Server gehostet werden, muss die Richtlinieneinstellung Unterstützung des Kerberos-Domänencontrollers für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz auf die Domänencontroller angewendet werden.
Schritte zum Konfigurieren von AD FS unter Windows Server 2012 R2
Führen Sie die folgenden Schritte aus, um die zusammengesetzte Authentifizierung und Ansprüche zu konfigurieren.
Schritt 1: Aktivieren der Unterstützung des Kerberos-Domänencontrollers für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz in der Standardrichtlinie für Domänencontroller
- Wählen Sie im Server-Manager unter „Extras“ die Option Gruppenrichtlinienverwaltung aus.
- Navigieren Sie nach unten zu Standarddomänenrichtlinie, klicken Sie mit der rechten Maustaste darauf, und wählen Sie Bearbeiten aus.
- Erweitern Sie im Gruppenrichtlinienverwaltungs-Editor unter Computerkonfiguration nacheinander die Einträge Richtlinien, Administrative Vorlagen und System, und wählen Sie KDC aus.
- Doppelklicken Sie im rechten Bereich auf Unterstützung des Kerberos-Domänencontrollers für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz.
- Legen Sie im neuen Dialogfeld die Unterstützung des Kerberos-Domänencontrollers für Ansprüche auf Aktiviert fest.
- Wählen Sie unter „Optionen“ den Eintrag Unterstützt aus dem Dropdownmenü aus, und klicken Sie dann auf Übernehmen und OK.
Schritt 2: Aktivieren der Unterstützung des Kerberos-Clients für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz auf Computern, die auf Verbundanwendungen zugreifen
- Erweitern Sie in einer Gruppenrichtlinie, die auf die Computer mit Zugriff auf Verbundanwendungen angewendet wird, im Gruppenrichtlinienverwaltungs-Editor unter Computerkonfiguration nacheinander die Einträge Richtlinien, Administrative Vorlagen und System, und wählen Sie Kerberos aus.
- Doppelklicken Sie im rechten Bereich des Gruppenrichtlinienverwaltungs-Editors auf Unterstützung des Kerberos-Clients für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz.
- Legen Sie im neuen Fenster des Dialogfelds die Unterstützung des Kerberos-Clients auf Aktiviert fest, und klicken Sie auf Übernehmen und OK.
- Schließen Sie den Gruppenrichtlinienverwaltungs-Editor.
Schritt 3: Sicherstellen, dass die AD FS-Server aktualisiert wurden
Sie müssen sicherstellen, dass die folgenden Updates auf Ihren AD FS-Servern installiert sind.
Aktualisieren | BESCHREIBUNG |
---|---|
KB2919355 | Kumulatives Sicherheitsupdate (enthält KB2919355, KB2932046, KB2934018, KB2937592, KB2938439). |
KB2959977 | Update für Server 2012 R2. |
Hotfix 3052122 | Dieses Update fügt Unterstützung für zusammengesetzte ID-Ansprüche in den Active Directory-Verbunddiensten hinzu. |
Schritt 4: Konfigurieren des primären Authentifizierungsanbieters
Legen Sie den primären Authentifizierungsanbieter für die AD FS-Intraneteinstellungen auf Windows-Authentifizierung fest.
Wählen Sie in der AD FS-Verwaltung unter Authentifizierungsrichtlinien die Option Primäre Authentifizierung aus, und klicken Sie unter Globale Einstellungen auf Bearbeiten.
Wählen Sie im Dialogfeld Globale Authentifizierungsrichtlinie bearbeiten unter Intranet die Option Windows-Authentifizierung aus.
Klicken Sie auf Übernehmen und dann auf OK.
In PowerShell können Sie das Cmdlet Set-AdfsGlobalAuthenticationPolicy verwenden.
Set-AdfsGlobalAuthenticationPolicy -PrimaryIntranetAuthenticationProvider 'WindowsAuthentication'
Hinweis
In einer WID-basierten Farm muss der PowerShell-Befehl auf dem primären AD FS-Server ausgeführt werden. In einer SQL-basierten Farm kann der PowerShell-Befehl auf jedem AD FS-Server ausgeführt werden, der Mitglied der Farm ist.
Schritt 5: Hinzufügen der Anspruchsbeschreibung zu AD FS
Fügen Sie die folgende Anspruchsbeschreibung zur Farm hinzu. Diese Anspruchsbeschreibung ist in AD FS 2012 R2 nicht standardmäßig vorhanden und muss manuell hinzugefügt werden.
Klicken Sie in der AD FS-Verwaltung unter Dienst mit der rechten Maustaste auf Anspruchsbeschreibung, und wählen Sie Anspruchsbeschreibung hinzufügen aus.
Geben Sie in der Anspruchsbeschreibung die folgenden Informationen ein.
- Anzeigename: Windows-Gerätegruppe
- Anspruchsbeschreibung:
'<https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup>'
`
Aktivieren Sie beide Kontrollkästchen.
Klicken Sie auf OK.
In PowerShell können Sie das Cmdlet Add-AdfsClaimDescription verwenden.
Add-AdfsClaimDescription -Name 'Windows device group' -ClaimType 'https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup' ` -ShortName 'windowsdevicegroup' -IsAccepted $true -IsOffered $true -IsRequired $false -Notes 'The windows group SID of the device'
Hinweis
In einer WID-basierten Farm muss der PowerShell-Befehl auf dem primären AD FS-Server ausgeführt werden. In einer SQL-basierten Farm kann der PowerShell-Befehl auf jedem AD FS-Server ausgeführt werden, der Mitglied der Farm ist.
Schritt 6: Aktivieren des Bits für die zusammengesetzte Authentifizierung im Attribut „msDS-SupportedEncryptionTypes“
- Aktivieren Sie das Bit für die zusammengesetzte Authentifizierung im Attribut „msDS-SupportedEncryptionTypes“ in dem Konto, das Sie mit dem PowerShell-Cmdlet Set-ADServiceAccount als ausführendes Konto für den AD FS-Dienst festgelegt haben.
Hinweis
Wenn Sie das Dienstkonto ändern, müssen Sie die zusammengesetzte Authentifizierung manuell aktivieren, indem Sie das Windows PowerShell-Cmdlet Set-ADUser -compoundIdentitySupported:$true ausführen.
Set-ADServiceAccount -Identity “ADFS Service Account” -CompoundIdentitySupported:$true
- Starten Sie den AD FS-Dienst neu.
Hinweis
Sobald „CompoundIdentitySupported“ auf „true“ festgelegt ist, tritt bei der Installation desselben gMSA auf neuen Servern (2012R2/2016) der folgende Fehler auf: Install-ADServiceAccount: Dienstkonto kann nicht installiert werden. Fehlermeldung: Der bereitgestellte Kontext stimmte nicht mit dem Ziel überein.
Lösung: Legen Sie „CompoundIdentitySupported“ vorübergehend auf „$false“ fest. Dieser Schritt bewirkt, dass AD FS die Ausgabe von WindowsDeviceGroup-Ansprüchen beendet. Set-ADServiceAccount -Identity 'ADFS Service Account' -CompoundIdentitySupported:$false. Installieren Sie das gMSA auf dem neuen Server, und legen Sie „CompoundIdentitySupported“ dann wieder auf „$true“ fest. Das Deaktivieren von „CompoundIdentitySupported“ und das erneute Aktivieren erfordert keinen Neustart des AD FS-Diensts.
Schritt 7: Aktualisieren der AD FS-Anspruchsanbieter-Vertrauensstellung für Active Directory
- Aktualisieren Sie die AD FS-Anspruchsanbieter-Vertrauensstellung für Active Directory, um die folgende Passthrough-Anspruchsregel für den Anspruch „WindowsDeviceGroup“ hinzuzufügen.
- Klicken Sie in der AD FS-Verwaltung auf Anspruchsanbieter-Vertrauensstellungen. Klicken Sie dann im rechten Bereich mit der rechten Maustaste auf Active Directory, und wählen Sie Anspruchsregeln bearbeiten aus.
- Klicken Sie in Anspruchsregeln für Active Directory bearbeiten auf Regel hinzufügen.
- Wählen Sie im Assistenten zum Hinzufügen einer Transformationsanspruchsregel die Option Eingehenden Anspruch filtern oder zulassen aus der Dropdownliste aus, und klicken Sie dann auf Weiter.
- Fügen Sie einen Anzeigenamen hinzu, und wählen Sie Windows-Gerätegruppe aus der Dropdownliste Eingehender Anspruchstyp aus.
- Klicken Sie auf Fertig stellen. Klicken Sie auf Übernehmen und dann auf OK.
Schritt 8: Hinzufügen einer Regel „Eingehenden Anspruch filtern oder zulassen“ auf der vertrauenden Seite, auf der die WindowsDeviceGroup-Ansprüche erwartet werden
- Klicken Sie in der AD FS-Verwaltung auf Vertrauensstellungen der vertrauenden Seite. Klicken Sie dann im rechten Bereich mit der rechten Maustaste auf Ihre vertrauende Seite, und wählen Sie Anspruchsregeln bearbeiten aus.
- Klicken Sie unter Ausstellungstransformationsregeln auf Regel hinzufügen.
- Wählen Sie im Assistenten zum Hinzufügen einer Transformationsanspruchsregel die Option Eingehenden Anspruch filtern oder zulassen aus der Dropdownliste aus, und klicken Sie dann auf Weiter.
- Fügen Sie einen Anzeigenamen hinzu, und wählen Sie Windows-Gerätegruppe aus der Dropdownliste Eingehender Anspruchstyp aus.
- Klicken Sie auf Fertig stellen. Klicken Sie auf Übernehmen und dann auf OK.
Schritte zum Konfigurieren von AD FS unter Windows Server 2016
Im Folgenden werden die Schritte zum Konfigurieren der zusammengesetzten Authentifizierung in AD FS unter Windows Server 2016 erläutert.
Schritt 1: Aktivieren der Unterstützung des Kerberos-Domänencontrollers für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz in der Standardrichtlinie für Domänencontroller
- Wählen Sie im Server-Manager unter „Extras“ die Option Gruppenrichtlinienverwaltung aus.
- Navigieren Sie nach unten zu Standarddomänenrichtlinie, klicken Sie mit der rechten Maustaste darauf, und wählen Sie Bearbeiten aus.
- Erweitern Sie im Gruppenrichtlinienverwaltungs-Editor unter Computerkonfiguration nacheinander die Einträge Richtlinien, Administrative Vorlagen und System, und wählen Sie KDC aus.
- Doppelklicken Sie im rechten Bereich auf Unterstützung des Kerberos-Domänencontrollers für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz.
- Legen Sie im neuen Dialogfeld die Unterstützung des Kerberos-Domänencontrollers für Ansprüche auf Aktiviert fest.
- Wählen Sie unter „Optionen“ den Eintrag Unterstützt aus dem Dropdownmenü aus, und klicken Sie dann auf Übernehmen und OK.
Schritt 2: Aktivieren der Unterstützung des Kerberos-Clients für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz auf Computern, die auf Verbundanwendungen zugreifen
- Erweitern Sie in einer Gruppenrichtlinie, die auf die Computer mit Zugriff auf Verbundanwendungen angewendet wird, im Gruppenrichtlinienverwaltungs-Editor unter Computerkonfiguration nacheinander die Einträge Richtlinien, Administrative Vorlagen und System, und wählen Sie Kerberos aus.
- Doppelklicken Sie im rechten Bereich des Gruppenrichtlinienverwaltungs-Editors auf Unterstützung des Kerberos-Clients für Ansprüche, Verbundauthentifizierung und Kerberos-Schutz.
- Legen Sie im neuen Fenster des Dialogfelds die Unterstützung des Kerberos-Clients auf Aktiviert fest, und klicken Sie auf Übernehmen und OK.
- Schließen Sie den Gruppenrichtlinienverwaltungs-Editor.
Schritt 3: Konfigurieren des primären Authentifizierungsanbieters
- Legen Sie den primären Authentifizierungsanbieter für die AD FS-Intraneteinstellungen auf Windows-Authentifizierung fest.
- Wählen Sie in der AD FS-Verwaltung unter Authentifizierungsrichtlinien die Option Primäre Authentifizierung aus, und klicken Sie unter Globale Einstellungen auf Bearbeiten.
- Wählen Sie im Dialogfeld Globale Authentifizierungsrichtlinie bearbeiten unter Intranet die Option Windows-Authentifizierung aus.
- Klicken Sie auf Übernehmen und dann auf OK.
- In PowerShell können Sie das Cmdlet Set-AdfsGlobalAuthenticationPolicy verwenden.
Set-AdfsGlobalAuthenticationPolicy -PrimaryIntranetAuthenticationProvider 'WindowsAuthentication'
Hinweis
In einer WID-basierten Farm muss der PowerShell-Befehl auf dem primären AD FS-Server ausgeführt werden. In einer SQL-basierten Farm kann der PowerShell-Befehl auf jedem AD FS-Server ausgeführt werden, der Mitglied der Farm ist.
Schritt 4: Aktivieren des Bits für die zusammengesetzte Authentifizierung im Attribut „msDS-SupportedEncryptionTypes“
- Aktivieren Sie das Bit für die zusammengesetzte Authentifizierung im Attribut „msDS-SupportedEncryptionTypes“ in dem Konto, das Sie mit dem PowerShell-Cmdlet Set-ADServiceAccount als ausführendes Konto für den AD FS-Dienst festgelegt haben.
Hinweis
Wenn Sie das Dienstkonto ändern, müssen Sie die zusammengesetzte Authentifizierung manuell aktivieren, indem Sie das Windows PowerShell-Cmdlet Set-ADUser -compoundIdentitySupported:$true ausführen.
Set-ADServiceAccount -Identity “ADFS Service Account” -CompoundIdentitySupported:$true
- Starten Sie den AD FS-Dienst neu.
Hinweis
Sobald „CompoundIdentitySupported“ auf „true“ festgelegt ist, tritt bei der Installation desselben gMSA auf neuen Servern (2012R2/2016) der folgende Fehler auf: Install-ADServiceAccount: Dienstkonto kann nicht installiert werden. Fehlermeldung: Der bereitgestellte Kontext stimmte nicht mit dem Ziel überein.
Lösung: Legen Sie „CompoundIdentitySupported“ vorübergehend auf „$false“ fest. Dieser Schritt bewirkt, dass AD FS die Ausgabe von WindowsDeviceGroup-Ansprüchen beendet. Set-ADServiceAccount -Identity 'ADFS Service Account' -CompoundIdentitySupported:$false. Installieren Sie das gMSA auf dem neuen Server, und legen Sie „CompoundIdentitySupported“ dann wieder auf „$true“ fest. Das Deaktivieren von „CompoundIdentitySupported“ und das erneute Aktivieren erfordert keinen Neustart des AD FS-Diensts.
Schritt 5: Aktualisieren der AD FS-Anspruchsanbieter-Vertrauensstellung für Active Directory
- Aktualisieren Sie die AD FS-Anspruchsanbieter-Vertrauensstellung für Active Directory, um die folgende Passthrough-Anspruchsregel für den Anspruch „WindowsDeviceGroup“ hinzuzufügen.
- Klicken Sie in der AD FS-Verwaltung auf Anspruchsanbieter-Vertrauensstellungen. Klicken Sie dann im rechten Bereich mit der rechten Maustaste auf Active Directory, und wählen Sie Anspruchsregeln bearbeiten aus.
- Klicken Sie in Anspruchsregeln für Active Directory bearbeiten auf Regel hinzufügen.
- Wählen Sie im Assistenten zum Hinzufügen einer Transformationsanspruchsregel die Option Eingehenden Anspruch filtern oder zulassen aus der Dropdownliste aus, und klicken Sie dann auf Weiter.
- Fügen Sie einen Anzeigenamen hinzu, und wählen Sie Windows-Gerätegruppe aus der Dropdownliste Eingehender Anspruchstyp aus.
- Klicken Sie auf Fertig stellen. Klicken Sie auf Übernehmen und dann auf OK.
Schritt 6: Hinzufügen einer Regel „Eingehenden Anspruch filtern oder zulassen“ auf der vertrauenden Seite, auf der die WindowsDeviceGroup-Ansprüche erwartet werden
- Klicken Sie in der AD FS-Verwaltung auf Vertrauensstellungen der vertrauenden Seite. Klicken Sie dann im rechten Bereich mit der rechten Maustaste auf Ihre vertrauende Seite, und wählen Sie Anspruchsregeln bearbeiten aus.
- Klicken Sie unter Ausstellungstransformationsregeln auf Regel hinzufügen.
- Wählen Sie im Assistenten zum Hinzufügen einer Transformationsanspruchsregel die Option Eingehenden Anspruch filtern oder zulassen aus der Dropdownliste aus, und klicken Sie dann auf Weiter.
- Fügen Sie einen Anzeigenamen hinzu, und wählen Sie Windows-Gerätegruppe aus der Dropdownliste Eingehender Anspruchstyp aus.
- Klicken Sie auf Fertig stellen. Klicken Sie auf Übernehmen und dann auf OK.
Überprüfen
Um die Freigabe von WindowsDeviceGroup-Ansprüchen zu überprüfen, erstellen Sie unter Verwendung eine Ansprüche unterstützende Testanwendung. Verwenden Sie dabei .NET 4.6 mit WIF SDK 4.0. Konfigurieren Sie die Anwendung in AD FS als vertrauende Seite, und aktualisieren Sie sie mit der Anspruchsregel, wie in den Schritten oben beschrieben. Wenn der AD FS-Anbieter für die integrierte Windows-Authentifizierung zur Authentifizierung bei der Anwendung verwendet wird, werden die folgenden Ansprüche erstellt.
Die Ansprüche für den Computer bzw. das Gerät können jetzt genutzt werden, um eine umfassendere Zugriffssteuerung zu ermöglichen.
Beispiel: Die folgenden AdditionalAuthenticationRules weisen AD FS an, die MFA aufzurufen, wenn folgende Bedingungen erfüllt sind: Der authentifizierende Benutzer ist kein Mitglied der Sicherheitsgruppe „-1-5-21-2134745077-1211275016-3050530490-1117“ UND der Computer (von dem aus der Benutzer die Authentifizierung ausführt) ist kein Mitglied der Sicherheitsgruppe „S-1-5-21-2134745077-1211275016-3050530490-1115 (WindowsDeviceGroup)“.
Wenn jedoch eine der oben genannten Bedingungen erfüllt ist, soll die MFA nicht aufgerufen werden.
'NOT EXISTS([Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup", Value =~ "S-1-5-21-2134745077-1211275016-3050530490-1115"])
&& NOT EXISTS([Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid", Value =~ "S-1-5-21-2134745077-1211275016-3050530490-1117"])
=> issue(Type = "https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod", Value = "https://schemas.microsoft.com/claims/multipleauthn");'