我需要实施一件事。在Symfony中,我有2个防火墙(管理员和整个网络) - 都使用FOSUserBundle。现在我需要登录一个简单的部分,这是一个独立的部分。我不想使用我用于管理员和Web登录的用户实体,因为我不想将用户与新部分混在一起。所以我创建了一个独立的实体SectionUser和新的防火墙。现在我尝试手动记录用户 - 为新防火墙创建一个新的UsernamePasswordToken。
$token = new UsernamePasswordToken($user, $user->getPassword(), "section", array());
$securityContext = $this->container->get('security.context'); // do it your way
$securityContext->setToken($token);
但我最终在/ new-section / login上无限循环。这是我的security.yml和防火墙设置:
section:
pattern: ^/new-section(.*)
form_login:
login_path: /new-section/login
use_forward: true
check_path: /new-section/login_check
failure_path: null
logout:
path: /new-section/logout
anonymous: true
我是否需要实施其他任何方法或我的方法是错误的,我应该以任何方式使用FOSUserBundle?谢谢你指点我的方向。
自定义登录提供程序是一种方式吗?我被困在这里,不知道如何处理它。