Dynamic RBAC角色和权限的动态生成

Dynamic RBAC角色和权限的动态生成,dynamic,roles,access-control,rbac,role-based-access-control,Dynamic,Roles,Access Control,Rbac,Role Based Access Control,我正在寻找一种按需生成新RBAC角色的方法。我正在开发一个RBAC系统,它将有两个主要参数。而不是简单地让一个用户与一个角色关联,并且该角色与一组权限关联;用户可以与“特定项目”的角色关联,然后该用户可以仅对该项目(或该用户持有该角色的其他项目)具有该角色的权限。用户可以在一个项目上扮演特定角色,在另一个项目上扮演不同角色;授予角色的权限对于每个项目都是一致的;用户对项目的权限取决于该用户在项目中所扮演的角色 针对这一问题,我们建议为不同的项目使用不同的角色。例如,如果在项目“P1”和“P2”中

我正在寻找一种按需生成新RBAC角色的方法。我正在开发一个RBAC系统,它将有两个主要参数。而不是简单地让一个用户与一个角色关联,并且该角色与一组权限关联;用户可以与“特定项目”的角色关联,然后该用户可以仅对该项目(或该用户持有该角色的其他项目)具有该角色的权限。用户可以在一个项目上扮演特定角色,在另一个项目上扮演不同角色;授予角色的权限对于每个项目都是一致的;用户对项目的权限取决于该用户在项目中所扮演的角色

针对这一问题,我们建议为不同的项目使用不同的角色。例如,如果在项目“P1”和“P2”中使用角色“admin”,则创建一个角色“P1:admin”和另一个角色“P2:admin”。这似乎是一种方式,但我不想创建一组静态角色。首先,将有几个项目,我不应该编写几个除项目id之外在所有方面都相同的权限集。其次,更重要的是,项目“P3”、“P4”和“P5”还不存在,当它们确实存在时,它们将由用户创建。由于我无法为数量不可预测的未来项目创建基于静态角色的权限,因此我需要开发一种基于通用标准生成项目特定角色的方法

我假设这是一个使用对象和类的好应用程序,但我不确定如何构造它