对于我的应用程序,我需要停用某些用户对FOSUserBundle的注销路径的访问权限,但是当我添加访问控制时,它无论如何都不起作用。
有人可以帮我这个功能吗?
编辑:我的security.yml
security:
encoders:
FOS\UserBundle\Model\UserInterface: sha512
role_hierarchy:
ROLE_PRO_AGENT: ROLE_PRO_USER
ROLE_PRO_ADMIN: ROLE_PRO_AGENT
ROLE_ADMIN: ROLE_USER
ROLE_API: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_API, ROLE_USER, ROLE_SONATA_ADMIN, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH, ROLE_PRO_ADMIN]
providers:
fos_userbundle:
id: fos_user.user_provider.username
firewalls:
main:
pattern: /.*
form_login:
provider: fos_userbundle
login_path: fos_user_security_login
check_path: fos_user_security_check
default_target_path: espace_perso
always_use_default_target_path: false
failure_path: fos_user_security_login
logout:
path: fos_user_security_logout
target: fos_user_security_login
anonymous: true
access_control:
- { path: ^/%locale%/logout, roles: [ ROLE_USER_DEFINITIF ] }
- { path: ^/_wdt, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/_profiler, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/test/.*, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/%locale%/essai, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/%locale%/create-user-temp, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/%locale%/delete-user-temp, role: ROLE_ADMIN, ip: 127.0.0.1 }
- { path: ^/%locale%/login, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/%locale%/login_check, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/%locale%/register, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/%locale%/resetting, roles: [ IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER_DEFINITIF ] }
- { path: ^/coulisse, roles: [ ROLE_ADMIN, ROLE_SONATA_ADMIN ] }
- { path: ^/api, roles: [ ROLE_API ] }
- { path: ^/, role: ROLE_USER_DEFINITIF }