具有多客户访问权限的 Azure AD 应用程序注册

问题描述 投票:0回答:1

朋友们大家好,感谢您花时间阅读我的问题和所有可能的答案。

我正在构建一个客户应用程序,允许多个业主(企业主)登录并管理他们的业务。我不想关注应用程序的细节,因为它不相关(我认为),因为这更多的是一个定性问题。

我正在将 Azure AD(应用程序注册)用于 Blazor WASM 和 API。我很乐意创建和利用这些。我想要了解的是如何仅使用 Azure AD 来不允许客户看到彼此的数据。

示例:

    来自
  • business X客户 用户 A 登录到应用程序。他们被重定向到 myapp.com/Business-X
  • 我现在在 Azure AD 中拥有的角色是 User.Read、User.ReadWrite 和 User.Admin
  • 来自
  • business Y客户 用户 B 登录应用程序并被重定向到 myapp.com/Business-Y

没有什么可以阻止用户 A 将其 URL 更改为 myapp.com/Business-Y 并在另一个企业的应用程序中具有相同的角色。据我了解,我可以将 Azure AD 中的角色更改为 User.Read.X、User.ReadWrite.X、User.Admin.X、User.Read.Y、User.ReadWrite.Y、User.Admin.Y 等。但想象一下,如果我有数百个客户,那么这是无法管理的,我的 blazor 代码将变得一团糟。

有更好/更聪明的方法吗?例如,我可以保留当前的简化角色并将用户添加到数据库,在数据库中将他们映射到他们有权访问的业务,但这安全吗?我怀疑使用数据库来存储这听起来不太正确,因为感觉 Azure AD 可以做到这一点,但我只是不知道如何做到。

再次感谢您!

azure azure-active-directory authorization blazor-webassembly azure-app-registration
1个回答
0
投票

• 是的,您当然可以通过确保这些应用程序也在Azure AD 中注册为“企业应用程序”来限制用户对在Azure AD 中注册的特定应用程序的访问。

Once, these applications are shown up in ‘Enterprise Applications’ in Azure AD, then you can configure them to require assignment for a particular set of users only by ensuring that the required users only have access to that application
。要在 Azure AD 中启用用户分配并为该应用程序分配用户,您应该为您的 ID 分配“全局管理员、应用程序管理员或云管理员”目录角色。 请参阅以下快照以了解这方面的更多信息:-

此外,配置完上述内容后,您应该

确保在目录级别创建自定义角色并为其分配所需的权限,因为该角色将被分配给所有用户,然后这些用户可以单独分配给所需的应用程序,从而确保仅允许特定用户访问指定的应用程序

请注意,需要分配的应用程序将获得租户范围的管理员同意。请参阅以下链接了解更多信息:-

https://learn.microsoft.com/en-us/azure/active-directory/develop/howto-restrict-your-app-to-a-set-of-users#update-the-app-要求用户分配

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