Žan*_*rle 9 switch-statement symfony
说明
在Symfony2中,允许用户切换到任何其他用户很容易.我的问题是,如何允许某些用户只切换到某些其他用户?我正在使用FOSUserBundle作为我的用户提供商.
例
有5个用户,UserA,UserB,UserC,UserD,UserE,但只有3个链接在一起.
UserA可以切换到UserB和UserC
UserB可以切换到UserA和UserC
UserC可以切换到UserA和UserB
谢谢你的帮助!
Tyl*_*mer 15
你可以通过覆盖默认的SwitchUserListener来实现这种类型的东西.
您要覆盖的参数是: security.authentication.switchuser_listener.class
例如,在parameters.yml中:
parameters:
security.authentication.switchuser_listener.class: My\Project\Security\Listener\SwitchUserListener
Run Code Online (Sandbox Code Playgroud)
在您的自定义侦听器类中,您将实现Symfony\Component\Security\Http\Firewall\ListenerInterface并使用现有Symfony\Component\Security\Http\Firewall\SwitchUserListener类作为自定义实现的基础.