2011-12-03 125 views
2

我有几个关于ASP.net和一般安全性的问题。ASP.net安全问题“授权”和“.ASPXAUTH”Cookie

  1. 哪里存储“授权”cookie?当我登录系统,然后决定注销时,我想这足以从我的浏览器中删除cookie,但这不起作用。然后我重新考虑这些cookie是由浏览器存储的密码提供的,但又错了,因为我没有在那里看到我的网站的登录/密码信息。 而且由于“授权”cookie总是返回401代码的响应,所以用户始终保持登录系统,我无法理解如何注销。

  2. 推荐“.ASPXAUTH”超时 - 30分钟,然后cookie过期。虽然我登录,但建议30分钟后我需要再次登录(即使滑动属性为true,我也可以只留下一页超过30分钟)。但是,当我登录到大多数网站(例如stackoverflow)时,即使在延迟一周之后,我也可以在此登录。它是如何实现的,网站是否设置了更长时间的超时时间或者还有其他一些技巧?

谢谢!

回答

3

回答问题1:

使用FormsAuthentication.Signout();注销。这将删除身份验证cookie。身份验证cookie存储在http请求中,并作为每个其他cookie存储在响应中。

耸耸你的第二个问题:你的cookie应该在2880分钟后过期。我不知道你为什么会在30分钟后到期。此外滑动过期通常起作用。您的浏览器设置可能有一些影响吗?另一种可能性可能是Visual Studio内部Web服务器的行为不像真正的Web服务器。尝试在IIS上进行设置。

编辑: 我想回答你的第二个问题是here

+0

感谢响应! 第一:你能解释它是如何在内部工作的,我的意思是认证cookie实际存在于哪里? 2nd: <身份验证> – baio

+0

您的登录表单是否为真正的WCF服务? – slfan

+0

是的,但使用表单身份验证。但我认为这里的背景并不重要,关键是ASP Forms认证 – baio