【问题标题】:ASP.NET Core identity shared across browser跨浏览器共享 ASP.NET Core 标识
【发布时间】:2016-09-09 15:03:13
【问题描述】:

当我将 ASP.NET Core Web 应用程序部署到 Azure 时,我遇到了会话问题:它们是跨浏览器共享的。

解释:我要去我部署的站点,我用我的电子邮件/密码登录,然后我就登录了。如果我在同一台机器或另一台机器上的其他浏览器中打开该网站,我' m 现在与我在第一个浏览器中使用的凭据连接。

我从 Visual Studio 部署了默认模板,没有进行任何更改。 有什么办法可以解决这个问题还是我错过了什么?

【问题讨论】:

  • 您使用的是 AzureAD 还是 Google 或 Facebook 等第三方身份验证提供商?如果您在两台机器上都登录了 zu AzureAD、Google 或 Facebook,那么您不需要重新认证是很自然的选择
  • 不,我没有使用第 3 方身份验证提供程序。

标签: asp.net-mvc asp.net-core asp.net-identity identity


【解决方案1】:

很确定这个功能是设计使然...而且它很有意义 - 如果您打开另一个选项卡来查看您的在线银行中的文档,您不会想要重新验证,对吗?

如果您需要在不与现有浏览器共享 cookie 的情况下登录(将是 cookie 持有对会话的引用,以确保服务器知道您是谁)您需要启动一个新会话。对于 Internet Explorer,这只是文件 >> 新会话。

对于 Chrome,它有点复杂,但在这里解释...Separate session for each window

【讨论】:

  • 会话在不同的机器之间共享,我不认为这是正常的。 A 连接到机器 A 中的网站,当 B 访问机器 B 上的网站时,B 不应该自动登录网站(作为用户 A)。这是一个非常奇怪的问题,这有点难以解释。
  • 不同浏览器不共享cookies。
  • Thibault,你最后是怎么解决这个问题的?我有同样的问题。谢谢
猜你喜欢
  • 1970-01-01
  • 2012-03-22
  • 1970-01-01
  • 2021-11-22
  • 1970-01-01
  • 2019-07-07
  • 2014-10-10
  • 1970-01-01
  • 2019-09-13
相关资源
最近更新 更多