Active Directory Federation Services (AD FS) 使用下列三種類型的 Cookie:

  • 驗證 Cookie

  • 帳戶夥伴 Cookie

  • 登出 Cookie

驗證 Cookie

Federation Service 與 AD FS 網路代理程式都可以發出驗證 Cookie。AD FS 網路代理程式會擷取它所接收的 AD FS 安全性權杖,並將該權杖當做 Cookie 值。啟用 AD FS 的網頁伺服器的好處是不必設定可簽署和確認自己 Cookie 的公開/私密金鑰組。Federation Service 會發佈驗證其權杖所需的全部資訊。

在 Federation Service 上,Cookie 中的安全性權杖會保留用戶端的組織宣告。組織宣告可對應到特定資源的連出宣告。AD FS 網路代理程式也可以驗證和使用 Federation Service 所發出的 Cookie。當用戶端到達啟用 AD FS 的網頁伺服器時,啟用 AD FS 的網頁伺服器會接收 Cookie。接下來,AD FS 網路代理程式可驗證此 Cookie 並使用其內含的宣告。如需 Federation Service 如何使用權杖、宣告和驗證 Cookie 的相關資訊,請參閱了解 Federation Service 角色服務

驗證 Cookie 可加速單一登入 (SSO) 執行。當 Federation Service 驗證用戶端一次後,驗證 Cookie 就會寫入用戶端。Federation Service 會產生和使用驗證 Cookie 的內容,而同盟伺服器 Proxy 無法讀取這些內容。進一步的驗證會透過 Cookie 而執行,而非重複收集用戶端認證。如需同盟伺服器 Proxy 的相關資訊,請參閱了解 Federation Service Proxy 角色服務

下圖顯示了驗證 Cookie 的內容和使用驗證 Cookie 的 AD FS 角色服務。AD FS 網路代理程式包含 AD FS 網路代理程式驗證服務和 AD FS Windows 權杖型代理程式延伸。

驗證 Cookie 的內容

驗證 Cookie 一律是工作階段 Cookie。驗證 Cookie 會簽章但不會加密,這是在 AD FS 中必須使用傳輸層安全性/安全通訊端層 (TLS/SSL) 的原因之一。

帳戶夥伴 Cookie

帳戶夥伴 Cookie 可加速 SSO 執行。執行互動式帳戶夥伴成員資格探索後,如果帳戶夥伴 Cookie 具備有效權杖,則會將 Cookie 寫入用戶端。進一步的互動會使用此 Cookie 中的資訊,而不會提示用戶端重新提供帳戶夥伴成員資格資訊。帳戶夥伴 Cookie 是在帳戶夥伴探索處理程序中設定的。如需帳戶夥伴探索的相關資訊,請參閱了解 Federation Service 角色服務

帳戶夥伴 Cookie 是長期存在的永久 Cookie。它不會進行簽章和加密。

登出 Cookie

登出 Cookie 可加速登出的執行。每當 Federation Service 發出權杖時,會將權杖的資源夥伴或目標伺服器新增至登出 Cookie。當它接收到登出要求,Federation Service 或 Federation Service Proxy 會將要求傳給每部權杖目標伺服器,要求它們清理資源夥伴或啟用 AD FS 的網頁伺服器可能已寫入用戶端的任何驗證假象,如快取 Cookie。在資源夥伴案例中,它會將清理要求傳送到用戶端已使用的任何啟用 AD FS 的網頁伺服器。

登出 Cookie 一律是工作階段 Cookie。它不會進行簽章和加密。


目錄