使用表单身份验证有哪些安全风险?

时间:2011-05-10 18:58:20

标签: .net asp.net security

专家,

我们希望为将来的项目提供更安全的登录系统,而不是使用会话状态来判断用户是否已登录。如果我的理解是正确的,一旦通过表单身份验证对用户进行身份验证,就会在用户计算机上生成cookie。这有多安全? cookie是否容易受到类似于会话劫持的劫持形式的影响?如果用户不接受cookie怎么办?有没有更好的方法我应该看看?

提前致谢。

2 个答案:

答案 0 :(得分:2)

简短的回答是它和你一样安全。大多数基于表单的身份验证系统使用cookie来维护与最终用户的会话,但如果您选择这样做,则可以使用其他技术。

对于基于cookie的身份验证,您需要创建一种标识经过身份验证的用户的令牌。这个令牌需要是一个不容易被猜到的东西。此令牌可以在cookie中传递或存储在会话中,在这种情况下,会话cookie存储在客户端计算机上,并且身份验证令牌只能在连接的服务器端访问。如果您不希望轻松删除Cookie,则可以将Cookie设置为安全 HttpOnly ,前者只能通过HTTPS发送,并且后者使得JavaScript无法访问。

如果最终用户不接受cookie,那么会话ID通常会放在不安全的URL中。

请查看此链接Session Fixation

答案 1 :(得分:0)

用户的会话ID不用作身份验证cookie的一部分 - 身份验证cookie,会话cookie是独立的。

为防止会话劫持,请阅读此帖 Foiling Sessiong Hijacking Attempts


要提供安全连接,您必须使用Https