繁体   English   中英

ASP.NET Forms身份验证 - 记住我的问题

[英]ASP.NET Forms Authentication - Remember Me issue

我在我的ASP.NET webapp的Forms身份验证中使用“记住我”。 如果我使用有效凭据登录并选择“记住我”,我可以登录,一切都很好。 现在,如果我关闭窗口,打开SQL服务器并更改密码然后尝试打开webapp,它会绕过登录过程并使用“记住我”中的旧缓存凭据并允许我登录。

这是正常的行为吗? 如果是这样,我唯一能想到的就是删除“记住我”选项或使用非常短的过期时间。

有什么建议?

这个是正常的。 原因是为了记住用户,需要将某种形式的密钥存储在客户端机器上以允许绕过登录过程。 假设您使用的是ASP.NET的集成成员资格功能,那么您实际上在cookie中存储了一个标识用户的唯一令牌。 由于各种原因,这与密码无关。 这意味着自动登录与密码无关,因此更改它不应在逻辑上影响此功能。

如果担心安全问题,您确实可以考虑缩短记忆保持有效的时间跨度。 或者正如您所提到的,如果它具有太大的风险,您可以完全避开此功能。 密码记忆是在绝大多数网站上实现的常见功能,如果您使用ASP.NET的集成成员身份功能,您的安全风险将被最小化,但最终您需要检查您的特定情况并确定此功能是否使感觉适合你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM