0

我最近在 MVC4 中构建了一个使用 CAC 身份验证的 Web 应用程序。一切正常,除了我的应用程序并不总是每次都进入登录操作结果。我意识到原因是因为 IIS 第一次缓存了我的凭据,我不希望它这样做。如何防止 IIS 缓存我的登录凭据,但保留我的图像、css、javascript 缓存?

4

1 回答 1

1

IIS 不应该缓存您的凭据,当您关闭并重新打开网站时,登录 cookie 还没有过期。我正在尝试查找有关通用访问卡身份验证的信息,但我假设它非常类似于表单身份验证。

当有人登录您的网站时,您的网站会发出一个加密的 cookie。此 cookie 随每个请求发送到您的站点,以授权用户执行您的操作。

在您的 web.config 中,有一个部分用于处理此 cookie 的有效期以及您的登录 url 等项目。

<authentication mode="Forms">
   <forms loginUrl="~/User/Account/Login" timeout="2880" />
</authentication>

timeout 属性是 cookie 保持有效的时间,以分钟为单位。因此,在同一个浏览器中,只要 cookie 没有过期,用户就不必再次登录。我相信默认超时为 20 分钟,并且具有“滑动到期”,这意味着只要用户在您的网站上做事,cookie 的到期时间就会继续滑出,从而防止您的网站将活跃用户踢回使用您的应用程序中间的登录页面。

于 2013-11-07T15:56:46.230 回答