ADFS: Das WebSSO-Szenario

Eine zentrale Bedeutung beim Aufbau von Federation-Beziehungen hat die Richtlinie für die Vertrauensstellung. Sie steuert, welche Systeme sich in welcher Weise vertrauen. Im konkreten Fall geht es darum festzulegen, in welcher Form ein Ressourcenzugriff zulässig ist.

Einige Aspekte der Anpassung einer Vertrauensrichtlinie wurden bereits im ersten Teil der Serie erörtert. Da es sich dabei um einen der komplexesten Teile der Konfiguration der ADFS handelt, wird nachfolgend noch einmal näher darauf eingegangen.

Die Definition einer Richtlinie für die Vertrauensstellung

Die Grundstruktur der Anwendung Active Directory-Verbunddienste beginnt mit dem Knoten Verbunddienst und dem direkt untergeordneten Knoten Vertrauensrichtlinie (Bild 1). Diese Richtlinie wird als XML-Datei im Dateisystem abgelegt. Die Vertrauensrichtlinie ist wiederum in zwei Bereiche gegliedert:

Bild 1: Die Schnittstelle für die Definition von Vertrauensrichtlinien.
Bild 1: Die Schnittstelle für die Definition von Vertrauensrichtlinien.

  • Bei Eigene Organisation finden sich alle Informationen, die direkt mit der eigenen Organisation in Zusammenhang stehen. Hier können beispielsweise die Organisationsansprüche (Aussagen über Benutzer und Gruppen, die von beiden Kommunikationspartnern einheitlich verwendet werden), Kontospeicher und Anwendungen konfiguriert werden.

  • Bei Partnerorganisationen werden die Kommunikationspartner definiert. Hier kann man Kontopartner und Ressourcenpartner festlegen. Erstere sind Identity Provider, die Anspruchsinformationen senden, Letztere sind Service-Provider, an die solche Informationen weitergegeben werden.

Im konkreten Fall des WebSSO-Szenarios dient ein ADFS-Server als Service Provider, der die Authentifizierung, die beim zentralen Web-Server durchgeführt wurde, übernimmt. Die andere Organisation ist also Kontopartner, während auf der eigenen Seite gegebenenfalls Anwendungen konfiguriert werden müssen.

Bild 2: Die Eigenschaften einer Vertrauensrichtlinie.
Bild 2: Die Eigenschaften einer Vertrauensrichtlinie.

Sowohl beim Knoten Verbunddienst als auch beim Knoten Vertrauensrichtlinie können über den Befehl Eigenschaften im Kontextmenü noch wichtige Anpassungen vorgenommen werden. Bei den Eigenschaften des Knotens Verbunddienst lässt sich beispielsweise der Speicherort der XMLDatei anpassen, in der die Vertrauensrichtlinie abgelegt wird. Außerdem kann das Zertifikat für die Signatur von Tokens konfiguriert und angezeigt werden. Im Register Webseiten werden Standardseiten für die Kommunikation mit den Clients definiert und bei Problembehandlung noch Einstellungen für die Protokollierung vorgenommen.

Bei den Eigenschaften des Knotens Vertrauensrichtlinie gibt es mehr Optionen. Einige wurden bereits im ersten Teil der Serie angesprochen. Die wichtigsten sind die URI und der URL für den Verbunddienst, die für die Lokalisierung der Dienste benötigt werden. In den weiteren Registern können unter anderem die Zertifikate konfiguriert werden, Gültigkeitsdauern für Tokens definiert und ein Transformationsmodul in Form einer DLL angegeben werden, um Claims (Organisationsansprüche) umzuformen.

Als Organisationsansprüche sind bereits einige wichtige und typische Parameter wie die EMail, ein User Principal Name und der allgemeine Name (common name) konfiguriert. Weitere lassen sich bei Bedarf hinzufügen, sobald sie vom Identity Provider geliefert werden.

Bild 3: Die Organisationsansprüche (Claims) sind gemeinsame Informationen für die Identifikation von Benutzern und Gruppen.
Bild 3: Die Organisationsansprüche (Claims) sind gemeinsame Informationen für die Identifikation von Benutzern und Gruppen.

Als Kontospeicher können bei den ADFS eine Instanz des Active Directory und mehrere Instanzen von ADAM eingerichtet werden. Weitere Verzeichnisdienste werden nicht unterstützt.

Bei den Anwendungen lassen sich sowohl Token- als auch Claims-basierte Anwendungen konfigurieren. Damit wird gesteuert, welche Informationen vom jeweils anderen Kommunikationspartner – in diesem Fall einem Identity Provider – übergeben werden müssen. Für die Anwendung muss unter anderem der URL angegeben werden. Der Wert für den URL muss wiederum mit dem des Rückgabe-URL übereinstimmen, damit die Kommunikation zwischen den beiden Systemen korrekt funktioniert.

Die Konfiguration von Kontopartnern wird vereinfacht, wenn der jeweilige Partner Richtlinien für die Interoperabilität bereitstellt, die ausgetauscht werden können. Ist das nicht der Fall, so müssen alle Parameter explizit konfiguriert werden. In diesem Fall müssen Daten wie URI und URL des Federation-Dienstes eingetragen werden.

Schließlich ist es noch möglich, die Ressourcenpartner festzulegen und damit anzugeben, auf welche Ressourcen eines entfernten Systems in welcher Weise zugegriffen werden darf.

Wie geht es weiter?

Noch ausstehende Konfigurationsschritte, eine Zusammenfassung der wichtigsten Schritte und die konkrete Nutzung des ADFS-WebSSO-Szenarios werden im abschließenden Teil der Serie behandelt, ebenso weitere Ansätze für den Aufbau von Federation-Umgebungen mit den ADFS des Windows Server 2003 R2 besprochen.