代码之家  ›  专栏  ›  技术社区  ›  Inbar Gazit

中的关联失败错误。在Chrome上使用.NET Core时,默认的SameSite设置http://localhost使用OAuth

  •  0
  • Inbar Gazit  · 技术社区  · 5 年前

    要求如下:

    1. 使用http://localhost然后重定向以完成OAuth过程并重定向回。
    2. 使用默认设置的Chrome浏览器。我知道我可以改变一些标志来解决这个问题。
    3. 使用。NET核心库,用于授权代码。我也知道我可以为此编写自己的代码。

    您可以在中看到我们所有的代码 this repo 这是一个 direct link to startup.cs .

    其中与cookie相关的代码如下:

    services.Configure<CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });
    

    我试图删除上述代码或以不同的方式更改它——不行。 我也读过 this article 并试图使用其中提供的代码-不起作用。 我还尝试了上提供的所有不同解决方案 this thread 又一次,似乎什么都没用。 是否有任何选项可以继续在Chrome中使用http和samesite Cookie并阻止。NET Core不会给我这个错误?

    0 回复  |  直到 5 年前
        1
  •  0
  •   Gary Archer    5 年前

    您能否捕获并发布授权码授予请求和响应的详细信息?目前尚不清楚您的问题是否与SSL有关。

    旁白:真实世界OAUTH开发人员设置

    在使用OAuth技术时,我总是在开发人员PC上使用真实世界的网址运行:

    这导致了最少的技术/信任问题——我从不使用以下URLhttp://localhost:3000.

    这并不难,这种方法可能会解决你的问题——如果有帮助的话,这里有一些资源: