我想在security.yml文件中执行此操作:
access_control:
- { path: ^/admin, roles: ROLE_ADMIN }
- { path: ^/admin, roles: ROLE_EMPLEADO}
这意味着我希望有2个角色访问相同的url模式。
我所做的不起作用,它总是只向ROLE_ADMIN授予权限,当我使用ROLE_EMPLEADO访问相同的URL时,它表示拒绝访问。
我怎样才能做到这一点?
答案 0 :(得分:3)
您应该创建角色层次结构(请参阅http://symfony.com/doc/2.0/book/security.html#hierarchical-roles)
security:
roles_hierarchy:
ROLE_EMPLEADO: ROLE_ADMIN
这基本上意味着角色为ROLE_EMPLEADO的用户也有角色ROLE_ADMIN然后就足以说:
access_control:
- { path: ^/admin, roles: ROLE_ADMIN }
答案 1 :(得分:2)
在这里你是如何做到的:
- { path: "^/admin", role: ["ROLE_ADMIN", "ROLE_EMPLEADO"] }
这将允许两个角色访问相同的URL。