Verwendung von URIs in AD FS

Ein URI (Uniform Resource Identifier) ist eine Zeichenfolge, die als eindeutiger Bezeichner verwendet wird. In AD FS dienen URIs zum Identifizieren von Netzwerkadressen von Partnern und Konfigurationsobjekten. Bei Verwendung zum Identifizieren von Netzwerkadressen von Partnern ist der URI stets eine URL. Bei Verwendung zum Identifizieren von Objekten kann der URI ein URN oder eine URL sein. Weitere allgemeine Informationen zu URIs finden Sie unter RFC 2396 und RFC 3986.

URIs als Netzwerkadressen von Partnern

Es folgen die Netzwerkadressen-URLs, mit denen es AD FS-Administratoren am häufigsten zu tun haben.

  • Die URLs des Verbunddiensts, einschließlich WS-Federation, SAML, WS-Trust, Verbundmetadaten, WS-MetadataExchange, Datenschutz und die URLs von Organisationen

  • Die URLs der Vertrauensstellung der vertrauenden Seite einschließlich WS-Federation, SAML und Verbundmetadaten-URLs

  • Die URLs der Anspruchsanbieter-Vertrauensstellung einschließlich WS-Federation, SAML und Verbundmetadaten-URLs

URIs als Objektbezeichner

In der folgenden Tabelle werden die Bezeichner beschrieben, mit denen es AD FS-Administratoren am häufigsten zu tun haben.

Bezeichnername BESCHREIBUNG Vergleiche
Bezeichner des Verbunddiensts Dieser Bezeichner wird verwendet, um den Verbunddienst zu identifizieren. Die ID wird von vertrauenden Seiten, die Ansprüche von diesem Verbunddienst nutzen, sowie von Anspruchsanbietern verwendet, die Ansprüche für diesen Verbunddienst ausstellen. Wenn ein Benutzer Ansprüche vom Anspruchsanbieter für diesen Verbunddienst anfordert, wird der Bezeichner des Verbunddiensts genutzt, um das Ziel der Ansprüche zu bestimmen.

Wenn dieser Verbunddienst die Ansprüche von einem Anspruchsanbieter empfängt, prüft er dessen Verbunddienstbezeichner, um sicherzustellen, dass die Ansprüche entsprechend begrenzt sind.

Wenn eine vertrauende Seite Ansprüche von diesem Verbunddienst empfängt, prüft die vertrauende Seite, ob der Aussteller der Ansprüche mit dem Verbunddienstbezeichner übereinstimmt.

Bezeichner der vertrauenden Seite Dieser Bezeichner wird verwendet, um die vertrauende Seite für den Verbunddienst zu bestimmen. Er wird verwendet, wenn Ansprüche für die vertrauende Seite ausgestellt werden. Wenn ein Benutzer Ansprüche von diesem Verbunddienst für die vertrauende Seite anfordert, wird der Bezeichner der vertrauenden Seite verwendet, um die vertrauende Seite zu identifizieren, der die Ansprüche zugewiesen werden sollen. Dieser Vergleich erfolgt mithilfe eines Präfixabgleichs (siehe unten).

Wenn die vertrauende Seite die Ansprüche erhält, sucht sie ihren Bezeichner im Sicherheitstoken, um sicherzustellen, dass die Ansprüche für sie gelten.

Anspruchsanbieterbezeichner Dieser Bezeichner wird verwendet, um den Anspruchsanbieter für den Verbunddienst zu bestimmen. Er wird verwendet, wenn Ansprüche vom Anspruchsanbieter empfangen werden. Wenn dieser Verbunddienst Ansprüche vom Anspruchsanbieter empfängt, prüft dieser Verbunddienst, ob der Aussteller der Ansprüche mit dem Bezeichner des Anspruchsanbieters übereinstimmt.
Anspruchstyp Dieser Bezeichner wird verwendet, um den Typ des Anspruchs zu definieren. Er wird beim Senden und Empfangen von Ansprüchen von diesem Verbunddienst, Anspruchsanbietern und vertrauende Seiten verwendet. Wenn der Verbunddienst Ansprüche von einem Anspruchsanbieter erhält, ermöglichen die Anspruchsregeln, die der entsprechenden Anspruchsanbieter-Vertrauensstellung zugeordnet sind, dem Administrator das Vergleichen von Anspruchstypen und Verarbeiten von Ansprüchen. Die Anspruchsregeln, die der Anspruchsanbieter-Vertrauensstellung zugeordnet sind, ermöglichen dem Administrator auch das Vergleichen von Anspruchstypen, die aus Regeln für die Anspruchsanbieter-Vertrauensstellung stammen, und das Entscheiden, welche Ansprüche ausgestellt werden sollen.

