我已经向我的网络应用程序添加了功能,允许某人使用密码创建一个帐户,然后对其进行散列和存储。
我希望能够允许用户登录到我的网站并使用检查用户有权访问的页面。然后在一段时间后会话将过期,用户必须再次登录。
有一个注销按钮也很好。
我只是想知道设置这种安全性的最佳方法是什么,因为我以前没有这样做过。
我已经向我的网络应用程序添加了功能,允许某人使用密码创建一个帐户,然后对其进行散列和存储。
我希望能够允许用户登录到我的网站并使用检查用户有权访问的页面。然后在一段时间后会话将过期,用户必须再次登录。
有一个注销按钮也很好。
我只是想知道设置这种安全性的最佳方法是什么,因为我以前没有这样做过。
你做的那个轮子肯定很好,但为什么不使用已经发明的呢?
http://support.microsoft.com/kb/301240
至于会话,您可以使用Session["NameOfSession"]
创建一个变量,但不要忘记Session.Abandon()
在用户注销时使用。
由于 HTTP 是离线协议,因此应该在客户端和服务器之间发送一些额外数据,使服务器知道您已登录每个请求。像这样的东西是保存这些信息的 cookie 文件。在每次请求时,服务器都会检查这些数据并决定您是否已经登录。一旦您找到用户名并通过,您就可以创建此文件,设置其生命周期并附加到服务器响应。在此之后,客户端浏览器将随每个请求自动将其发送到您的服务器。一旦文件过期,它将被客户端浏览器自动删除。
您可以手动维护此功能或信任 FormsAuthentication。