【发布时间】:2017-10-31 20:16:03
【问题描述】:
我希望制定自己的策略。
我有client_id、client_secret 和相关的元数据。我也知道执行流程。所以我想创建自己的策略并添加我的自定义逻辑以进行身份验证。
我查看了passport-strategy,但我不明白如何实施我自己的策略。谁能解释一下?
【问题讨论】:
标签: javascript node.js authentication oauth-2.0 passport.js
我希望制定自己的策略。
我有client_id、client_secret 和相关的元数据。我也知道执行流程。所以我想创建自己的策略并添加我的自定义逻辑以进行身份验证。
我查看了passport-strategy,但我不明白如何实施我自己的策略。谁能解释一下?
【问题讨论】:
标签: javascript node.js authentication oauth-2.0 passport.js
这里有两个选择:
如果您有自定义的身份验证逻辑,您实际上不需要创建自己的策略...您可以使用passport-custom 策略,它允许您构建此逻辑。根据文档:
自定义身份验证策略通过您选择的自定义逻辑对用户进行身份验证
除非您想实际构建一个您想要分发的策略(例如:OpenID 的实现或类似的东西),否则我认为实施您自己的策略没有意义。
但是,实施您自己的策略包括实施护照策略抽象类。我建议查看 Github 页面而不是 npm 页面,因为它包含有关如何启动和运行的更多信息。基本上,拥有自己的策略要遵循的步骤是:
最后,您需要将它打包为一个 npm 模块,一旦您准备好一切,您就可以在您的 Node.js 项目中使用您自己的策略。
正如我所说,我认为您需要有充分的理由来制定自己的策略。我会试试passport-custom。
【讨论】: