我有以下結構ASP.NET 4.0單點登錄失敗
www.website.com - > ASP.NET 4.0的Web站點
WWW NET 4.0,Web應用程序
兩者都對相同的SQL數據庫執行表單身份驗證,並使用框架ASP.NET成員資格和角色。我可以登錄到每個部分就好(相同的用戶/密碼),但身份驗證不會結束,即如果我登錄到/
,然後單擊指向/blog/
的鏈接,/blog/
認爲我是匿名並提示再次登錄。我已經做了基本
即
- 在這兩個網站以及應用程序相同的
<authentication mode="Forms">
web.configs - 相同
<machineKey>
部分(是的,相同的validationKey和decryptionKey)
於是我檢查了生成的cookie,並注意到網站和網絡應用似乎在處理不同的cookie。通過website.com/blog
- .ASPXFORMSAUTH-27604f05-86ad-47ef-9e05-950bb762570c
- .ASPXROLES創建
餅乾創建由website.com
餅乾
- .ASPXFORMSAUTH
,我認爲這是問題,但我看到它,儘管有相同<authentication>
部分,它看起來像
<authentication mode="Forms">
<forms timeout="30" slidingExpiration="true" name=".ASPXFORMSAUTH" enableCrossAppRedirects="true" protection="All" cookieless="UseCookies"/>
</authentication>
我看過其他幾個職位像 Single Sign On with Forms Authentication 以及 http://msdn.microsoft.com/en-us/library/eb0zx8fc.aspx
有還有一些我現在無法回憶的帖子。我已經經歷過他們(全部?),但我仍然陷入困境。如果需要,我可以很樂意提供更多的調試數據。
會真的很感謝任何人可能有的提示!我認爲我在這一個上打了一堵牆!
我建議看看如果你不能讓你的修改變得可配置並讓維護人員接受它。在我看來,它主要是在同一個域上的多個引擎之間進行權衡,並且單點登錄 - 您可能必須選擇其中一個或另一個,但用戶不應該爲了使其正常工作而進行調試...... – jmoreno