我正在使用Channel Integration Framework在Dynamics 365中集成一个单页应用程序。我使用Google Chrome作为浏览器。我的应用程序还使用Cookie来维护用户会话。
然而,谷歌已经宣布,从2024年第一季度开始:Prepare for phasing out third-party cookies - Chrome for Developers
他们将逐步停止对第三方cookie的支持。我的应用程序在Dynamics 365中的行为与第三方一样,没有cookie就无法运行。
我通过在Chrome中浏览以下URL来模拟逐步淘汰第三方Cookie:
第一个月
并将测试第三方Cookie逐步淘汰设置为启用,但我的应用程序未显示。
我尝试了他们的解决方案,建议使用CHIPS(具有独立分区状态的Cookie),在“Set-Cookies”头中添加“Partitioned”选项,但它不起作用。
下面是我在ASP.NET Web API中使用的代码:
string setCookieHeader = Response.Headers["Set-Cookie"];
if (!string.IsNullOrEmpty(setCookieHeader))
{
setCookieHeader += ";Partitioned";
Response.Headers["Set-Cookie"] = setCookieHeader;
}
字符串
在模拟第三方逐步淘汰的情况下,上述代码应该可以工作。
这是因为Dynamics 365正在<iframe>
中加载我的应用程序吗?
我无法控制<iframe>
的创建,因为它在Dynamics 365中。由于“Partitioned”属性在Dynamics 365中也不起作用,该问题的解决方案是什么?
2条答案
按热度按时间vx6bjr1n1#
对我来说,微软似乎也必须做一些事情来使它工作,因为禁用第三方cookie(启用 test-third-party-cookie-phaseout 标志),甚至不会发出 CIFInitDone 事件。
这将是很好的,如果有人从微软可以评论它。我们将打开一个关于它的支持票,我会在这里张贴任何更新。
8qgya5xd2#
在powerusers.microsoft.com上还有一个未回答的主题:
https://powerusers.microsoft.com/t5/Building-Power-Apps/Chrome-deprecating-3rd-party-cookies/m-p/2403692
我所知道的唯一一个微软提到处理Power Platform第三方cookie问题的地方是这里:
https://learn.microsoft.com/en-us/power-pages/known-issues?tabs=Chrome#images-not-displaying-in-power-pages-design-studio
其中还提到,第三方cookie只能用于特定网站,这在Chrome中仍然是可能的:
https://support.google.com/chrome/answer/95647?hl=en-GB&co=GENIE.Platform%3DDesktop#zippy=%2Callow-third-party-cookies-for-a-specific-site
但我不确定这是否会继续后,弃用第三方cookie功能:
https://bugs.chromium.org/p/chromium/issues/detail?id=1473264的