Symfony /通过GET / POST请求登录

时间:2017-02-11 12:21:04

标签: symfony

是否可以通过发送GET / POST请求进行登录? 我正在尝试从移动应用程序登录。所以我想以某种方式将用户名和密码发布到php。

这就是我现在的方式: http://symfony.com/doc/current/security/form_login_setup.html

编辑:

我认为这可能会有所帮助,但它是在没有密码或密码错误的情况下登录的,所以我认为这不是我需要的?

$token = new UsernamePasswordToken($user, 'password', 'main', $user->getRoles());
$this->get('security.token_storage')->setToken($token);

谢谢

2 个答案:

答案 0 :(得分:1)

我认为最好的选择是:

  1. 使用基本的http身份验证。通过将用户凭据传递给http header,形成为base64。
  2. 执行auth的帖子并在成功时返回令牌,然后使用此令牌执行操作。在这种情况下,建议在每个操作上更新令牌并在数据库中保留令牌相关信息,例如:ip,time,user_id和如果使用或不使用令牌的信息。

答案 1 :(得分:1)

您非常接近解决方案,您需要发送InteractiveLoginEvent事件以通过编程方式进行身份验证。参见:

symfony2 programmatically authenticate user

How to programmatically login/authenticate a user?