(抱歉我的英语不好)
我需要创建不同类型的用户,并为每个用户配置特定的配置。请注意,我知道PUGXMultiUserBundle和FOSUserBundle的存在,但我想知道我是否真的需要使用这个包。
我需要3种类型的用户:
SuperAdmin:在后端登录并可以无限制地访问所有数据。将只有一个,没有更多。可以创建新的' Admin'和'用户'用户。
管理员:在后端登录(与SuperAdmin相同的形式),可以访问与SuperAdmin相同的数据,但会过滤到创建并分配给它的数据。可以是具有此类用户的许多用户。可以创建新用户'用户。
用户:在前端登录并访问自己的数据。可以创建自己的帐户。
我真的需要使用PUGXMultiUserBundle来管理吗? 真的我只需要三种类型的用户吗? SuperAdmin和Admin将共享相同的界面,并且只有一个SuperAdmin。
感谢您的帮助!
答案 0 :(得分:1)
您可以在security.yml
中添加许多roles in Symfony 2来提供。
您可以使用access_control
设置用户可以访问的页面。
access_control:
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
限制访问的另一种方法是使用注释和@Security。
您可以使用security.yml
在role_hierarchy
中定义用户角色。
role_hierarchy:
ROLE_SUPER_ADMIN: [ROLE_ADMIN]
ROLE_ADMIN: ROLE_USER
请注意,Symfony 2为经过身份验证的人ROLE_USER
提供默认值。
另一方面,使用FosUserBundle可以节省时间。