2015-01-06 26 views
0

我正在開發一個使用asp.net的網站,我給了用戶兩種登錄可能性。 第一個使用WIF-ADFS,第二個使用手動輸入。Web-App自動選擇登錄方法:WIF-ADFS或手動

事情是,我希望應用程序檢查某個用戶是否可以使用SSO。 如果是,請執行SSO,如果不是,則使應用程序自動選擇第二個登錄可能性。

問題是是否可以實現我的應用程序來做到這一點。

回答

0

簡短的回答是:如果您沒有所有用戶的「列表」,並且所有用戶都具有其身份驗證選項/方法,則可能不會。在那裏你必須給他們提供選項(又名WAYF或HRD)....

WIF + ADFS使用WS-FED,實現沒有優雅的回落。 ADFS服務器只顯示一個錯誤頁面。舊的ADFS版本有一些有限的選項來修復它。 S2012R2上較新的ADFS不能進行擴展/定製(客戶端的JavaScript可以使用除外)。

0

如果用戶想要登錄,您首先沒有自動機制來確定他是否可以執行SSO(除了可以控制所有瀏覽器並向UserAgent添加內容)。

所以剩下的就是顯示一個登錄表單,包含本地數據和一些用於登錄ADFS或Google或Facebook等的按鈕。

微軟在Azure身份驗證服務中這樣做,Thinktecture使用IdentityServer(我認爲)支持它,而MVC有一個這樣的操作模板(您可以使用ASP.NET Identity V2)。