3

我正在开发一个用户可以使用证书登录的项目。

因此,如果 POST 请求中有有效证书,我想在控制器中登录用户并重定向到主站点。

我正在使用 FOSUserBundle 但没有找到任何解释这是否可能或如何完成的内容。

是否有人已经这样做或知道如何做到这一点?

4

1 回答 1

2

我终于找到了答案。

    $token = new \Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken($user, $pw, "main", array("ROLE_USER"));
    $this->get('security.context')->setToken($token);

    $event = new \Symfony\Component\Security\Http\Event\InteractiveLoginEvent($this->getRequest(), $token);
    $this->get('event_dispatcher')->dispatch('security.interactive_login', $event);

    $user = $this->get('security.context')->getToken()->getUser();
于 2013-01-03T09:32:03.240 回答