Hyperledger,使用带有REST服务器的Google OAUTH2.0

Hyperledger,使用带有REST服务器的Google OAUTH2.0,rest,google-oauth,hyperledger-fabric,hyperledger-composer,Rest,Google Oauth,Hyperledger Fabric,Hyperledger Composer,我部署了网络以从REST客户端进行查询,并启动了REST实例。我想使用GoogleOAuth来满足身份验证的需要,但碰巧出现了一个身份验证错误 网络在本地主机上:3000,看起来不错;但是,当我导入名片并在/system/historian中“试用”时,我会得到以下响应正文: “错误”:{ “状态代码”:500, “名称”:“错误”, “消息”:“尝试登录和获取用户上下文时出错。错误:尝试注册用户或加载通道配置时出错。错误:注册失败,出现错误[[{“代码”:20,“消息”:“授权失败”}]],

我部署了网络以从REST客户端进行查询,并启动了REST实例。我想使用GoogleOAuth来满足身份验证的需要,但碰巧出现了一个身份验证错误

网络在本地主机上:3000,看起来不错;但是,当我导入名片并在/system/historian中“试用”时,我会得到以下响应正文:

“错误”:{ “状态代码”:500, “名称”:“错误”, “消息”:“尝试登录和获取用户上下文时出错。错误:尝试注册用户或加载通道配置时出错。错误:注册失败,出现错误[[{“代码”:20,“消息”:“授权失败”}]], “堆栈”:“错误:尝试登录和获取用户上下文时出错。错误:尝试注册用户或加载通道配置时出错。错误:注册失败,出现错误[[{“代码”:20,“消息”:“授权失败”}]\n位于client.getUserContext.then.then.catch(/home/composer/.npm global/lib/node_modules/composer rest server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at\n at process.\u tickDomainCallback(内部/process/next_tick.js:228:7)

预期的行为是显示一组事务

我检查了钱包,认为我的卡可能有问题,但似乎没有问题。代码是200,这是预期的,下面是回复正文:

[ { “名称”:“liner1”, “默认值”:false }, { “名称”:liner1@iot-易腐网络高级“, “默认值”:true }
]

如果您已经将卡导入钱包,那么您的Google Oauth配置就可以了

您导入的卡似乎有问题。颁发身份证(并创建卡)时,将创建一个一次性机密。首次使用卡时,该机密将交换为证书/密钥,一次性机密将失效

我猜您已经为一个已经使用过的用户导入了一个.card文件,因此现在该机密无效。如果我是对的,您需要将该卡从其工作的位置导出到一个包含证书/密钥的新.card文件,然后将该新的.card文件导入REST服务器钱包。可能需要使用命令
composer卡导出
是您需要的


有更多关于卡片的信息。

我不知道你所说的“已使用用户的文件”是什么意思。不过我相信我已经解决了问题。你说的卡片有问题是对的。当我去我的游乐场时,我看到有两个“连接”s同名,我的两张卡在一个连接下,另外两张卡在另一个连接下。当我尝试通过restadmin卡或参与者卡进行连接时,我会遇到与Google Oauth REST相同的错误。如何抵制将我的卡置于不同的连接下?