IssuerNameRegistry

IssuerNameRegistry

IssuerNameRegistry クラスは、指定されたトークンの発行者名を返す名前サービスです。実装方法としては、WIF の ConfigurationBasedIssuerNameRegistry を使用するのが最も簡単ですが、IssuerNameRegistry クラスから派生したカスタム実装を開発者自身が作成することをお勧めします。

ConfigurationBasedIssuerNameRegistry は、X509 セキュリティ トークンを受け取り、証明書の SHA-1 ベースの拇印が ConfiguredTrustedIssuers に存在する場合、該当する発行者名を返します。ConfigurationBasedIssuerNameRegistry は、信頼できる発行者のリストである ConfiguredTrustedIssuers を使用して、最初に構成しておく必要があります。ConfiguredTrustedIssuers は、証明書の拇印と発行者名のディクショナリです。

注意

IssuerNameRegistry は、信頼できない発行者、不明な発行者、または無効な発行者を拒否するための論理的な場所ではありますが、発行者証明書には、トークン ハンドラーによって PeerOrChainTrust 検証が既定で適用されるため、同様のチェックを IssuerNameRegistry で行うことは冗長になります。

現在、Issuer の型は String です。 これによって、発行者をわかりやすい言葉で表現でき、認証と承認の判断については、IssuerNameRegistry から返される文字列値に基づいて行うことができます。 開発者の方には、信頼の判断ポイントとして IssuerNameRegistry を使用し、認証パイプラインのできるだけ早い段階で不明な発行者や信頼できない発行者を拒否するようにお勧めします。

IssuerNameRegistry には 3 つのメソッドがあり、それらのメソッドが各種トークン ハンドラーから既定で呼び出されます。GetIssuerName は、受信 X509SecurityToken の発行者証明書に対するクライアント証明書の認証を行う際に呼び出されます。

GetIssuerName は、受信した SAML 1.1 または SAML 2 トークンの署名証明書に対して、SAML 発行トークン認証を行う際に呼び出されます。 文字列パラメーターとして、要求する発行者名 (SAML トークン内の "Issuer" から取得されます) を指定します。

GetWindowsIssuerName の呼び出しは Windows 認証のほか、別途 Windows 要求をクライアントの ID に追加する必要のある Windows のシナリオで使用されます。