【问题标题】:MSAL Azure AD B2C authentication not working in chrome - incognitoMSAL Azure AD B2C 身份验证在 Chrome 中不起作用 - 隐身
【发布时间】:2020-11-25 05:03:36
【问题描述】:

Google 的 chrome 浏览器从 84.0.4147.89 更新到 84.0.4147.105 破坏了我们应用程序在隐身窗口中的 MSAL 登录(身份验证)。

为了验证我们的应用程序没有问题,我尝试在 Incognito 浏览器中使用入门包登录 Azure AD B2C,我看到了相同的行为。有没有人遇到过同样的问题?

过去很少有开发人员发布过类似的问题。但是提供的解决方案没有帮助。 https://support.google.com/chrome/thread/38855209?hl=en

仅供参考:登录在 Chrome 常规浏览器和其他浏览器中按预期工作

新手包详情: https://github.com/Azure-Samples/active-directory-b2c-javascript-msal-singlepageapp

入门包有 msal 1.3.3 版本。几天前,1.3.4版本已经发布,我也尝试过。我在隐身模式下的 acquiretokensilent(CallApi) 期间看到一个错误,而在常规窗口中没有得到相同的异常

starter pack 和我们的应用程序唯一的区别是我们在登录成功后立即调用acquiretokensilent,但在starter pack 中acquiretokensilent 是在单击按钮时调用的(CallApi)

【问题讨论】:

  • 如果您能分享应用程序详细信息、入门包详细信息、msal 版本或您所指的开发,我将对我们有所帮助。
  • @Raghavendra-MSFTIdentity - 感谢您对此进行调查。我已经添加了入门包的详细信息。我们的应用程序使用 1.2.1 版本的 msal,但如果 acquiretokensilent 在最新版本的启动包中不起作用,它可能也无法在我们的应用程序中工作。如果您有任何其他问题,请告诉我
  • 感谢您提供的详细信息。我会尽快回复你
  • 如您所述,我在成功登录后通过调用acquiretokensilent 尝试了入门包。我收到了一个错误User does not have an existing session and request prompt parameter has a value of 'None'.。出现此问题是由于未在 chrome 隐身模式下启用弹出窗口。一旦我启用了弹出窗口,我就能够成功调用acquiretokensilent而没有任何错误。如果您遇到与此无关的任何问题,请告诉我
  • 嗨 Sujeeth,您是否尝试过 @Raghavendra-MSFTIdentity 提供的建议?有更新吗?

标签: google-chrome azure-ad-b2c msal incognito-mode


【解决方案1】:

通过在 google chrome 设置中启用 cookie 为我修复了隐身窗口中的 Azure AD B2C 登录问题。以下是启用 cookie 的步骤。

Chrome 设置 -> 隐私和安全 -> Cookie 和其他网站数据 -> '允许所有 cookie'

【讨论】:

    【解决方案2】:

    您甚至可以为网站提供当前会话的 cookie。

    CHROME SETTINGS --> PRIVACY AND SECURITY --> COOKIES AND OTHER DATA DATA -->

    始终可以使用 cookie 的站点 --> 添加站点

    对于aquiresilenttoken(),添加https://login.microsoftonline.com/*

    或您首选的权威 URL。

    【讨论】:

      【解决方案3】:

      来自 cmets 的移动答案

      如您所述,我在成功登录后通过调用acquiretokensilent来尝试启动包。我收到一个错误

      用户没有现有的会话和请求提示参数 值为“无”

      此问题的原因是由于未在 chrome 隐身模式下启用弹出窗口。一旦我启用了弹出窗口,我就可以成功调用acquiretokensilent而没有任何错误。

      【讨论】:

      • 启用弹出窗口对我不起作用。但是允许隐身 cookie 解决了这个问题。在 chrome 浏览器设置中启用 cookie 的步骤 Chrome 设置 -> 隐私和安全 -> Cookie 和其他站点数据 -> '允许所有 cookie'
      • @Sujeeth 很高兴听到这个消息。感谢您告诉我们。
      • @Sujeeth 你能接受它作为帮助其他人更容易找到它的答案吗?
      猜你喜欢
      • 1970-01-01
      • 2019-06-25
      • 1970-01-01
      • 1970-01-01
      • 2016-05-06
      • 1970-01-01
      • 2017-12-11
      • 2016-04-26
      • 2020-08-26
      相关资源
      最近更新 更多