分享方式:


Microsoft Entra ID 中用於存取內部部署網站的 Cookie 設定

Microsoft Entra ID 有可透過應用程式 Proxy 存取內部部署應用程式的存取和工作階段 Cookie。 了解如何使用應用程式 Proxy Cookie 設定。

應用程式 Proxy 會使用下列存取和工作階段 Cookie 設定。

Cookie 設定 預設 描述 建議
使用僅限 HTTP Cookie 使用 [是] 時,可讓應用程式 Proxy 在 HTTP 回應標頭中包含 HTTPOnly 旗標。 此旗標提供額外的安全性優點,例如可防止用戶端指令碼處理 (CSS) 複製或修改 Cookie。



在我們支援「僅限 HTTP」設定之前,應用程式 Proxy 是透過受保護的傳輸層安全性 (TLS) 通道來加密和傳輸 Cookie,以防止修改。 
為了獲得額外的安全性優點,請使用 [是]



針對不需要存取工作階段 Cookie 的用戶端或使用者代理程式,請使用 [否]。 例如,針對透過應用程式 Proxy 連線到「遠端桌面閘道伺服器」的遠端桌面通訊協定 (RDP) 或 Microsoft Terminal Services Client (MTSC),請使用 [否]
使用安全的 Cookie 使用 [是] 時,可讓應用程式 Proxy 在 HTTP 回應標頭中包含 Secure 旗標。 安全 Cookie 可藉由透過 TLS 安全防護通道 (例如 HTTPS) 傳輸 Cookie 來提升安全性。 TLS 會防止以純文字傳輸 Cookie。 為了獲得額外的安全性優點,請使用 [是]
使用永續性 Cookie 使用 [是] 時,可讓應用程式 Proxy 將其存取 Cookie 設定為在網頁瀏覽器關閉時不過期。 永續性會持續到存取權杖到期為止,或直到使用者手動刪除永續性 Cookie 為止。 由於讓使用者保持在已獲授權狀態會帶來安全性風險,因此請使用 [否]



建議只有針對無法在處理序之間共用 Cookie 的舊版應用程式,才使用 [是]。 最好是更新您的應用程式以處理處理序之間的 Cookie 共用,而不要使用永續性 Cookie。 例如,您可能需要使用永續性 Cookie,才能允許使用者從 SharePoint 網站以總管檢視開啟 Office 文件。 在沒有永續性 Cookie 的情況下,如果未在瀏覽器、總管處理序及 Office 處理序之間共用存取 Cookie,此作業就會失敗。

SameSite Cookie

未指定 SameSite 屬性的 Cookie 會被視為設定為 SameSite=LaxSameSite 屬性會宣告 Cookie 如何限制在相同的網站內容。 當設定為 Lax 時,Cookie 只會傳送至相同網站要求或最上層導覽。 不過,應用程式 Proxy 需要在第三方內容中保留這些 Cookie,才能讓使用者在其工作階段期間妥善登入。 由於需求,已進行更新:

  • SameSite 屬性設定為 None。 應用程式 Proxy 工作階段 Cookie 在第三方內容中正確地傳送。
  • 將 [使用安全的 Cookie] 設定的預設值設定為 [是]。 Chrome 會拒絕不使用 Secure 旗標的 Cookie。 此變更會套用到所有透過應用程式 Proxy 發佈的現有應用程式。 應用程式 Proxy 存取 Cookie 會設定為「安全」,且只能透過 HTTPS 傳輸。 此變更只會套用至工作階段 Cookie。

此外,如果您的後端應用程式有需要第三方內容的 Cookie,您必須將應用程式變更為使用 SameSite=None,以明確加入宣告。 應用程式 Proxy 會將 Set-Cookie 標頭轉譯為其 URL,並遵守設定。

若要使用 Microsoft Entra 系統管理中心來進行 Cookie 設定:

  1. 以至少 應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心
  2. 瀏覽至 [身分識別]>[應用程式]>[企業應用程式]>[應用程式 Proxy]
  3. 在 [其他設定] 底下,將 Cookie 設定設為 [是] 或 [否]
  4. 選取儲存套用變更。

若要查看應用程式目前的 Cookie 設定,請使用下列 PowerShell 命令:

Get-AzureADApplicationProxyApplication -ObjectId <ObjectId> | fl * 

在下列 PowerShell 命令中,<ObjectId> 是應用程式的 ObjectId。

僅限 Http Cookie

Set-AzureADApplicationProxyApplication -ObjectId <ObjectId> -IsHttpOnlyCookieEnabled $true 
Set-AzureADApplicationProxyApplication -ObjectId <ObjectId> -IsHttpOnlyCookieEnabled $false 

安全 Cookie

Set-AzureADApplicationProxyApplication -ObjectId <ObjectId> -IsSecureCookieEnabled $true 
Set-AzureADApplicationProxyApplication -ObjectId <ObjectId> -IsSecureCookieEnabled $false 

持續性 Cookie

Set-AzureADApplicationProxyApplication -ObjectId <ObjectId> -IsPersistentCookieEnabled $true 
Set-AzureADApplicationProxyApplication -ObjectId <ObjectId> -IsPersistentCookieEnabled $false