C# 如何忘记授权凭据?

C# 如何忘记授权凭据?,c#,asp.net-mvc,C#,Asp.net Mvc,当您请求授权某个MVC操作时,如下所示: [Authorize(Roles = @"Domain\Groupname")] public string SomeAction() { return "ok"; } 如果用户不是成员,则要求用户提供有效凭据。这是我想要保留的强大功能 然而。。当这些给定凭据有效时,这些凭据将用于整个应用程序,直到这些给定凭据的用户更改其密码 如何强制应用程序或浏览器忘记给定的凭据?是否有一些方法可以应用“这不是我…”按

当您请求授权某个MVC操作时,如下所示:

    [Authorize(Roles = @"Domain\Groupname")]
    public string SomeAction()
    {
        return "ok";
    }
如果用户不是成员,则要求用户提供有效凭据。这是我想要保留的强大功能

然而。。当这些给定凭据有效时,这些凭据将用于整个应用程序,直到这些给定凭据的用户更改其密码

如何强制应用程序或浏览器忘记给定的凭据?是否有一些方法可以应用“这不是我…”按钮


令我惊讶的是,即使在重新启动IIS应用程序并将客户端浏览器全部重置为出厂默认值之后,应用程序也会记住这些凭据

我能想到的唯一解决方案是定制授权:

[Authorize(Roles=@"DOMAIN\APP-ResetToUser")]
public string ResetUser()
{
    return "Active user: " + User.Identity.Name;
}
这样,您可以将有此问题的用户添加到此组,并允许他们使用正确的凭据进行一次授权


这很有效。。但我仍然想知道浏览器或IIS如何存储此经过身份验证的用户。

FormsAuthentication.SignOut@IgorSemin:这似乎不适用于域身份验证?应用程序始终显示给定的凭据,而不是登录的windows用户。您使用的身份验证模式是什么?windows身份验证