Meteor.js中的自定义身份验证

时间:2014-01-06 16:23:15

标签: authentication meteor

Meteor拥有一个出色的身份验证系统,其中包含一些精彩的OAuth包。但是,如果有人想使用一些自定义身份验证机制呢?像LDAP,或私有OAuth服务器,或诸如此类。

那么,更具体地说,在使用Meteor的身份验证核心,SRP协议等的同时,自定义登录/注销流程的最佳方法是什么?我们非常感谢一些实际的例子。

2 个答案:

答案 0 :(得分:4)

您可以轻松自定义和制作适用于meteor核心软件包的OAuth软件包,特别是accounts-base

您可以使用大气(http://atmosphere.meteor.com)上的LDAP包,但我自己没有使用它。如果你还没有安装陨石,你可以用陨石添加它们。

sudo -H npm install meteorite

要创建自己的包,有大量示例引用git repos,其源代码位于http://atmosphere.meteor.com。还有一篇关于如何更详细地执行此操作的博文:http://meteorhacks.com/extending-meteor-accounts.html

答案 1 :(得分:3)

如果您正在寻找手动执行所有身份验证操作的方法,我建议您查看未记录的方法。 Meteorhacks博客中介绍了一些有用的方法 另外,我在我的TFA实现中使用了一些未记录的方法,您可以在我的blog post中阅读。实际上,我用自己的身份替换了所有默认的身份验证流程,我认为这是实现复杂功能的唯一方法。
您自己的身份验证流程最需要的方法是:

  1. Meteor.loginWithToken
  2. Accounts._generateStampedLoginToken
  3. Accounts._hashStampedToken
  4. Accounts._checkPassword
  5. 当然,您必须使用自己的Meteor方法替换整个身份验证流程。