Asp.net-Mvc

使用 Azure ACS 和 ADFS 的 MVC3 站點在使用 Firefox 和 Chrome 時不斷提示輸入憑據

  • July 22, 2015

我創建了一個基本的 MVC 3 網站,它使用 Windows Azure 的訪問控制服務 (ACS) 對 Active Directory 聯合服務 (ADFS) 端點執行使用者身份驗證。我按照“添加 STS 參考”嚮導進行操作,該站點執行良好,並且在 IE 中完美地驗證了使用者。但是,當我使用 Chrome 或 Firefox 時,它會一遍又一遍地不斷提示我輸入憑據。

我在 technet 上發現這篇文章提到了與 Firefox 相關的問題,但沒有提到 Chrome 的修復,我也不覺得修復 Firefox 所需的步驟在現實世界中是實用的(即我不能指望最終使用者做這個)

> > http://social.technet.microsoft.com/wiki/contents/articles/ad-fs-2-0-continuously-prompted-for-credentials-when-using-firefox-3-6-3.aspx > > >

有沒有其他人碰到這個障礙?我究竟做錯了什麼?

在 Microsoft 代表 (Adam Conkle) 在TechNet上的幫助下(向下滾動到評論),我終於有了這個問題的答案。

事實證明,執行使用者身份驗證的 ADFS 網站(該網站在安裝 ADFS v2.0 期間在 IIS 中設置)預設配置為集成 Windows 身份驗證 (IWA)。IWA 在 IIS 中配置為使用擴展的身份驗證保護 (EPA),這就是問題所在。顯然,大多數其他瀏覽器還不支持 EPA,這就是 Firefox 和 Chrome 不斷提示輸入憑據的原因。

兩種選擇…

  1. 繼續使用 IWA,但在 IIS 中為網站關閉 EPA(在此處描述
  2. 關閉 IWA 以支​​持基於表單的身份驗證(在此處描述

引用自:https://stackoverflow.com/questions/5724377