web.config 标记内的超时设置<authentication>



我正在开发一个在IIS-8和Windows Server 2008 R2下托管的 asp.net mvc-4 Web应用程序。现在对于 asp.net MVC,我正在使用表单身份验证,它与我们的活动目录集成。以下是我们 web.config 中的相关实体:-

<membership>
  <providers>
    <add name="TestDomain1ADMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=4.0.0.0, &#xA;            Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="TestDomain1ConnectionString" connectionUsername="*********" connectionPassword="******" attributeMapUsername="sAMAccountName" />
  </providers>
</membership>
<httpRuntime targetFramework="4.5" />
<authentication mode="Forms">
  <forms loginUrl="~/Account/Login" timeout="40320" />
</authentication>

现在我的问题是关于<forms>内的超时参数。 现在我理解此设置如下:-

当用户第一次登录到Web应用程序时,他将输入用户名和密码。 如果他的凭据有效,将生成一个浏览器cookie给他,并保存在浏览器缓存中。 现在,因为我指定了一个超时="40320"。 这意味着浏览器cookie将在40320分钟后过期?? 这是正确的吗? 因此,如果用户在首次登录后 40320+ 分钟后尝试访问系统, 然后IIS将看到传递的cookie已过期,并将注销用户..这是对的吗?

https://msdn.microsoft.com/en-IN/library/1d3t3c61(v=vs.85).aspx

可选属性。指定 Cookie 过期的时间(以整数分钟为单位)。如果 SlidingExpiration 属性为 true,则超时属性是一个滑动值,在收到最后一个请求后的指定分钟数过期。为了防止性能受损,并避免为打开了 Cookie 警告的用户发出多个浏览器警告,当超过指定时间的一半时,将更新 Cookie。这可能会导致精度损失。默认值为"30"(30 分钟)。

相关内容

最新更新