流星:在不注销的情况下更改用户密码
Meteor: change a user password WITHOUT logout?
Accounts.setPassword(userId, password);
在 Meteor v1.0.2 之前,用户在调用此函数时未注销。
从 v1.0.2 开始,我引用了 https://github.com/meteor/meteor/blob/devel/History.md 的话,"当用户的密码重置和登录令牌在密码更改时
,在任何情况下都要过期"。我不知道此更改的原因,但事实是上面的功能注销用户。
有没有办法在v1.0.2中更改用户密码而无需注销用户?
如果没有,我如何降级软件包帐户基础,使行为像以前一样?
谢谢。
Accounts.setPassword(userId, password, options)
此方法现在支持options
参数,该参数包含可用于防止当前用户注销options.logout
选项。
您可以使用Accounts.changePassword
(docs)来更改密码,这不会影响用户的现有令牌(从)https://github.com/meteor/meteor/blob/devel/packages/accounts-password/password_server.js#L299-L302
如果要在不知道现有密码的情况下从服务器执行此操作,则必须分叉accounts-password
包并删除以下行: https://github.com/meteor/meteor/blob/devel/packages/accounts-password/password_server.js#L338 将此包添加到应用的/packages
目录中
如果你想降级你的软件包(只要你使用的 meteor 版本支持它):
meteor remove accounts-password
meteor add accounts-password@1.0.3
上面的答案是正确的,这是确切的复制粘贴代码,以防您遇到困难:
Accounts.setPassword(userId, password, {logout: false});
注意:确保您正在执行此呼叫服务器端。
- 一个密码测试程序,如果存在空格,它会提醒用户
- 正确传输和保护用户'web应用程序的密码
- Firebase电子邮件/密码创建用户安全
- 更改错误文本“用户 ID 或密码不正确”
- 如何为在客户端检查其密码的用户创建登录页面
- Javascript 密码不应包含用户的帐户名或用户全名中超过两个连续字符的部分
- 正在云代码中检索用户密码
- 在客户端JavaScript中存储Web应用程序的用户密码 - 这是安全的吗?
- 在 document.ready 上保存的用户/密码为空
- 流星:在不注销的情况下更改用户密码
- 解析错误400(错误请求){代码:201,消息:“缺少用户密码”}
- 确保HTTP API的安全-无用户密码提示,避免暴露私钥
- 输入Hash以重置密码,而不是实际用户密码
- 用户密码经过散列和加盐处理,试图允许用户在前端更改密码
- 禁用默认用户/密码浏览器弹出
- 解析sessionToken在用户密码更新时被撤销
- AngularJS -使用md5 password检查登录服务中的用户/密码
- 创建带有用户密码的弹出窗口作为对话框
- Node.js Mongoose允许你通过用户/密码连接到数据库吗?
- 在注册或编辑前验证用户密码