【问题标题】:SharePoint authentication token/cookie persists when closing browser, but only in Chrome关闭浏览器时,SharePoint 身份验证令牌/cookie 仍然存在,但仅在 Chrome 中
【发布时间】:2015-08-02 10:59:38
【问题描述】:

SharePoint 2013 默认不使用会话 cookie,而是使用持久性 cookie。根据包括此 one 在内的几篇文章,您可以通过以下 PowerShell 命令强制 SharePoint 使用会话 cookie。我在我的 SharePoint 环境中运行了这个命令。

$sts = Get-SPSecurityTokenServiceConfig
$sts.UseSessionCookies = $true
$sts.Update()

我的目标是让用户在关闭并重新打开浏览器时重新进行身份验证。对于 Forms Authenticated 用户和 Windows Authenticated 用户,这在 Firefox 和 IE 中都非常有效。但是,在 Google Chrome 中,当我关闭/重新打开浏览器并导航到我的 SharePoint 网站时,它会记住我在关闭浏览器之前已通过身份验证的用户;令人费解的是,考虑到这应该是一个会话 cookie。这种情况发生在 Forms Authenticated 用户和 Windows 身份验证用户身上。

FedAuth 会话 cookie,由 SharePoint 提供,在 Chrome 中可见

知道为什么 Google Chrome(但不是 IE 或 FF)在浏览器关闭/打开时会“记住”我的凭据吗?

SharePoint 版本: 2013,内部部署。 Chrome 版本: 42.0.2311.152

其他说明:

  • WindowsTokenLifetime 设置为默认值,10 小时
  • FormsTokenLifetime 设置为 2 分钟
  • Lo​​gonTokenCacheExpirationWindow 设置为 1 分钟

更新: 我尝试通过 Taskmgr 关闭所有可识别的 Chrome.exe 进程,但下次我打开浏览器时,它仍然记得我。但是,我重新启动计算机,打开浏览器,它不记得我当时。我认为这不是 SharePoint 问题,而是 Chrome 问题。我的猜测是某些 Chrome 进程在某处仍然存在,即使它似乎已关闭,从而允许“会话”保持打开状态。还在调查中……

【问题讨论】:

    标签: google-chrome sharepoint sharepoint-2013 claims-based-identity


    【解决方案1】:

    显然,当您让 Chrome 在后台运行时,会话 cookie 不会过期(即使您已关闭浏览器)。禁用后台模式会导致 Chrome 忘记您的 Session cookie,这是理所当然的。

    注意:我很好奇这是否是 Chrome 中的错误。这种行为似乎违背了Session cookie 的含义。

    当用户关闭 Web 浏览器时删除的 cookie。 session cookie存储在临时内存中,关闭浏览器后不再保留

    更新: 根据谷歌的说法,这是expected behavior(尽管我认为这个概念值得商榷)。另外,另一个 SO 用户也遇到了same issue

    【讨论】:

      猜你喜欢
      • 2012-04-07
      • 2017-07-31
      • 1970-01-01
      • 2020-08-06
      • 2016-04-05
      • 2011-03-07
      • 1970-01-01
      相关资源
      最近更新 更多