2011-08-31 133 views
0

也許我的問題是愚蠢的,但它讓我瘋了,你看我有這個應用程序的會話註銷,即使我用後不到期Session.Abandon(),Session.Clear(),和Session.Removeall( )。我一直在搜索整個互聯網,但沒有運氣,我真的希望我能得到一些幫助。說我有用戶X,如果我做了以下任何一個可以與X的帳號登錄:用X的用戶名和密碼會話未過期?

1-登錄。 012-2-參加會議「.ASPXFORMSAUTH」信息。從X的賬戶 4- 3-註銷添加會話「.ASPXFORMSAUTH」使用火狐狸‘添加的cookie功能’,例如它的價值。 5鍵入URL並點擊進入 頁面剛剛打開,它真的讓我瘋狂!

在此先感謝

+0

什麼樣的會話您使用的是項目符號點3在說明部分? InProc方式? SqlServer的?還有別的嗎? – FishBasketGordo

+0

SESSIONID在「註銷」之前和之後保持不變? – everton

+1

頁面是否顯示_same_ SessionId?我希望一個新的會議悄然開始。 –

回答

-1

在這種情況下,你必須在會話的額外的標誌(如「主動」),它可以註銷期間設置爲false。在此基礎上,你可以rediect我不知道是否有被定義的方式來處理這個用戶登錄或任何你想要的其他一般網頁..

,但就像我說我會做一些事情。

通過使用FormsAuthentication.Signout()已經註銷用戶並試圖通過使用同一個cookie(他以某種方式訪問​​它)來攻擊系統以訪問網站的經過身份驗證的部分的情形。 在這種情況下,微軟的建議還建議使用持久性機制來記錄/跟蹤用戶註銷,並使用該信息將其重定向到登錄頁面(並再次清除cookie),以便在後續僞造請求中使用。

Reference:

+0

謝謝您的回答,我是想到這樣的事情,但因爲我使用ASP.net會員提供商,我認爲有一個更簡單的方法。 – Feras

+0

-1這是個壞主意。改用FormsAuthentication方法。 –

+0

我一直在使用FormsAuthentication.Signout(),但仍然在再次添加cookie時,它可以進行身份​​驗證...... – Feras

0

您還需要調用FormsAuthentication.SignOut()

+0

的答案和評論我一直在調用Session.RemoveAll(),Session.Abandon()和FormsAuthentication.Signout(),但問題仍然存在...... :( – Feras