2015-06-04 39 views
2

我們擁有一個具有自己身份驗證的應用程序,爲此我們最近添加了OAuth2支持。公司客戶可以爲他的ADFS或Google域指定數據,我們用它來自動註冊並登錄其用戶。在每個OAuth2授權請求上提示AD憑證

現在,問題是切換憑據。當我們從我們的應用程序註銷時,單擊登錄按鈕(重定向到配置的ADFS OAuth2授權端點)將立即驗證用戶並將其發送回我們的應用程序,並使用其當前憑證的有效代碼。

Google端點有一個特殊參數approval_prompt,我們可以使用它來強制中間步驟,在該步驟中用戶可以切換其憑據。我不認爲ADFS有。

我們還有其他什麼解決方案?是否可以在ADFS服務器上配置一些提示用戶爲每個授權請求輸入憑據的內容?

+0

你找出解決方案ŧ這個問題?我遇到與OAuth和ADFS相同的問題。根據我讀的內容,看起來我可以將'prompt = login'附加到'/ adfs/ls/authorize',但它似乎沒有做任何事情。 – limc

+0

對於我們添加參數prompt = login到que URL正在使用OAuth2 – Troglo

回答

0

這裏的那些URL參數是如何工作的,是最好的,我理解他們:

  • 娃是我們請求的操作。到目前爲止,我只看到了兩個值:wsignin1.0和wsignout1.0
  • wfresh與緩存憑據的最大年齡有關,但我並不完全理解它。 0表示不使用緩存的憑證。
  • wtrealm是在ADFS中配置的AppID。這告訴ADFS服務器哪個應用正在嘗試進行身份驗證。對於我們來說,這是該應用的基礎網址。
  • wctx是請求後從ADFS服務器返回到應用程序的一些特定於應用程序的數據。由於我們使用標準的System.IdentityModel設置,因此它會處理解析並對此值作出反應,而不是我們的代碼。裏面有一個ru參數編碼。這是返回網址。這就是我們如何回到我們來自的頁面。
  • WCT是認證請求
+0

所以...任何想法我可以使用什麼? :-) –

+2

這些參數適用於ws-fed而不適用於oauth。 – nzpcmad

0

對於我們添加參數提示=登錄闕授權請求URL的時間戳正在與OAuth2用戶:

/ADFS /的oauth2 /授權RESPONSE_TYPE =代碼& CLIENT_ID = XXX &資源= YYY & REDIRECT_URI = ZZZZ &提示=登錄

相關問題