将FlowRouter与onResetPasswordLink,onEnrollmentLink和onEmailVerificationLink结合使用

时间:2016-05-09 20:24:53

标签: meteor meteor-accounts flow-router

我不情愿地实施我自己的用户帐户系统,因为Meteor使用 bcrypt 存储加密密码,而在Ubuntu实例上运行的Dovecot / Postfix电子邮件系统使用 SHA512 。 Debian / Ubuntu人选择不在他们的Linux发行版中实现 bcrypt ,这需要这个相当痛苦的练习。这要求我在我自己的用户帐户中获取未加密的密码,以生成并保存 SHA512 版本,我随后将其用于为我的成员配置电子邮件服务。

我实现了@bgmaster和@stubailo提供的解决方案,但它似乎不能与FlowRouter一起使用。正如@bgmaster指出的那样,他无法使用铁:路由器。在我的例子中,onEnrollmentLink回调从未被激活,因为FlowRouter在函数执行之前获得了控制权。如果我放弃了“注册帐户/令牌”#39;路线,FlowRouter抱怨没有路线。

在我淘汰FlowRouter之前,有没有人能够使用核心Meteor帐户和FlowRouter实现自己的用户帐户系统?更好的是,有没有办法在标准帐户工作流程中获取未加密的密码?我更喜欢使用内置帐户-ui'包裹甚至是“使用”#。

谢谢!

Using onResetPasswordLink, onEnrollmentLink, and onEmailVerificationLink methods properly in Meteor

1 个答案:

答案 0 :(得分:1)

您必须滚动自己的用户界面,然后使用Accounts.createUser()

我强烈建议您在调用Accounts.createUser()之前在客户端上计算SHA512哈希值,并将哈希值作为profile对象的一部分传递,以便它最终成为与帐户一起保存。

电子邮件验证链接无关紧要,因为此时未捕获密码,但您还需要创建自己的密码重置用户界面。