[英]Symfony2 Multiple Firewalls: Logs out from other firewall
我的Symfony2应用程序有2个防火墙 (一个用于管理面板 ,一个用于注册用户 )和2个内存提供程序 (一个用于管理员 ,一个用于注册用户 )-太动态了吧?
现在,我尝试访问注册用户 Boom的路由。 出现预期的基本身份验证对话框。
接下来,当我尝试访问admin的路由时,再次出现另一个BasicAuth对话框-也是预期的。
但是,当我导航回任何注册用户的路由时,再次出现BasicAuth对话框,我得出的结论是,每次我使用与我导航的路由相匹配的防火墙的身份验证对话框询问我的凭据时,自动从其他防火墙注销。
这是我的security.yml
文件。
security:
role_hierarchy:
ROLE_ADMIN: ROLE_USER
providers:
walang_forever:
memory:
users:
user:
password: test
roles: 'ROLE_USER'
nailad_forever:
memory:
users:
admin:
password: test
roles: 'ROLE_ADMIN'
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
admin_gugma:
pattern: ^/admin
http_basic:
provider: nailad_forever
main_gugma:
pattern: ^/user
http_basic:
provider: walang_forever
encoders:
Symfony\Component\Security\Core\User\User: plaintext
access_control:
- { path: ^/admin, roles: ROLE_ADMIN }
- { path: ^/user, roles: ROLE_USER }
我想要的只是每个防火墙登录一次。
有类似的经历吗? 还是提出解决方案?
在两个注销防火墙设置上都使用invalidate_session:false:
logout:
path: mylogoutpath
target: MyBundle_homepage
invalidate_session: false
invalidate_session:false可以解决问题。 请参阅: https : //extractcode.com
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.