我正在寻找制定自己的策略。
I have client_id
, client_secret
以及相关的元数据。我也知道执行流程。所以我想创建自己的策略并添加自定义逻辑进行身份验证。
我在看护照策略 https://www.npmjs.com/package/passport-strategy,但我不明白如何实施我自己的策略。谁能解释一下吗?
您在这里有两个选择:
如果您有自定义的身份验证逻辑,您实际上不需要创建自己的策略...您可以使用护照定制 https://www.npmjs.com/package/passport-custom允许您构建此逻辑的策略。根据文档:
自定义身份验证策略通过您选择的自定义逻辑对用户进行身份验证
除非您想实际构建一个要分发的策略(例如:OpenID 的实现或类似的东西),否则我不认为实现您自己的策略有什么意义。
然而,实现你自己的策略包括实现passport-strategy抽象类。我建议调查一下Github https://github.com/jaredhanson/passport-strategy页面而不是 npm 页面,因为它包含有关如何启动和运行的更多信息。基本上,制定自己的策略应遵循的步骤是:
- 子类策略
- 通过在原型上定义authenticate()方法来实现身份验证(在这里您将拥有自定义逻辑)。
- 调用增强方法之一(.success、.fail、.pass、.redirect 或 .error)
最后,您需要将其打包为 npm 模块,一旦一切准备就绪,您就可以在 Node.js 项目中使用您自己的策略。
正如我所说,我认为你需要有充分的理由来制定自己的策略。我会尝试一下护照定制 https://www.npmjs.com/package/passport-custom.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)