我通过网络阅读理解它的方式是声明存储为cookie,现在我将用户的角色添加到声明集合中,因此它将保存到声明Cookie中。现在这很好,因为每次我在我的ASP MVC
控制器中检查授权属性时,它会省去数据库轮次跳转以检索用户角色。
答案 0 :(得分:12)
Cookie几乎是维护网站身份验证会话的标准方法。除非您使用cookiless机制,它将会话作为查询字符串传输并且显示不太安全。无论您是否将声明存储在cookie中,您仍然依赖cookie安全机制来维护页面命中之间的客户端身份。该机制已存在多年,只要您遵循Microsoft的实施指南,就会被认为是安全的。
假设您使用的是带有WIF库的.NET 4.5或.NET 4.0,您可以在服务器上缓存声明,而不是在cookie中发送声明。这是一些基本的documentation。通常建议如果你有很多声明,并且cookie太大而无法在每个页面上进行。
答案 1 :(得分:7)
正如Oleg所写,标准cookie加密被认为是安全的。
此处的讨论< Server side claims caching with Owin Authentication>也可能很有趣。