【发布时间】:2021-01-05 21:30:58
【问题描述】:
对于针对图形 api 的 CRUD 操作,我们必须向多个开发团队提供应用程序凭据。这些团队负责不同的应用程序,到目前为止,我们为每个应用程序管理不同的 Azure B2C 租户。我们希望将所有应用整合到一个 B2C 租户中。
最好的方法是什么?这样做有什么顾虑吗?以下是我们想到的一些
- 授予租户范围的权限,例如 Directory.ReadWrite.All 和 User.ReadWrite.All 可能会导致一个团队的开发人员无意中删除其他团队的身份。
- 修改已被其他应用用于一个应用的属性
【问题讨论】:
-
“将所有应用合并为一个 B2C 租户”和“一个应用已被其他应用使用的属性”是什么意思?请提供更多详细信息。
-
感谢艾伦“为所有应用整合到一个 B2C 租户中” - 使用一个 B2C 租户来处理所有应用的身份验证
-
“属性已被其他应用程序用于一个应用程序” - 一个应用程序 X 调用 Graph API 来修改用户的现有属性 A。另一个应用 Y 正在使用相同的属性 A,X 对值的更改现在将对 Y 的功能产生影响。
-
据我所知,Azure AD 没有现成的解决方案来满足你的需求。在您的情况下,每个团队将能够管理一个 B2C 租户中的所有用户。我的建议是用你自己的逻辑控制权限。例如,来自组 A 的用户在 id 令牌中有一个组声明,它告诉您他来自哪个组。然后当他调用MS graph修改用户时,检查用户来自哪个组。如果他尝试修改的用户来自 A 组,则您允许。通过这个方法可以实现A组的管理员只能修改A组的用户。
-
将评论移至回答,以便将此问题视为已回答以供他人参考。如果它有帮助,您可以接受它作为答案。谢谢。
标签: azure-ad-b2c identity-experience-framework azure-ad-b2c-custom-policy