401使用ADFS 4.0和OpenID Connect调用UserInfo时



我已经成功创建了一个使用服务器应用程序以及Web API的新应用程序组,并且OpenID Connect协议正在奏效任何问题用户信息。依赖方标识符与服务器应用程序的客户端ID相同(根据我在线阅读的示例)。尝试调用UserInfo时,我会在下面遇到错误:

WWW-Authenticate: Bearer error="invalid_token", error_description="MSIS9921: Received invalid UserInfo request. Audience 'microsoft:identityserver:21660d0d-93e8-45db-b770-45db974d432d' in the access token is not same as the identifier of the UserInfo relying party trust 'urn:microsoft:userinfo'."

任何帮助将不胜感激。

我最近也使用带有ASP.NET Core OpenIDConnect提供程序的ADF遇到了此错误。就我而言,禁用UserInfo请求完全解决了问题:

var openIdOptions = new OpenIdConnectOptions
{
  ...
  GetClaimsFromUserInfoEndpoint = false
};

这样做之后,我仍然提出了我的应用程序所需的声称 - 电子邮件,SID,名称等。我敢肯定,这是行不通的,但是很高兴知道您可能不需要/USERINFO。我仍然有兴趣知道为什么不能使用ADF返回的令牌来调用/UserInfo,以及如何在ASP.NET OpenIDConnect提供商中修复它。

只是相应地设置资源:

options.Resource = "urn:microsoft:userinfo";

最新更新