IssuerNameRegistry

IssuerNameRegistry

IssuerNameRegistry 類別提供的名稱服務會傳回指定權杖的簽發者名稱。WIF 提供了 ConfigurationBasedIssuerNameRegistry 來示範簡單的入門方式,但是建議開發人員撰寫衍生自 IssuerNameRegistry 類別的自訂實作。

如果 SHA-1 憑證指紋位於 ConfiguredTrustedIssuers 中,則 ConfigurationBasedIssuerNameRegistry 會取用 X509 安全性權杖並傳回簽發者名稱。ConfigurationBasedIssuerNameRegistry 中應該先設定 ConfiguredTrustedIssuers,這是信任的簽發者清單。ConfiguredTrustedIssuers 是憑證指紋和簽發者名稱的字典。

注意

雖然 IssuerNameRegistry 是拒絕未受信任、未知或無效簽發者的邏輯位置,但是務必記得,權杖處理常式預設會在簽發者憑證上強制執行 PeerOrChainTrust 驗證,因此 IssuerNameRegistry 中任何類似的檢查都是不必要的。

請注意,Issuer 現在是 String 類型。 如此可透過更具描述性的方式表示簽發者,並且根據傳回自 IssuerNameRegistry 的字串值進行驗證和授權決策。 建議開發人員盡快在驗證管線中,使用 IssuerNameRegistry 做為拒絕未知或未受信任簽發者的信任決策點。

IssuerNameRegistry 有三種方法,這三種方法預設為從各種不同的權杖處理常式呼叫。GetIssuerName 會在傳入 X509SecurityToken 的簽發者憑證上呼叫,以進行用戶端憑證驗證。

GetIssuerName 會在傳入的 SAML 1.1 或 SAML 2 權杖的簽署憑證上呼叫,以進行 SAML 簽發的權杖驗證。 字串參數是要求的簽發者名稱,來自 SAML 權杖中的 "Issuer"。

GetWindowsIssuerName 會在 Windows 驗證期間呼叫,以及對應至 Windows 案例時呼叫,這裡所指的 Windows 案例是指有額外的 Windows 宣告新增至用戶端身分識別的情形。