2013-03-15 53 views
3

帶有「POST」綁定的SAML 2.0:服務提供商是否有任何方法要求IdP對特定請求進行用戶重新身份驗證?我的意思是第一次網絡用戶輸入登錄名/密碼,而不是在瀏覽器內存中存儲某種cookie,以便記住用戶,並且下次在會話中不再要求他輸入密碼。我希望SP能夠執行重新認證,這意味着一個命令來詢問用戶密碼再次服務提供商如何在IdP服務器上強化密碼提示?

我發現的唯一類似的事情(ForceAuthn),它並不能幫助我:

<samlp:AuthnRequest ForceAuthn="true" ... > 

根據文檔ForceAuthn正是我所需要的,但由於某些原因,Microsoft ADFS 2.0完全忽略了它不詢問用戶密碼

+0

強制authn是要走的路,從我在ADFS文檔中可以讀到的內容,它是受支持的。你有什麼信息嗎?我覺得你沒有訪問ADFS日誌? – 2013-03-16 07:25:27

+0

不,我沒有收到任何消息,我相信我可以在星期一訪問它的日誌,我會告訴你是否有任何有價值的東西 – YMC 2013-03-17 04:44:13

+0

用戶如何在ADFS(IDP)上進行身份驗證?如果是Kerberos或NTLM,我認爲瀏覽器會默默地重新認證用戶,並且在瀏覽器關閉/重新打開(僅限NTLM)之前,用戶不會再與IDP進行任何交互。它真的依賴於用戶的IDP認證機制,並且是否支持ForceAuthn。 – Ian 2013-03-19 16:33:49

回答

3

ADFS在IdP端登錄用戶的默認行爲是401(NTLM)質詢,所有主流瀏覽器都會緩存用戶的id/pw輸入。即使你指定「ForceAuthn = \」true \「」,它也不會提供幫助,因爲客戶端瀏覽器會再次發送緩存的id/pw。

有一種方法可以改變ADFS登錄策略的默認行爲以採用html表單登錄。假設您在默認位置安裝ADFS,您可以找到c:\ inetpub \ adfs \ ls \ web.config。並且存在<localAuthenticationTypes>元素,並確保您將<add name="Forms" page="FormsSignIn.aspx" />作爲其中的第一個元素。您也可以自定義登錄表單頁面。