PHP用户和角色调用控制器、对对象执行操作的权限

PHP用户和角色调用控制器、对对象执行操作的权限,php,symfony,user-roles,Php,Symfony,User Roles,我们正在建立一个水资源数据库管理系统,该系统将由许多用户管理,并由公众用户访问。在我们的系统中,我们管理对象(河道、堰、钻孔…)及其属性。我们希望构建一个函数,允许超级用户可以使用控制器、操作和数据对象的id注册其他用户。例如,A区的经理仅对位于A区的所有数据对象拥有完全权限,而其他一些人也可以访问A区的数据对象,但仅对输入数据(例如水位输入)具有完全权限。 将有数百人管理和贡献数据库,这取决于他们工作的单位级别、他们的角色(查看、编辑、删除…)以及他们响应的数据对象。这是真正的动态用户管理功能

我们正在建立一个水资源数据库管理系统,该系统将由许多用户管理,并由公众用户访问。在我们的系统中,我们管理对象(河道、堰、钻孔…)及其属性。我们希望构建一个函数,允许超级用户可以使用控制器、操作和数据对象的id注册其他用户。例如,A区的经理仅对位于A区的所有数据对象拥有完全权限,而其他一些人也可以访问A区的数据对象,但仅对输入数据(例如水位输入)具有完全权限。 将有数百人管理和贡献数据库,这取决于他们工作的单位级别、他们的角色(查看、编辑、删除…)以及他们响应的数据对象。这是真正的动态用户管理功能。一个管理数据的原型系统正在使用PHP和Symfony2构建,并升级到Symfony3。现在,我们需要建立用户管理功能,如所讨论的那样来启动系统

有人在数据库结构、捆绑包、模型方面有经验吗。。。解决这个问题。
谢谢。

是的,这可以在symfony中使用角色、权限和安全投票者轻松完成:


欢迎光临。我认为很多用户都有数据结构、Symfony和PHP方面的经验,但就个人而言,我对您需要什么有点困惑。这听起来有点让人困惑。您是否有一些代码可以与我们共享。可能是伪代码或绘制图表?我们还没有为这个函数启动任何代码。我们所做的一切就是为钻孔和其他对象管理数据功能。所有数据obj控制器(如boreHoleController)的模板相同,包括以下操作:添加($obj)、编辑($id)、删除($id)、editParaA($id)、editParaB($id)。。。我们希望向一些控制器注册一个用户,即使他/她可以调用允许的控制器,他仍然受到注册操作和id对象的限制。我不确定你所说的“…向一些控制器注册一个用户…”是什么意思。你能更详细地解释一下吗。例如:地表水组中的用户只能调用Weircontroller,频道控制器。。。(地表水obj)但不能调用BoreHoleController,aquiferController(地下水),但general data admin可以调用bothIt中的控制器听起来好像您只需要为每个用户分配一个角色,然后通过Symfony的
security.yml使用这些角色管理他们的访问权限