尝试了解将 Azure AD 租户中注册的 Multi-Tenancy 应用程序公开给 Azure B2C 租户的最佳方法。到目前为止我们尝试过的是
- 在 Azure AD 租户(租户 A)中注册了 Multi-Tenancy 应用
- 通过点击管理员同意 URL,在 B2C 租户(租户 B)中公开该应用程序:http://login.microsoftonline.com/common/adminconsent?client_id=clientid_of_app_in_tenantA
- 在管理员同意屏幕上使用 B2C 租户 B 帐户登录。这样做,我们现在可以看到该应用程序列在 Azure B2C 租户 B 的企业应用程序下。我相信有些人也将其称为该应用程序的服务主体。
我们遇到的问题是,一旦我们尝试使用 MSAL 获取该客户端的 token (授权 URL 是带有登录策略的 B2C 租户),它就会抛出错误:
AADB2C90018: The client id 'client_id_from_tenant_A" is not registered in tenant b2c tenant B
我们期望现在租户 A 的客户端在 B2C 租户 B 中公开,我们将能够获取该客户端的 token ,但不确定我们的设置中缺少什么。感谢您提供的任何帮助或指导。
最佳答案
我可以重现您的问题,正如juunas所说,“常规AAD应用程序”和“B2C应用程序”之间仍然存在一些差异,即使您可以将AAD应用程序作为企业应用程序添加到B2C租户中,它仍然无法使用,因为该应用程序本质上是一个常规的AAD应用程序,因此您无法使用它来登录B2C用户。
关于azure - 在 Azure AD B2C 中注册 Azure AD Multi-Tenancy 应用程序的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63841446/