Azure AD B2C错误:请求中指定的客户端ID未在租户中注册

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

我正在尝试登录到Azure Active Directory B2C应用程序。

[每当我访问URL https://login.microsoftonline.com/te/<my_domain>/<my_sign_up_sign_in_policy_name>/oauth2/v2.0/authorize?client_id=<my_client_id>...时,都会出现以下错误:

在请求中指定的客户端ID <my_client_id>未在租户<my_tenant_name>中注册。

以下是有关我的配置的一些信息:

  • https://portal.azure.com中,我创建了包含用户globaladmin@<my_domain>.onmicrosoft.com]的Azure Active Directory B2C租户

    • 为了创建应用程序,我导航到https://apps.dev.microsoft.com,以全局管理员身份登录,并在instructions here之后创建了“ Web Portal v2”应用程序
  • 我已授予Web Portal v2对Microsoft Graph的访问权限,但未授予对Azure AD Windows Graph API的访问权限(我在任何地方都没有看到此选项)enter image description here

  • 我可以成功导航到https://portal.azure.com->查找Azure AD B2C资源->单击它->应用程序。并且有新创建的“ Web Portal v2”

  • enter image description here

我的应用程序已使用“ Web Portal v2”的新ClientId和ClientSecret更新。但是,当我启动该应用程序并单击“登录”时,出现错误。 我还缺少其他什么配置?

[此外,我还要添加上述所有配置的原因是,这样我就可以将应用程序从使用Azure AD V1令牌迁移到Azure AD V2令牌,其中包含诸如User.Identity.Name之类的信息。我用来在应用程序右上角显示当前登录用户名的值。如果有其他/更好的方法可以实现这一目标,请告诉我。

我正在尝试登录到Azure Active Directory B2C应用程序。每当我访问URL https://login.microsoftonline.com/te/ / / oauth2 / ...

oauth-2.0 microsoft-graph azure-ad-b2c
2个回答
4
投票

https://login.microsoftonline.com/te/<tenant_id>/<policy_id>/oauth2/v2.0/authorize?client_id=<client_id>... URL是正确的,但是您不应该使用the Application Registration Portal创建Azure AD B2C应用程序,否则它将变成a faulted app,然后收到The client id ... specified in the request is not registered in tenant ...错误。


1
投票

我认为原因是通过AD刀片(或Graph API)创建应用程序时未预先设置API权限。解决的方法是将API权限添加到应用程序:

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