如何在 Hyperledger Fabric GO 中执行注销操作?

How to perform Logout operation in Hyperledger Fabric GO?

我正在使用 Hyperledger Fabric Go SDK 处理基本用户 Register/Login/Logout 流程。我已经使用 CA Client Register 方法成功创建了签名身份,并且还注册了用户。

报名:

_, err := s.CaClient.Register(&caMsp.RegistrationRequest{
    Name:           email,
    Secret:         password,
    Type:           "user",
    MaxEnrollments: -1,
    Affiliation:    "org1",
    Attributes: []caMsp.Attribute{
        {
            Name:   "usermode",
            Value:   userType,
            ECert:   true,
        },
    },
    CAName: s.CaID,
})

登录:

err := s.CaClient.Enroll(email, caMsp.WithSecret(password))
if err != nil {
   return  nil, fmt.Errorf("failed to enroll identity '%s': %v", email, err)
}

但无法在我的 Web 应用程序中找到执行 注销 流程的方法。我在 Fabric CA 中看到的方法很少,比如 RemoveIdentity 和 Revoke,这些都是从 CA 中完全删除用户。

所以,请为我的问题提出一些技巧。

没有注销,因为没有会话概念。当你注册用户时,你会得到它的 certificates/private key/public 键。您没有登录。使用这些 "credentials" 您可以连接到对等点,执行操作然后断开与对等点的连接。

我不使用 go SDK,但是基于 the documentation 你可以使用 fabsdk.Close() to release resources and caches