基于第一方快速节点API的授权策略

我正在处理我的第一个API的devise,并且在授权概念上有些挣扎 – 我希望有些人能给我一些build议!

我正在build设的是:

  • 最终将被第三方应用程序和移动应用程序访问的API。
  • 基于networking的“客户端”(第一方单页应用程序)将使用API​​。 (这个第一方应用程序应该是API的一部分,还是完全独立的节点应用程序?)

我计划使用的技术:

  • 节点
  • performance
  • 护照
  • Mongodb与mongoose

我不会expression或护照,他们只是看起来像是最好的select,并有良好的logging – 我不希望一个潜在的解决scheme,因为替代依赖关系被解雇。 和Mongoose一样,我更喜欢Monk(甚至只是Mongojs)的外观,但是每个Tut似乎都使用mongoose,所以对于初学者来说,它似乎是最安全的select。

对用户进行身份validation非常简单(我已经通过了“梦幻般的啤酒储物柜”教程 ),我正在努力的是持续的授权。 当然,我不希望用户input一个用户名和密码,他们的每一个请求 – 这个信息应该存储在本地,并与每个请求发送? (如果是这样,怎么办?我不能find有关处理API的任何信息)或者我应该使用某种types的令牌吗? 我在“Digest”授权(包括Beer Locker教程后续)上所做的less量阅读,看起来像是有安全问题,至less在Passport的实施中(这个我并不完全了解,但似乎涉及到哈希密码,哪个护照不符合标准,只有MD5支持,即使它被添加?)。

我已经构build了一个可以使用“Basic”(直接通过Postman)进行授权的工作API,因此我拥有了基础 – 授权工作,我只需要工具就可以将它们添加到下一步!

我一直试图让我的头脑在这一两天,但我担心我陷入了一个更传统的本地Web应用程序工作stream程 – 整个API的东西都扔了一些。

任何帮助都非常感谢,即使它只是指向我一个适当的教程 – 上述要求必须相当普遍!

我也遇到了这个问题

我只能build议这样做的开始: http : //scotch.io/tutorials/javascript/easy-node-authentication-setup-and-local

告诉我,如果它帮助:)