在 security.yml 中允许管理员用户在 access_control 中的所有访问权限

Allow admin user all access in access_control in security.yml

菜鸟问题,我在 Symfony 2.8 中工作,我想在访问控制中授予对角色 ROLE_ADMIN 的所有访问权限,有没有办法做到这一点而无需在每个文件中写入 'ROLE_ADMIN'统治 access_control?

我在 security.yml 中试图避免的是:

access_control:
    - { path: ^/application, roles: ROLE_STUDENT }
    - { path: ^/keyword, roles: ROLE_MENTOR }
    - { path: ^/department, roles: ROLE_ADMIN }
    - { path: ^/requirement, roles: ROLE_MENTOR}

为此:

access_control:
    - { path: ^/application, roles: [ROLE_ADMIN, ROLE_STUDENT ]}
    - { path: ^/keyword, roles: [ROLE_ADMIN, ROLE_MENTOR ]}
    - { path: ^/department, roles: ROLE_ADMIN }
    - { path: ^/requirement, roles: [ROLE_ADMIN, ROLE_MENTOR ]}

在一个最大的文件中

是的,您可以添加角色层次结构:

security:
    role_hierarchy:
        ROLE_ADMIN: [ROLE_STUDENT, ROLE_MENTOR]

这样的话,如果你有 ROLE_ADMIN,你也有 ROLE_STUDENTROLE_MENTOR