FOSUserbundle - 如何添加新角色?

时间:2016-02-17 08:45:25

标签: php symfony fosuserbundle

我正在使用FOS Userbundle,我想添加新角色,例如ROLE_ZZZ。

最好的方法是什么?感谢。

2 个答案:

答案 0 :(得分:5)

我认为创建新角色并将其与FOSUserBundle集成的有效(干净且简单)方法是

1)通过security.yml

添加新角色
security:
  role_hierarchy:
    ROLE_ZZZ: [ROLE_USER, OTHER_PERMISSION_1, OTHER_PERMISSION_2, ...]

2)创建一个FOSUserBundle组(group handling doc here)并将该角色(并且只有该角色)设置为该组。

然后可以根据需要将用户添加到该组中。

答案 1 :(得分:1)

FOSUserbundle不提供角色实体。您必须通过实施Symfony\Component\Security\Core\Role\RoleInterface来实现它。

它应该看起来像this role-entity

之后,您必须创建用户角色关系并将角色分配给用户。 可在此处找到完整的教程to implement a new role in fosuserbundle