我使用Symfony 4。
我只^/admin
角色ROLE_ADMIN
.但是,我需要一些页面可供其他角色访问。例如,我希望角色ROLE_ASSISTANT
可以访问/admin
和/admin/article
。我从向控制器方法添加@IsGranted("ROLE_ASSISTANT")
开始/admin/article
。但这并没有帮助。我找不到有关如何在security.yaml
中覆盖访问控制的任何资源,但我确实需要。我不需要为助手打开整个管理部分,只需在管理中打开几页。
您不必从控制器覆盖它。只需更改 security.yaml 文件中access_control的顺序即可。像这样:
access_control:
- { path: ^/admin/article, roles: ROLE_ASSISTANT }
- { path: ^/admin, roles: ROLE_ADMIN }