我正在使用我的应用程序的后端FOS用户包,FOS Rest Bundle和FOS Oauth Bundle。这些工作正常。现在我想创建一个API,允许我的用户的应用程序在没有旧密码字段的情况下更改其密码。
我在互联网上搜索过但我没有找到关于如何通过API或代码更改密码的文档/网页,但总是没有old_password字段。
如果不存在:如果我创建一个获取(通过$ request)密码和密码_conf的API,我该如何验证它?我发现只有需要旧密码字段的文档。
感谢。
答案 0 :(得分:1)
$user->setPlainPassword($new);
$this->get('fos_user.user_manager')->updatePassword($user);
$um->updateUser($user);
我在生产环境中运行。与其他提议的解决方案非常相似。 FosUserBundle不检查执行此操作的权限,这是您在控制器或自定义管理器级别的责任。