无法从B2C更新访问令牌,错误AADB2C90077

问题描述 投票:1回答:2

我在尝试从我的广告B2C获取新的访问令牌时遇到问题。在我的SPA中,我使用MSAL.js库(v0.1.3)对我的AD B2C进行身份验证。一个小时后,访问令牌到期,因此我执行了无提示令牌续订过程,但失败了。我使用以下链接获取新的访问令牌:

https://login.microsoftonline.com/te/myApp.onmicrosoft.com/b2c_1_signin/oauth2/v2.0/authorize?response_type=token&scope=https%3A%2F%2FmyApp.onmicrosoft.com%2Fapi%2Faccount.read%20openid%20profile&client_id=XXX&redirect_uri=https%3A%2F%2FmyApp.azurewebsites.net%2F&state=XXX&nonce=XXX&client_info=1&x-client-SKU=MSAL.JS&x-client-Ver=0.1.3&client-request-id=XXX&prompt=none&domain_req=XXX&login_req=XXX-b2c_1_signin&domain_hint=organizations

我从B2C收到以下错误:

AADB2C90077:用户没有现有的会话并请求提示参数的值为“无”。相关ID:YYY

我找不到与错误AADB2C90077的原因有关的任何信息。

谢谢

azure-active-directory adal azure-ad-b2c msal adal.js
2个回答
1
投票

为了记录,在与Microsoft技术支持和开发人员团队多次往返之后,我们终于确定了我的AADB2C90077错误代码的原因。Azure B2C后端存在一个问题,系统无法正确处理默认值。我的解决方法是修改四个令牌生存期值:“访问和ID令牌生存期”,“​​刷新令牌生存期”,“​​刷新令牌滑动窗口生存期”和“ Web应用程序会话生存期”,以便它们出现在策略中xml。

截至2018年2月22日,Microsoft确认他们已发布修复程序来解决此问题。因此,如果有人遇到问题,则很可能是出于其他原因。


0
投票

可能导致AADB2C90077错误的一件事是用户流或自定义策略的单点登录配置的禁用值。

假设您在SPA应用程序中,为Web API应用程序请求令牌,就像在this MSAL sample中完成的一样。 SPA应用程序和Web API应用程序都有各自的应用程序注册。从SPA应用程序中,您正在访问Web API应用程序的范围。交互式登录返回id_token,但是随后的访问令牌请求失败并显示上述消息。

这里是要更改用户流的设置(自定义策略需要编辑XML):User flow setting that causes AADB2C90077

© www.soinside.com 2019 - 2024. All rights reserved.