我目前有ROLE_ADMIN: ROLE_USER
和ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
,我想在普通用户和管理员之间添加一个具有权限的新角色。
我对symfony一般都是新手,我读了一些关于它的文档,但我无法理解创建新角色的过程。
首先要做的事情是:我应该做什么
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH, ROLE_NEW_ROLE]
或
ROLE_ADMIN: ROLE_USER
ROLE_NEW_ROLE: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
第二:除了security.yml
中的这个变化之外,我需要在哪些文件中更改某些内容才能完成角色的创建(而不是谈论为这个新角色赋予特定权限)。 / p>
我不知道这是不是一个愚蠢的问题,但我很遗憾。
答案 0 :(得分:2)
欢迎来到Symfony社区!
简单来说,角色定义和层次结构完全不同。
您可以为用户定义不同的角色,而无需在项目中指定它们。使用promote / demote命令,例如:
php app/console fos:user:promote
php app/console fos:user:demote
另一方面,如果您想在用户和管理员之间创建层次结构,您可以分配用户成员权限:
role_hierarchy:
ROLE_NEW_ROLE: ROLE_USER
ROLE_ADMIN: ROLE_NEW_ROLE
这就是全部!