我想使用passport-local来验证用户是否像其他护照策略一样登录到作曲家休息服务器(例如passport-github
,passport-google
)。
首先,我尝试像这样设置COMPOSER_PROVIDER
变量
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"}
然后我在docker中运行服务器(使用mongo作为持久化数据源)并在数据库集合中添加一些用户
问题是我需要使用此护照的下一步是什么。因为我运行此命令仍然得到401 Unauthorized
卷曲-H"内容类型:application / json" -X POST -d ' {"用户名":" {USER_NAME}""密码":" {USER_PASSWORD}"}&#39 ; http://localhost:3000/auth/local
使用这本护照还不够吗?我是否需要启动另一项服务来本地验证此登录(例如GitHub oAuth应用程序)?
答案 0 :(得分:0)
可以根据您的要求基于环回框架自定义composer-rest-server。
我建议您从官方文档中阅读本教程。
https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
答案 1 :(得分:-1)
我最初也想这样做,但是我只是编辑了作曲家休息服务器上的server.js文件,以便最后获得基本身份验证。
npm root -g
cd /home/ubuntu/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/server
const basicauth = require('basicauth-middleware'); app.use(basicauth('username', 'password!');