【问题标题】:Hyperledger Fabric Rest API multiple user authenticationHyperledger Fabric Rest API 多用户身份验证
【发布时间】:2018-04-08 21:54:43
【问题描述】:

我使用命令部署了 Hyperledger Fabric API:

-> composer-rest-server -c admin@mynetwork -a true -m true

我有这样的本地环境变量:

export COMPOSER_PROVIDERS='{
  "github": {
    "provider": "github",
    "module": "passport-github",
    "clientID": "e3e9af5103fde6d4cc54",
    "clientSecret": "45ce6aaa9ff142cafd73c0b35509713ab24c627b",
    "authPath": "/auth/github",
    "callbackURL": "/auth/github/callback",
    "successRedirect": "/",
    "failureRedirect": "/"
  }
}'

我在 github 中有这样的身份验证: 主页网址:

http://localhost:3000/

授权回调网址:

http://localhost:3000/auth/github/callback

我还有一个客户端 Web 应用,它在 Github 中进行身份验证。

问题: 我的 Web 客户端在 github 中完成了身份验证,并将 access_token 保存在 cookie 中。然后我执行帖子以这样的文件上传我的身份证:

http://localhost:3000/api/wallet/import?name=myName&access_token="+$scope.access_token; 

问题是执行帖子后,我有这个错误:

statusCode":401,"name":"Error","message":"Authorization Required","code":"AUTHORIZATION_REQUIRED"

我做错了什么?这是环境变量吗?我可以清楚地看到 API 正在运行,否则我不会收到此错误消息,但 API 身份验证显然有问题...

【问题讨论】:

    标签: hyperledger-fabric hyperledger hyperledger-composer


    【解决方案1】:

    将业务网卡作为文件从它需要的磁盘导入:

    1) 成为正确的格式 - 您是如何构建您尝试通过 REST API 导入的名片的?见https://hyperledger.github.io/composer/latest/managing/id-cards-playground.html。猜测一下,您似乎实际上并没有使用 REST API 导入 Composer 业务网卡(具有有效的元数据、connection.json 文件以及注册 id/secret 或证书/密钥以创建有效的 .card 文件)使用 /Wallets 下的 POST /wallet/import 操作

    2) 卡片文件必须是有效的.card(后缀)文件才能导入

    您使用的是哪个版本的 Composer?

    您能否指出您遵循了哪个教程或文档?

    这些细节会有所帮助。

    【讨论】:

    • 1) 我使用的卡是管理员卡。它是在我部署网络时创建的……所以应该没问题。您能否检查您发送的链接,因为它不起作用。
    • 2) 它是一个 .card 文件 Composer 版本是 0.16.3 我没有遵循任何教程....我自己完全发现了这一点,但如果你有一个很好的教程我怎么能创建一个 Web 客户端来与 Fabric 交互并登录不同的用户请告诉我,我将永远感谢你!感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2016-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-15
    • 2019-03-31
    • 2018-07-26
    • 2019-08-17
    相关资源
    最近更新 更多