Symfony 安全 access_control 如果没有特定角色则允许

Symfony security access_control allow if NOT having specific role

在 Symfony 5.0 应用程序中,我想为允许用户访问的路由定义一个 access_control 模式

所以我需要类似的东西

- { path: ^/xy, roles: [ROLE_USER, not ROLE_ADMIN] }

在旧的 Symfony 中 3.x 我以前是这样做的:

{ path: ^/xy, allow_if: "has_role('ROLE_USER') and not has_role('ROLE_ADMIN')" }

但这似乎不再有效了。

is_granted()

而不是

has_role()

现在。 所以这有效:

- { path: ^/xy, allow_if: "is_granted('ROLE_USER') and not is_granted('ROLE_ADMIN')" }