ASP.NET/IIS:注销所有用户

Den*_*gan 3 c# asp.net authentication iis asp.net-3.5

在IIS上运行的ASP.NET 3.5应用程序中,如何强制所有当前登录和验证的用户"取消身份验证"?

iisreset 似乎没有做到这一点!

Ric*_* YS 6

更改身份验证表单名称将要求所有用户进行新的身份验证。

从:

<authentication mode="Forms">
  <forms name="originalName" loginUrl="~/Account/Login"  />
</authentication>
Run Code Online (Sandbox Code Playgroud)

到:

<authentication mode="Forms">
  <forms name="differentName" loginUrl="~/Account/Login"  />
</authentication>
Run Code Online (Sandbox Code Playgroud)


Zha*_*uid 5

ASP.NET身份验证旨在通过使用cookie来恢复IISReset - 执行IISReset将清除任何内存中的信息,但下次用户请求您的站点上的页面时,他们将发送其身份验证令牌,(如果它没有超时)仍然有效,服务器将重新验证它们.

您可以编写一些可以在重新启动后有效注销用户的内容,例如:将应用程序启动时间存储在全局变量中Application_Start,然后将用户LastActivityDate与该值进行比较- 如果它在开始时间之前,则可以在Application_SessionStart或期间调用适当的签出方法Application_BeginRequest.