2014-01-06 55 views
3

Meteor拥有一个非常棒的身份验证系统,其中包含一些精彩的OAuth软件包。但是如果人们想要使用一些自定义的认证机制呢?像LDAP一样,或者一个私人的OAuth服务器,或者其他什么。Meteor.js中的自定义身份验证

因此,更具体地说,在仍使用Meteor的认证核心,SRP协议等的同时自定义登录/注销流程的最佳方式是什么?一些实际的例子将非常感激。

回答

4

您可以自定义并制作您自己的OAuth包,它可以与流星的核心软件包,特别是accounts-base一起使用。

已经有一个大气可用的LDAP包(http://atmosphere.meteor.com),可以使用,尽管我自己并没有使用它。如果你还没有安装它,你可以将它们添加到陨石中。

sudo -H npm install meteorite 

为了使自己的包也有实例的引用负荷与git上http://atmosphere.meteor.com源代码回购。还有如何在这样做更详细博客文章:http://meteorhacks.com/extending-meteor-accounts.html

3

如果你正在寻找各种方法来手动执行所有的认证行动,我可以建议你查看无证方法。在Meteorhacks博客中描述了一些有用的方法。
另外,我在我的TFA实现中使用了一些未公开的方法,您可以在我的blog post中阅读这些方法。事实上,我用我自己的所有默认身份验证流程替换了,我认为这是实现复杂事物的唯一方法。
为自己的身份验证流程,最需要的是方法:

  1. Meteor.loginWithToken
  2. Accounts._generateStampedLoginToken
  3. Accounts._hashStampedToken
  4. Accounts._checkPassword

,并当然,你必须用你自己的Meteor方法替换整个认证流程。

+1

我是Meteor的新手,对我来说这是个大黑盒子。但是你的博客文章绝对令人惊叹。我向所有想要更深入了解流星的人提出建议。 非常感谢! 已投票。 – KubaKubikula