仅限管理员用户的Restrinct访问权限

时间:2017-05-13 10:37:55

标签: php symfony fosuserbundle

我试图拒绝所有不管理我用户名单的用户访问。

我的路线是:http://localhost/exchangeIt/web/backend/llistaUsuaris.

所以我试图在security.yml文件中拒绝它。

role_hierarchy:
    ROLE_ADMIN:       ROLE_USER
    ROLE_SUPER_ADMIN: ROLE_ADMIN
    ROLE_TRANSLATOR: ROLE_TRANS

 access_control:

- { path: ^/backend/llistaUsuaris/, role: ROLE_ADMIN }

但是,如果我加入普通用户并复制粘贴我即使不是管理员用户也可以访问的网址。

1 个答案:

答案 0 :(得分:2)

还有其他安全检查吗?如果是 - 向我们展示您的代码,如果没有 - 请在

之后使用

在后端控制器中,您可以对整个控制器类使用@Security注释,也可以对某个方法使用/ { More Info

或者您可以在控制器中使用$this->denyAccessUnlessGranted('ROLE_ADMIN', $user, 'You shall not pass');方法来获取特定方法More info

@Security 快速简便,但denyAccessUnlessGranted()为您提供更多控制权