注册后,我确保用户按如下方式登录:
$token = new UsernamePasswordToken($user, null, 'secured_area', $user->getRoles());
$this->get('security.context')->setToken($token);
并希望这也会触发我的成功处理程序:
$this->get('event_dispatcher')->dispatch(
AuthenticationEvents::AUTHENTICATION_SUCCESS,
new AuthenticationEvent($token)
);
处理程序在安全配置中的标准表单登录上设置,例如
firewalls:
secured_area:
form_login:
success_handler: authentication_handler
成功处理程序在登录时触发,但在注册后不会触发。
这只是一个配置问题吗?和/或所有这些都可以通过一个事件来实现吗?