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

Restrinct access only for Admin User

我试图拒绝所有不是我用户列表管理员的用户的访问。

我的路线是: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 }

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

还有其他安全检查吗?如果是 - 请向我们展示您的代码,如果不是 - 请考虑以下内容

在您的后端控制器中,您可以对整个控制器使用 @Security 注解 Class or/and 对特定方法。 More Info

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

@Security 快速简便,但 denyAccessUnlessGranted() 给你更多的控制权