2014-02-06 64 views
-1

我們正在嘗試創建一些將在同一個域中運行的.Net應用程序。 例如:www.myintrasite.net/myapplication.Net在同一個域上登錄

我們需要創建一個SSO系統,我們閱讀一些文章,但我們看到的是Cookie驅動的解決方案。

的問題是,我們只需要在登錄環境共享會話。

如果我們管理cookies來共享相同的會話,所有的應用程序將共享相同的會話密鑰,但我們需要分享只有一個會話密鑰,像「id_person」。

一個簡單的例子是具有名爲「ORDER_ID」的會話密鑰,以共享會話兩個應用程序,應用程序A將覆蓋應用程序B的會話密鑰,這可能會導致一些怪異品行。

有什麼解決方案的「會議上下文」或其他?

在此先感謝。

+0

爲什麼有人只是否定這個問題,甚至不解釋爲什麼? Java用戶... – Borgo

回答

2

最好的解決辦法是要找到here。它向您展示瞭如何正確設置它。

我已經做了它的方式,設置了「中央登錄」處理所有登錄。然後,我有,一旦用戶通過驗證的是顯示多個應用程序。我有應用程序1,應用程序2和應用程序3.如果用戶只能訪問應用程序2,那麼他只能看到該應用程序。您需要將鏈接中提到的內容放在所有應用程序中。在我的登錄按鈕的點擊,我把

FormsAuthentication.SetAuthCookie(User.Identity.Name.ToString(), 假);

這將設置用於驗證用戶已登錄並可以查看您的其他應用程序的授權cookie。 Here是另一個鏈接也會幫助你。

我的是比這更復雜一點,因爲我用的是Active Directory和窗體身份驗證。希望這可以幫助你開始。