这是我的第一个Symfony 2应用程序,我正在尝试登出当前登录的用户。
这是我的app/config/security.yml文件:
security:
encoders:
Symfony\Component\Security\Core\User\User: plaintext
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
providers:
in_memory:
memory:
users:
user0: { password: user0, roles: [ 'ROLE_ADMIN' ] }
user1: { password: user1, roles: [ 'ROLE_SUPER_ADMIN' ] }
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
login:
pattern: ^/demo/secured/login$
security: false
secured_area:
pattern: ^/
logout: ~
anonymous: ~
http_basic:
realm: "Secured Area"
access_control:
- { path: ^/question/*, roles: ROLE_ADMIN }
- { path: ^/questiongroup/*, roles: ROLE_ADMIN }
- { path: ^/answer/*, roles: ROLE_ADMIN }
- { path: ^/newslettertemplate/*, roles: ROLE_ADMIN }
- { path: ^/customer/*, roles: ROLE_SUPER_ADMIN }
- { path: ^/statistics/*, roles: ROLE_SUPER_ADMIN }
我已按照Symfony安全文档中的描述,在routing.yml中创建了注销登录的条目:
logout:
path: /logout
当我创建一个指向“注销”链接时,我确实被重定向到“/”,这是可以的。但用户仍然被认证,这意味着实际的注销操作没有生效。