3

我正在和另外 4 个人一起做一个小组项目。我们正在使用 MVC4 中的 ASP.NET 设计一个带有嵌入式 c# 和 Razor 的工作亭。它从服务器生成动态网页。我们在 Windows 7 环境中使用 Visual Studio 2010 SP1 和 Microsoft SQL Server 2008 R2 SP1。

我正在努力让系统在用户空闲 10 分钟时将其注销。我需要一些关于如何开始编写系统以注销用户的方法的帮助。我基本上是在编写一个控制器来编辑我小组中其他成员所做的视图(网页)。这样,计时器会在所有视图页面上启动。

4

2 回答 2

5

您通常会使用滑动窗口在 FormsAuthentication 票证上设置过期值。

http://support.microsoft.com/kb/910443

<authentication mode="Forms">
   <forms name=".ASPXAUTH" loginUrl="~/Account/Login" protection="All" 
      timeout="10" path="/" slidingExpiration="true" />
</authentication>

如果您使用[Authorize]MVC 的默认属性并使用 WebSecurity,那么这应该会自动起作用。如果您要发布自己的表单身份验证票证,则可能必须明确设置值。

其他人提到了会话超时,但要注意两件事。首先,您不应该进行任何与 Session 相关的身份验证,第二个 Session timeout 和 Authentication timeout 是两件不同的事情,尽管您可能希望它们保持同步。不过,滑动窗口更难做到这一点。

于 2013-04-23T23:57:06.450 回答
-1

您可以使用 Web.config 中的以下条目来控制会话,例如:

<configuration>
    <system.web>
        <sessionState timeout="2" />
    </system.web>
</configuration>
于 2013-04-23T23:30:02.153 回答