无法使用Owin在Google Chrome最新版本浏览器MVC5中与第三方登录提供商Google登录

问题描述

google chrome最新版本85 中,我无法使用第三方提供商(例如Google)的登录服务,但可以在Firefox和其他浏览器上完美运行。
测试用例
使用Google Outh2.0授予权限后,它会重定向到singin-google,其中包含状态范围等所有详细信息。但是随后,它尝试.AspNet.ExternalCookies,但未在Google chrome中创建任何内容,并且无法登录生成错误= Access_Denied
的回调 但另一方面,使用不同的浏览器(如Mozilla),则可以使用相同的代码,并且用户可以登录
进一步,我在寻找chrome的发行说明,是的,它们已弃用与Cookie相关的功能,但无法在应用程序中处理。
如果有人遇到相同问题或有任何想法如何处理此plz答复。

我正在使用最新版本的Owin,包括Microsoft.Owin.Security和Google

解决方法

默认情况下,Google Chrome浏览器使用Lax选项实现相同站点的cookie。但是其他浏览器尚未实现。
我在Microsoft网站上获得了解决方案,在该网站上我们为chrome浏览器显式设置cookie samesite = none,并为其他浏览器传递了空值。

对于带有Microsoft.Owin 4.1.0的ASP.NET 4.7.2,可以使用ICookieManager进行代理嗅探
您可以找到完整的代码here