【发布时间】:2012-08-01 07:44:05
【问题描述】:
当我们在任何 ASP.NET 框架(ASP.NET MVC、Web 窗体等)中使用 ASP.NET 表单身份验证时,我们会将身份验证 cookie 保存在客户端的浏览器中。作为最佳实践,我们将 cookie 设置为 HttpOnly 且安全。我们还通过 SSL 进行所有交易。无论我们使用什么样的机制来验证用户(OAuth、ASP.NET Membership Provider 等),我们仍然需要持久化验证以获得更好的用户体验。
有了所有这些,我假设有人仍然可以从客户端浏览器中获取 cookie 并使用这些 auth cookie 值发出请求。服务器无法检测到这一点,我们会将受保护的数据提供给其他人。
我认为降低风险的一个想法是,每次当她/他尝试采取一些严肃的行动(例如更改电子邮件地址、访问个人资料信息等)时询问客户的密码,但这并没有'什么都解决不了,对客户来说可能很烦人。
对于此类问题,您有什么积极采用的方法吗?或者在客户端浏览器中保持身份验证的最佳方法是什么?
【问题讨论】:
标签: asp.net security browser ssl forms-authentication