正确的Azure用户权限设置

时间:2020-04-23 12:05:59

标签: c# .net azure azure-active-directory core

我的公司开始围绕包含多个子应用程序的应用程序开发安全性,并且将有多个客户访问集中式Web应用程序。我们正在设计或试图为这些客户提供服务的最佳系统。

我倾向于使用Claims使一切保持直线,并使用带有客户ID的Claim值的App1.Invoicing.View或App1.Invoicing.Delete之类的索赔类型。这里有一些问题:

  1. 承租人的使用-一个论点是每个客户都有一个承租人,那么每个用户都有相同的Claims,但是值是1还是0(如是或否)。另一个论点是,每个应用程序都有一个租户(将少于六个应用程序),没有流血的应用程序,它们每个都是非常独立的。我的设计没有使用租户,或更合适的是,所有租户都没有使用。

  2. 身份的使用-我的设计是使用身份作为应用程序边界。这将限制一次加载的声明数量。

  3. 团队中有人提出了使用Azure客户属性存储所有这些数据并完全摆脱声明的想法。他们的论点集中在在Azure中创建自定义属性有多容易。对我来说,这是一个权限问题,因此属于UserPrincipal,UserIdentites,UserClaims空间。

我们希望登录页面将基于Azure,并且用户具有默认的应用程序和客户。如果用户有多个应用程序或客户(之所以可行,是因为子客户只是具有有效父ID的客户),他们将具有适当的下拉菜单来切换。

当前,该计划是通过一些更名来管理Azure中的用户设置。尽管我现在已经设置了几个租户和几个用户,并通过租户ID,客户端ID和客户端密钥的组合进行了连接,但是我在这里没有做太多的研究,并且对于使用Azure还是很陌生的。我已经通过一些.Net Core代码进行了工作,并且相信与Azure相比,将其作为应用程序构建起来非常容易。

我很想听听其他人对租户,身份,声明,自定义属性的使用以及将用户管理构建到Azure中的想法。我相信我了解或可以学习如何做这些技术,我正在寻找有关正确选项的意见。

谢谢, 萨默

0 个答案:

没有答案