0

我在 symfony2 控制器中有一个用户实体,我需要登录该用户。显然我不明白该过程如何使用 Csrf 令牌并登录用户。

我必须做什么才能登录用户?

4

1 回答 1

2

拥有一个用户对象,您可以通过编程方式登录/验证用户

    $token = new UsernamePasswordToken($user, $user->getPassword(),
                                       "public", $user->getRoles());

    $this->get("security.context")->setToken($token);

    // Trigger login event
    $event = new InteractiveLoginEvent($request, $token);
    $this->get("event_dispatcher")
         ->dispatch("security.interactive_login", $event);

您需要包含此类

use Symfony\Component\EventDispatcher\EventDispatcher,
    Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken,
    Symfony\Component\Security\Http\Event\InteractiveLoginEvent;
于 2013-02-22T14:21:24.210 回答