AD FS での URI の使用

Uniform Resource Identifier (URI) は、一意の識別子として使用される文字列です。 AD FS では、パートナー ネットワークのアドレスと構成オブジェクトの両方を識別するために URI を使用します。 パートナー ネットワーク アドレスの識別に使用されるときは、URI は常に URL です。 構成オブジェクトの識別に使用されるときは、URI は URN または URL の場合があります。 URI についての一般的な情報については、RFC 2396 および RFC 3986 を参照してください。

パートナー ネットワーク アドレスとしての URI

以下は、AD FS で管理者がもっともよく処理するネットワーク アドレスの URL です。

  • フェデレーション サービスの URL (WS-Federation、SAML、WS-Trust、フェデレーション メタデータ、WS-MetadataExchange、プライバシー、組織などの URL)

  • 証明書利用者信頼の URL (WS-Federation、SAML、フェデレーション メタデータなどの URL)

  • 要求プロバイダー信頼の URL (WS-Federation、SAML、フェデレーション メタデータなどの URL)

オブジェクト識別子としての URI

以下の表では、AD FS で管理者がもっともよく処理する ID について説明します。

識別子名 説明 比較
フェデレーション サービスの識別子 この識別子は、フェデレーション サービスを識別するために使用されます。 このフェデレーション サービスからの要求を使用する証明書利用者、およびこのフェデレーション サービスに要求を発行する要求プロバイダーによって使用されます。 ユーザーがこのフェデレーション サービスの要求プロバイダーからの要求を要求するとき、フェデレーション サービス識別子が要求の対象を識別するために使用されます。

このフェデレーション サービスが要求プロバイダーからの要求を受信するとき、フェデレーション サービス識別子を調べることで要求のスコープ設定を確認します。

証明書利用者がこのフェデレーション サービスからの要求を受信するとき、証明書利用者は、要求の発行者がフェデレーション サービスの識別子と一致することを確認します。

証明書利用者の識別子 この識別子は、このフェデレーション サービスに対して証明書利用者を識別するために使用されます。 証明書利用者に要求を発行する際に使用されます。 ユーザーがこのフェデレーション サービスから証明書利用者の要求を要求するときは、証明書利用者の識別子が要求の対象の証明書利用者を識別するために使用されます。 この比較は、プレフィックスの一致を使用して行われます (下記参照)。

証明書利用者は要求を受信すると、セキュリティ トークン内の ID を調べて要求が自分宛であることを確認します。

要求プロバイダー識別子 この識別子は、このフェデレーション サービスに対する証明書利用者を識別するために使用されます。 要求プロバイダーから要求を受信するときに使用されます。 このフェデレーション サービスが要求プロバイダーから要求を受信するとき、このフェデレーション サービスは、要求の発行者が要求プロバイダーの識別子と一致することを確認します。
要求の種類 この識別子は、要求の種類を定義するために使用されます。 このフェデレーション サービス、要求プロバイダー、および証明書利用者によって要求を送受信するときに使用されます。 フェデレーション サービスが要求プロバイダーから要求を受け取るとき、対応する要求プロバイダー信頼に関連付けられている要求規則により、管理者は要求の種類を比較して、要求を処理できます。 証明書利用者信頼に関連付けられている要求規則によっても、管理者は要求プロバイダー信頼規則からの要求から要求の種類を比較して、発行する要求を決定できます。

証明書利用者の識別子と一致する URI プレフィックス

URI のパス構文は階層的に構成されていて、「/」文字だけまたは「:」文字だけで区切られます。  したがって、パスは区切り文字に基づいてパス セクションに分割される場合があります。  プレフィックス一致の場合、各セクションは、一致規則に従う完全な一致である必要があります (これらの規則が一致の大文字と小文字を制御します)。 一致規則の詳細については、上記の RFC を参照してください。

証明書利用者がフェデレーション サービスへの要求で識別されたとき、AD FS は、プレフィックス一致ロジックを使用して、AD FS 構成データベースに一致する証明書利用者の信頼があるかどうかを判断します。

たとえば、AD FS 構成データベースの証明書利用者識別子 (URI1) が、受信要求の証明書利用者識別子のプレフィックス (URI2) である場合、以下が真である必要があります。

  • パス セクションまたは機関の末尾の区切り記号 (スラッシュとコロン) は無視する必要があります

  • URI1 と URI2 のスキームと機関の部分は大文字と小文字が正確に一致する必要があります。

  • URI1 の各パス セクションは、URI2 の対応するパス セクションと完全に一致する必要があります (大文字小文字の区別選択に基づく)。

  • URI2 には URI1 より多くのパス セクションがあってもかまいませんが、URI1 に URI2 より多くのパス セクションがあってはなりません。

  • URI1 は、URI2 より多くのパス セクションを持つことはできません。

  • URI1 にフラグメントがある場合、URI2 のフラグメントと正確に一致する必要があります。

注意

クエリ文字列パラメーターはサポートされていません。証明書利用者識別子では無視されます。

次の表にその他の例を示します。

AD FS 構成データベース内の証明書利用者識別子 要求メッセージ内の証明書利用者識別子 要求の識別子と構成の識別子は一致するか 理由
http://contoso.com http://contoso.com TRUE 完全一致
http://contoso.com/ http://contoso.com true 末尾のスラッシュは無視されます
http://contoso.com http://contoso.com/ TRUE 末尾のスラッシュは無視されます
http://contoso.com http://contoso.com/hr TRUE URI1 にパスはなく、スキームと機関を URI2 に一致させます
http://contoso.com/hr http://contoso.com/hr/web TRUE 最初のパス セクションが一致し、URI1 には 2 番目のパス セクションがありません
http://contoso.com/hr/ http://contoso.com/hrw/main FALSE URI1 のパス セクション 1 は、URI2 のパス セクション 1 と一致しません
http://contoso.com/hr http://contoso.com FALSE URI1 には、URI2 より多くのパス セクションがあります
http://contoso.com/hr http://contoso.com/hrweb FALSE 最初のパス セクションが一致しません
https://contoso.com http://contoso.com FALSE スキーム部分が一致しません
http://sts.contoso.com http://contoso.com FALSE 機関部分が一致しません
http://contoso.com http://sts.contoso.com FALSE 機関部分が一致しません