当你要求授权某个MVC行动时:
[Authorize(Roles = @"Domain\Groupname")]
public string SomeAction()
{
return "ok";
}
如果用户不是会员,则会要求用户提供有效凭据。这是我想要保留的强大功能。
但是......当这些给定的凭据有效时,这些凭据将用于整个应用程序,直到这些给定凭据的用户更改其密码为止!
如何强制应用程序或浏览器忘记给定的凭据?是否有一些方法可以应用'这不是我...'按钮?
令我惊讶的是,即使在重新启动IIS应用程序并将客户端浏览器完全重置为出厂默认设置(?!)之后,应用程序仍将记住这些凭据
答案 0 :(得分:0)
我能提出的唯一解决方案是自定义授权:
[Authorize(Roles=@"DOMAIN\APP-ResetToUser")]
public string ResetUser()
{
return "Active user: " + User.Identity.Name;
}
通过这种方式,您可以将有此问题的用户添加到此论坛,并让他们使用正确的凭据授权一次。
这有效..但我仍然想知道浏览器或IIS如何存储此经过身份验证的用户。