首页 > 解决方案 > Azure AD B2C - 多重身份体验框架自定义策略可以互换使用

问题描述

适用于多种应用。我们将 AAD B2C 用于我们的身份验证系统。我们选择了自定义策略。造成这种情况的原因之一是我们希望允许不同的用户组访问不同的应用程序,方式如下:

为此,我们制定了以下政策:

在所有策略中,我们对内部身份验证 API 进行 API 调用,该 API 通过 MS Graph API 验证用户的组成员身份。问题是这些策略似乎可以互换使用:

https://{tenant}.b2clogin.com/{tenant}/b2c_1a_xxx_cms/oauth2/v2.0/authorize?response_type=id_token&scope={scope}%20openid%20profile&client_id={client_id}&redirect_uri={redirect_uri}&nonce={nonce}&client_info=1&x-client-SKU=MSAL.JS&x-client-Ver=1.4.4&client-request-id={client-request-id}&response_mode=fragment

在上述 url 中,用户可以通过将 b2c_1a_xxx_cms 替换为 b2c_1a_xxx_product 来访问 CMS,从而绕过针对特定应用程序的基于组的验证。

我们政策的原始实施基于本教程: https ://docs.microsoft.com/en-us/azure/active-directory-b2c/custom-policy-get-started

我们如何配置这些策略以使更改 URL 和尝试登录是不可能的?

标签: azureazure-ad-b2cazure-ad-graph-apiazure-ad-b2c-custom-policy

解决方案


根据您的要求,我认为您需要将应用程序分配给用户功能。

但它仅在 Azure AD 而不是 Azure B2C 中可用。

所以我建议你使用自定义属性来控制用户对不同应用程序的访问。


推荐阅读