我需要幫助,我創建在asp.net MVC3應用程序,我想的是設定產生生成它自己的會話ID在ASP.NET MVC#
var str = Math.floor(Math.random() * (2000 - 1000 + 1)) + 1000;
document.write("Session ID::" + str);
我的自定義會話ID上面的代碼用java腳本函數編寫,現在我想在ASP.NET MVC3的會話ID中設置該數字。
我需要幫助,我創建在asp.net MVC3應用程序,我想的是設定產生生成它自己的會話ID在ASP.NET MVC#
var str = Math.floor(Math.random() * (2000 - 1000 + 1)) + 1000;
document.write("Session ID::" + str);
我的自定義會話ID上面的代碼用java腳本函數編寫,現在我想在ASP.NET MVC3的會話ID中設置該數字。
快速谷歌搜索結果顯示,此博客條目解釋如何覆蓋在asp.net會話ID:
http://weblogs.asp.net/anasghanem/archive/2008/12/16/programmatically-changing-the-session-id.aspx
總之:使用類SessionIDManager並調用該方法SaveSessionId設置自己的會話ID:
SessionIDManager manager = new SessionIDManager();
string mySessionId = ...calculateYourOwnSessionId...;
bool redirected = false;
bool IsAdded = false;
manager.SaveSessionID(Context, mySessionId, out redirected, out IsAdded);
這應該是不以加密安全隨機數生成器生成您的自定義會話價值,你要介紹的vuln一切代價避免會話管理中的應用程序的實用程序。
如果你需要獲得當前會話標識符,你可以做的兩種方式是一個:
// If in a page or user control:
string sessionId = this.Session.SessionID;
// In ASP.NET in a normal class:
string sessionId = System.Web.HttpContext.Current.Session.SessionID;
瞭解更多關於它here。
爲什麼你想這樣做? – Jan
因爲在我的應用程序中,我需要在會話ID中給出自定義值 –