[英]how safe is it to use session variables? ASP.NET C#
我的登錄頁面中有以下代碼:
Session["user"] = user.Text;
cmd.Parameters.AddWithValue("@user", Session["user"]);
reader = cmd.ExecuteReader();
我看到此鏈接使用會話變量有多安全-ASP.NET / C#
我想知道是否需要更改這種登錄類型。
我的問題是,會話是否可以安全使用,是否有可能從其他用戶那里竊取會話並以該用戶身份或類似身份進入網站。
我嘗試使用成員身份,但無法更改注冊,所以我轉到了Session。
只要使用HTTPS,就可以使用會話狀態跟蹤當前登錄用戶。 會話變量存儲在服務器內存中(默認情況下) 。
我們都在Classics ASP和ASP.Net 1.0中使用了類似的方法(在ASP.Net 2.0中加入成員資格之前) 。
主要缺點是維護 。 當應用程序具有太多頁面和太多具有不同授權的用戶時,很難維護。
正如已經說過的,只要您使用https協議並且您的應用程序服務器是安全的,就不必擔心會話安全性。
但是您應該考慮使用Identity框架而不是舊的Membership框架。 自2013年以來,身份是新的身份驗證.NET標准,允許SSO,角色提供者,基於聲明的身份驗證等...
請參閱http://www.asp.net/identity/overview/getting-started/introduction-to-aspnet-identity以了解為什么應該選擇身份而不是成員身份)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.