Web services 使用symfony2通过rest进行身份验证

Web services 使用symfony2通过rest进行身份验证,web-services,rest,symfony,Web Services,Rest,Symfony,我是symfony2的新手,我正在尝试通过restapi与FOSUserBundle连接。 web浏览器身份验证工作正常,我可以使用FOSUserBundle创建用户。 事实上,我想用Symfony构建一个web服务。 如何连接用户vie rest? 轻松使用rest和symfony2是一个捆绑包吗 谢谢。要对用户进行身份验证,首先要创建一个操作,该操作将使用用户名和密码。然后根据用户名和密码从数据库中查找用户。要在数据库中传递密码,您必须按照FOSUserBundle的方式传递密码。稍后您需要

我是symfony2的新手,我正在尝试通过restapi与FOSUserBundle连接。 web浏览器身份验证工作正常,我可以使用FOSUserBundle创建用户。 事实上,我想用Symfony构建一个web服务。 如何连接用户vie rest? 轻松使用rest和symfony2是一个捆绑包吗


谢谢。

要对用户进行身份验证,首先要创建一个操作,该操作将使用用户名和密码。然后根据用户名和密码从数据库中查找用户。要在数据库中传递密码,您必须按照FOSUserBundle的方式传递密码。稍后您需要创建UsernamePasswordToken。为此,你可以使用下面的代码

$providerKey = $this->container->getParameter('fos_user.firewall_name');
$token = new UsernamePasswordToken($user, null, $providerKey, $user->getRoles());
$this->container->get('security.context')->setToken($token); 
我想它会对您有所帮助。

我建议使用“Wsse”作为授权方法

你可以在网站上看到。 甚至还有提供wsse例程的


关于让REST成为你的应用程序,我建议你使用

你应该看看。这是错误的答案。REST API必须具有自定义身份验证提供程序,才能不使用cookie来维护登录的用户。这是一篇关于如何做到这一点的好文章。