2010-08-04 85 views
2

我對會話變量有一個奇怪的問題。我在會話變量中存儲了一些憑證,如:ASP .NET中的會話問題

Session["login"] = "foo"; 
Session["password"] = "oof"; 

頁面部署在某個服務器上。在登錄頁面後,我注意到其他用戶(在同一網絡區域中)調用該頁面也被登錄了!我認爲這些數據只會存儲在我的服務器上(我想服務器會發送一些cookies來確保這些數據),但事實並非如此。

我當然在某個地方缺乏知識。這是怎麼回事?

謝謝

+6

凡是在*你*會話肯定不應該給別人看到,所以我想看看這外面的問題。如果需要編寫簡單的網頁來存儲用戶特有的會話值(例如IP地址,假設您不通過代理),另一個顯示它。這應該允許您證明會話是否按照您所描述的方式共享。我認爲它更可能是你的代碼在別的地方做錯了某些事情(例如,將應用程序狀態或某個靜態變量存儲在某處)。 – Chris 2010-08-04 10:06:18

+0

是的,我也這麼認爲。我正在調查這個問題。謝謝。 – 2010-08-04 10:10:52

+1

找到了。這個問題的根源是代碼背後的全局變量:/ – 2010-08-04 10:26:19

回答

1

爲了安全起見,我不建議在會話變量中存儲密碼。如果您必須使用會話變量,請不要以明文形式存儲密碼。改用一些加密方法。