对 Chrome 80 或更高版本中的客户网站和 Microsoft 服务和产品的影响
注意
此前,本文引用了 Google Chrome Beta 79 版。 Google 计划在 Chrome 80 稳定版中发布 cookie 行为。 Chrome 已更新其推出时间表,指示此更改将从 2 月 17 日那一周开始在 Chrome 80 中推出。 Chrome 80 将于 2 月 4 日发布,并默认禁用此功能。 该功能将于 2 月 17 日开始按分级时间表启用。
摘要
Google Chrome Web 浏览器的稳定版(版本 80,计划于 2020 年 2 月 4 日发布)将从 2 月 17 日那一周开始推出对默认 Cookie 行为的更改。 尽管此更改旨在阻止恶意 cookie 跟踪和保护 Web 应用程序,但预计它也会影响许多基于开放标准的应用程序和服务。 这包括 Microsoft 云服务。
鼓励企业客户通过测试他们的应用程序(无论是定制开发还是购买)来确保他们为更改做好准备并准备实施缓解措施。 有关更多信息,请参阅“建议”部分。
Microsoft 致力于在 Chrome 80 版发布日期之前解决其产品和服务中的这种行为更改。 本文讨论了 Microsoft 和 Google 提供的关于安装产品和库所需各种更新的指南,以及测试和准备指南。 但是,针对 Chrome 行为的这种更改测试自己的应用程序并根据需要准备自己的网站和 Web 应用程序同样重要。
对客户应用程序的影响
注意
如果在尝试激活 Microsoft Learn 沙盒时无法查看权限,请通过导航到chrome://settings/clearBrowserData
清除浏览数据。
所有 Microsoft 云服务均已更新以符合 Chrome 提出的新要求,但其他一些应用程序可能仍会受到影响。 查看建议部分,了解某些需要客户更新的服务器产品。
你应该使用 Chrome Beta 版本 80 彻底测试所有应用程序,以验证此更改的效果。 我们预计与本文描述的问题类似的问题会影响你的应用程序。 对使用任何依赖跨域 cookie 共享的 Web 平台或技术的应用程序来说尤其如此,例如嵌入其他应用中的应用。
Chrome 78 和 79 Beta 版有一项改进,将 SameSite:Lax
属性执行延迟了两分钟。 但是,使用这些版本进行测试可能会掩盖其他问题。 因此,我们建议你通过启用特定标志来使用 Chrome 80 版进行测试。 这样做至少可以帮助你发现效果,从而确定你的最佳计划。 有关更多信息,请参阅测试指南部分。
Chromium 上的 Microsoft Edge 浏览器(版本 80)不会受到这些 SameSite 更改的影响。 你可以阅读 Edge 文档以查看适应此更改的当前计划。
建议
使用 Active Directory 联合身份验证服务 (AD FS) 或 Web 应用程序代理的 Microsoft 客户必须部署以下 Windows Server 更新之一:
产品 | 知识库文章 | 发布日期 |
---|---|---|
Windows Server 2019 | KB 4534273 | 2020 年 1 月 14 日(星期二) |
Windows Server 2016 | KB 4534271 | 2020 年 1 月 14 日(星期二) |
Windows Server 2012 R2 | KB 4534309 | 2020 年 1 月 14 日(星期二) |
还必须更新以下 Microsoft 服务器或客户端产品。 这些更新可用时将添加到本文中。 我们建议你定期重新访问本文以获取最新更新。
产品 | 知识库文章 | 发布日期 |
---|---|---|
Exchange Server 2019 | KB 4537677 | 2020 年 3 月 17 日 |
Exchange Server 2016 | KB 4537678 | 2020 年 3 月 17 日 |
Project Server 2013 | KB 4484360 | 2020 年 5 月 12 日(星期二) |
Project Server 2010 | KB 4484388 | 2020 年 5 月 12 日(星期二) |
SharePoint Foundation 2013 |
KB 4484364 (累积更新:KB 4484358)1 |
2020 年 5 月 12 日(星期二) |
SharePoint Foundation 2010 | KB 4484386 | 2020 年 4 月 27 日 |
SharePoint Server 2019 | KB 4484259 | 2020 年 2 月 11 日(星期二) |
SharePoint Server 2016 | KB 4484272 | 2020 年 3 月 10 日(星期二) |
SharePoint Server 2013 | KB 4484362 | 2020 年 5 月 12 日(星期二) |
SharePoint Server 2010 | KB 4484389 | 2020 年 5 月 12 日(星期二) |
Skype for Business Server 2019 |
KB 4549672 (累积更新:KB 4582629)1 |
2020 年 9 月累积更新 (CU 4) |
Skype for Business Server 2015 |
KB 4549672 (累积更新:KB 4558387)1 |
2020 年 5 月累积更新 (CU 11) |
注意
1 此累积更新包含对 SameSite Cookie 问题的修复,以及与 SameSite Cookie 问题无关的其他修复。 Microsoft 建议安装累积更新而不是单个更新,以确保你的环境在累积更新发布时拥有所有可用的修复程序。
必须针对以下所有场景测试你的应用程序,并根据测试结果确定适当的计划:
- 你的应用程序不受 SameSite 更改的影响。 在这种情况下,无需采取任何操作。
- 你的应用程序受到影响,但软件开发人员可以及时进行更改以使用 SameSite:None cookie 设置。 在这种情况下,应该按照“测试指南”部分中的开发人员指南更改应用程序。
- 你的应用程序受到影响,但无法及时更改。 对于内部站点,可以使用 LegacySameSiteCookieBehaviorEnabledForDomainList 设置从 Chrome 中的 SameSite 强制行为排除应用程序。
如果企业客户了解到他们的大多数应用受到影响,或者他们在 2 月 18 日开始的功能分级发布之前没有足够的时间来测试他们的应用,我们鼓励他们在其管理的计算机中禁用 SameSite 行为。 他们可以通过使用组策略、System Center Configuration Manager 或 Microsoft Intune(或任何移动设备管理软件)来执行此操作,直到他们可以验证新行为不会破坏其应用中的基本方案。
Google 发布了以下企业控件,可以设置为禁用 Chrome 中的 SameSite 强制行为:
- LegacySameSiteCookieBehaviorEnabled,可以启用或禁用此更改。
- LegacySameSiteCookieBehaviorEnabledForDomainList,允许 Chrome 在特定域上禁用此策略。
对于在 .NET Framework 上开发应用程序的企业客户,我们建议他们更新库并有意设置 SameSite 行为,以避免因 cookie 行为的更改而导致不可预测的结果。 为此,请参阅以下 Microsoft ASP.NET 博客文章中的指南:
ASP.NET 和 ASP.NET Core 中即将发生的 SameSite Cookie 更改
另外,请参阅以下 Google Chromium 博客文章以获取有关此问题的开发人员指南:
开发人员:为新的 SameSite=None 做准备;安全 Cookie 设置
受影响的站点影响消费者或未涵盖在其企业策略范围内的用户的客户必须指示这些用户在修复他们的应用程序时使用不同的浏览器(Edge、Firefox、Internet Explorer),或指导这些用户了解如何禁用 Chrome 中的设置(如下一节所示)。
测试指南
Google 发布了此指南供开发人员为 SameSite 更改做准备。 此外,我们建议使用以下方法测试你的网站和应用。
使用 Chrome Beta 80 版测试此方案:
下载 Chrome Beta 80 版:
- 对于 Windows 64 位:适用于 Windows(64 位)的 Beta 版频道
- 对于 Windows 32 位:适用于 Windows(32 位)的 Beta 版频道
使用以下附加命令行标志启动 Chrome:
--enable-features=SameSiteDefaultChecksMethodRigorously
启用 SameSite 标志。 为此,请在地址栏中键入“chrome://flags”,搜索 SameSite,然后为以下选项选择“已启用”。
更多信息
Web 社区正在开发一种解决方案,通过一种称为 SameSite 的标准来解决滥用跟踪 cookie 和跨站点请求伪造的问题。
Chrome 团队已宣布计划从 2019 年 10 月 18 日发布的 Chrome 78 Beta 版开始推出 SameSite 功能的默认行为的更改。 此更改将移至 2020 年 2 月 4 日发布的 Chrome 80 版。 此更改有助于提高 Web 安全性。 但是,它也会破坏基于 OpenID Connect 标准的身份验证流程。 因此,成熟的身份验证模式将不起作用。
检查 Chrome 版本
如果怀疑用户使用的是启用了 SameSite 的 Chrome 76 版或更高版本,则可以通过导航到chrome://settings/help
或通过选择 Chrome 设置图标,然后选择“帮助”>“关于 Google 浏览器”查看版本号。
对于 77-79 版本的 Chrome,导航到chrome://flags
查看他们是否启用了标志。 默认设置将在 Chrome 80 版的分级版本中开始更改。
第三方信息免责声明
本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 Microsoft 不对这些产品的性能或可靠性提供任何明示或暗示性担保。
第三方联系人免责声明
Microsoft 提供了第三方联系信息,以便你寻求技术支持。 该联系信息如有更改,恕不另行通知。 Microsoft 不保证此第三方联系信息的准确性。