作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一种情况,我也想输入匿名用户的详细信息。所以我在个人资料中为他们创建了一个用户 ID。当我设置用户详细信息时
FormsAuthentication.SetAuthCookie(username, true);
我想要与 User.Identity.Name 用户名相关的详细信息,但 User.Identity.IsAuthenticated 为 false。现在我明白了。我只想在特定登录后将其设置为 true。
最佳答案
FormsIdentity 类被固定为始终返回 true。所以这是无法改变的。只要名称不为空,即使是 GenericIdentity 也会返回 true。
解决方法是创建您自己的 IIdentity 实现,并替换 Global.asax 中 Application_PostAuthenticateRequest 事件中的表单标识。这是一种经过验证的安全解决方案。
另请考虑您是否真的想这样做。最好的做法是,未经身份验证的用户是匿名的,他们没有名字,而且内置身份类以这种方式工作的原因也很详细。
关于c# - 如何在表单例份验证中将 User.Identity.IsAuthenticated 的值设置为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20265954/
我是一名优秀的程序员,十分优秀!