Symfony 4:删除用户角色后,access_control不起作用

时间:2018-10-12 14:48:59

标签: symfony security access roles

我试图通过删除用户角色(ROLE_MEMBER)来拒绝对用户的访问,这里是我在security.yaml文件中的access_control

access_control:
    - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https }
    #- { path: ^/register, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https }
    - { path: ^/admin/users, roles: ROLE_SUPER_ADMIN }
    - { path: ^/admin, roles: ROLE_ADMIN }
    - { path: ^/%locale%/.+/(edit|delete|add|request|accept|deny), roles: ROLE_MEMBER }

似乎不起作用。用户仍然可以访问http://localhost:8000/fr/blog/edit/13,并且当我在模板中显示这样的角色时:

{% for role in app.user.roles %}
    {{ role }}
{% endfor %}

我没有收到ROLE_MEMBER,因此已将其删除。 事实是,我必须重新登录才能看到access_control的工作。

我想知道用户存储在哪里(如question (Point 1 of answer)中所述)以及如何在不重新登录的情况下生效?

0 个答案:

没有答案