在 Symfony2 中动态添加角色

Posted

技术标签:

【中文标题】在 Symfony2 中动态添加角色【英文标题】:Add Roles dynamically in Symfony2 【发布时间】:2013-12-05 03:47:18 【问题描述】:

我有一个关于 Symfony2 的问题,希望有人能帮助我。

我正在开发一个应用程序,管理员用户必须能够创建具有新权限的新角色。换句话说,app/security.yml 文件会在管理员每次创建新角色时发生变化。我想知道我该怎么做...或者是否有一个 Bundle 可以帮助我解决这个问题。

【问题讨论】:

【参考方案1】:

您可能想使用ACL's。

但这取决于您对这些角色所做的工作。为什么管理员要创建新角色?他们授予什么权限?角色通常保护路由,我不知道如何从某种管理界面(开箱即用)动态定义路由。所以我猜你想给用户做各种事情的权限。所以我认为你想看看 ACL。

【讨论】:

【参考方案2】:

创建自己的用户实体继承UserInterface然后自定义函数getRoles();

看看http://php-and-symfony.matthiasnoback.nl/2012/07/symfony2-security-creating-dynamic-roles-using-roleinterface/

【讨论】:

感谢您的回答!...我去看看链接

以上是关于在 Symfony2 中动态添加角色的主要内容,如果未能解决你的问题,请参考以下文章

Symfony2 - 显示动态可选角色

Spring Security 在运行时动态添加/删除 antMatchers 和角色

Symfony2 - 动态生成的表单在编辑表单时不起作用

带有 FOSUserBundle 的 Symfony2 - 如何向我的应用程序添加没有层次结构的角色

UE4 C++为角色添加血条组件并动态变化。

Symfony 2.8 动态 ChoiceType 选项