共用方式為


Azure AD B2C 的 Cookie 定義

下列各節提供 Azure Active Directory B2C (Azure AD B2C) 中使用的 Cookie 相關信息。

SameSite

Azure B2C 服務與 SameSite 瀏覽器設定相容,包括 對 Secure 屬性的支援SameSite=None

為了保護網站的存取,網頁瀏覽器將引進新的安全預設模型,假設除非另有指定,否則應該保護所有 Cookie 不受外部存取的保護。 Chrome 瀏覽器是第一個實作這項變更,從 2020 年 2 月的 Chrome 80 開始。 如需在 Chrome 中準備變更的詳細資訊,請參閱 開發人員:準備新的 SameSite=None;在 Chromium 部落格上保護 Cookie 設定

開發人員必須使用新的 Cookie 設定 SameSite=None來指定跨網站存取的 Cookie。 SameSite=None當屬性存在時,必須使用額外的Secure屬性,以便只能透過 HTTPS 連線存取跨網站 Cookie。 驗證及測試所有應用程式,包括那些使用 Azure AD B2C 的應用程式。

如需詳細資訊,請參閱

Cookie

下表列出 Azure AD B2C 中使用的 Cookie。

名稱 網域 到期 目的
x-ms-cpim-admin main.b2cadmin.ext.azure.com 瀏覽器會話結束 跨租使用者保存用戶成員資格數據。 用戶是成員的成員和成員資格層級(系統管理員或使用者)。
x-ms-cpim-slice b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束 用來將要求路由傳送至適當的生產實例。
x-ms-cpim-trans b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束 用於追蹤交易(對 Azure AD B2C 的驗證要求數目)和目前的交易。
x-ms-cpim-sso:{Id} b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束 用於維護 SSO 工作階段。 開啟 [讓我保持登入] 時,此 Cookie 會設定為 persistent
x-ms-cpim-cache:{id}_n b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束,驗證成功 用於維護要求狀態。
x-ms-cpim-csrf b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束 用於 CRSF 保護的跨網站要求偽造令牌。 如需詳細資訊,請參閱 跨網站要求偽造令牌 一節。
x-ms-cpim-dc b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束 用於 Azure AD B2C 網路路由。
x-ms-cpim-ctx b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束 上下文
x-ms-cpim-rp b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束 用於儲存資源提供者租用戶的成員資格數據。
x-ms-cpim-rc b2clogin.com、login.microsoftonline.com、品牌網域 瀏覽器會話結束 用於儲存轉寄 Cookie。
x-ms-cpim-geo b2clogin.com、login.microsoftonline.com、品牌網域 1 小時 用來做為提示來判斷資源租使用者主地理位置。

跨網站要求偽造令牌

為了防止跨網站要求偽造 (CSRF) 攻擊,Azure AD B2C 會套用同步器令牌策略機制。 如需此模式的詳細資訊,請參閱 跨網站偽造要求預防 一文。

Azure AD B2C 會產生同步器令牌,並將它新增至兩個位置:在標示為 x-ms-cpim-csrf的 Cookie 中,以及傳送至 Azure AD B2C 之頁面 URL 中名為 csrf_token 的查詢字串參數。 當 Azure AD B2C 服務處理來自瀏覽器的連入要求時,它會確認令牌的查詢字串和 Cookie 版本都存在,而且它們完全相符。 此外,也會驗證令牌內容的元素,以針對進行中驗證的預期值進行確認。

例如,在註冊或登入頁面中,當用戶選取 [忘記密碼] 或 [立即註冊] 連結時,瀏覽器會將 GET 要求傳送至 Azure AD B2C,以載入下一頁的內容。 載入內容的要求 Azure AD B2C 會選擇傳送和驗證同步器令牌作為額外的保護層,以確保載入頁面的要求是進行中的驗證結果。

同步器令牌是無法識別用戶的認證,而是系結至作用中唯一驗證會話。