URI-Präfixabgleich für Bezeichner der vertrauenden Seite

Die Pfadsyntax eines URI ist hierarchisch aufgebaut. Als Trennzeichen dienen die Zeichen „/“ oder „:“.  Auf Grundlage der Trennzeichen kann der Pfad daher in Abschnitte aufgeteilt sein.  Beim Präfixabgleich muss jeder Abschnitt eine vollständige Übereinstimmung gemäß den Abgleichregeln darstellen (diese Regeln bestimmen die Groß-/Kleinschreibung der Übereinstimmungen). Weitere Informationen zu den Abgleichregeln finden Sie in den oben erwähnten RFCs.

Wenn eine vertrauende Seite in einer Anforderung an den Verbunddienst erkannt wird, verwendet AD FS die Präfixabgleichlogik zum Bestimmen, ob es in der AD FS-Konfigurationsdatenbank eine übereinstimmende Vertrauensstellung der vertrauenden Seite gibt.

Wenn beispielsweise der Bezeichner der vertrauenden Seite in der AD FS-Konfigurationsdatenbank (URI1) ein Präfix des Bezeichners der vertrauenden Seite in der eingehenden Anforderung (URI2) ist, dann muss Folgendes zutreffen:

  • Nachfolgende Trennzeichen (Schrägstriche und Doppelpunkte) von Pfadabschnitten oder Stellen müssen ignoriert werden.

  • Die Schema- und Autoritätsteile von URI1 und URI2 müssen unabhängig von Groß-und Kleinschreibung genau übereinstimmen.

  • Jeden Pfadabschnitt von URI1 muss eine genaue Übereinstimmung (basierend auf der gewählten Groß-/Kleinschreibung ) mit dem entsprechenden Pfadabschnitt von URI2 sein.

  • URI2 hat möglicherweise mehr Pfadabschnitte als URI1, aber URI1 darf nicht mehr Pfadabschnitte als URI2 haben.

  • URI1 kann nicht mehr Pfadabschnitte als URI2 haben.

  • Wenn URI1 ein Fragment enthält, muss es genau einem URI2-Fragment entsprechen.

Hinweis

Abfragezeichenfolgen-Parameter werden nicht unterstützt und in Bezeichnern der vertrauenden Seite ignoriert.

Die folgende Tabelle enthält weitere Beispiele.

Bezeichner der vertrauenden Seite in der AD FS-Konfigurationsdatenbank Bezeichner der vertrauenden Seite in der Anforderungsnachricht Entspricht der Anforderungsbezeichner dem Konfigurationsbezeichner? `Reason`
http://contoso.com http://contoso.com TRUE Genaue Übereinstimmung
http://contoso.com/ http://contoso.com TRUE Nachgestellte Schrägstriche werden ignoriert.
http://contoso.com http://contoso.com/ TRUE Nachgestellte Schrägstriche werden ignoriert.
http://contoso.com http://contoso.com/hr TRUE URI1 enthält keinen Pfad und stimmt mit Schema und Autorität in URI2 überein.
http://contoso.com/hr http://contoso.com/hr/web TRUE Die ersten Pfadabschnitte stimmen überein, URI1 hat keinen zweiten Pfadabschnitt.
http://contoso.com/hr/ http://contoso.com/hrw/main FALSE Der Pfadabschnitt 1 von URI1 entspricht nicht dem Pfadabschnitt 1 von URI2.
http://contoso.com/hr http://contoso.com FALSE URI1 hat mehr Pfadabschnitte als URI2.
http://contoso.com/hr http://contoso.com/hrweb FALSE Die ersten Pfadabschnitte stimmen nicht überein.
https://contoso.com http://contoso.com FALSE Teile des Schemas stimmen nicht überein.
http://sts.contoso.com http://contoso.com FALSE Teile der Autorität stimmen nicht überein.
http://contoso.com http://sts.contoso.com FALSE Teile der Autorität stimmen nicht überein.