【发布时间】:2021-01-11 01:25:23
【问题描述】:
我在 http://localhost:5002 本地运行我的 aspnet 核心应用程序,出于某些原因我不想使用 https。它使用 OpenIdConnect 中间件进行身份验证,并生成临时 cookie,如下所示:
因此,由于缺少 secure 标志,Chrome 会阻止这些 cookie。另一方面,此请求是 HTTP(不安全),无法标记 cookie secure。我看到的唯一方法是避免使用 HTTP 并切换到 HTTPS,这对我来说不是本地开发的好选择。我还能使用HTTP + OpenIdConnect middleware + Crome 吗?解决方法是什么?
【问题讨论】:
-
OpenIdConnect有一个名为bool RequireHttpsMetadata的属性您是否尝试禁用它?您之前是否在 https 上运行过您的应用程序?因为HSTS有时网站被缓存为https,需要从缓存中清除。 -
是的,我之前在 https 上运行该应用程序。现在我尝试了
options.RequireHttpsMetadata = false并清除了 chrome 中的 hsts 缓存,但没有运气。我也发现了类似的问题,他们不得不重新安装 VisualStudio 来解决这个问题。 stackoverflow.com/a/58892860/2528649 太令人失望了。 -
实际上链接stackoverflow.com/a/58892860/2528649 与 SameSite=none 无关,因此解决方案无济于事
标签: google-chrome asp.net-core cookies asp.net-identity samesite