1

チェーンコード ABAC にファブリックcidを使用しています。正常に動作します。ただし、(ノード sdk を介して) ID 属性を更新した後、ABAC が意図したとおりに機能しませんでした。

私のワークフロー:

1. ノード SDK を介して ID を登録および登録します。

元値、

attrs: [ {"name": "role", "value": "client", "ecert": true} ]

2.チェーンコードの呼び出し。ABAC は意図したとおりに機能します。

ID、エラー:= cid.New(スタブ)

err = identity.AssertAttributeValue("役割", "クライアント")

  1. ID 属性の更新 (役割 -> ユーザー)

元値、

attrs: [ {"name": "role", "value": "user", "ecert": true} ]

  1. チェーンコードの呼び出し。同じ条件の ABAC エラー。

属性をログに記録したところ、更新された値 (ユーザー) ではなく、ID がまだ古い役割 (クライアント) を保持していることがわかりました。ただし、fabric-ca-server.dbユーザー テーブルには最新の属性値 (ユーザー) があります。ここでちょっと混乱!!

手順がありませんか?誰かがこれの正確な原因を見つけるのを手伝ってくれますか?

編集:

ファブリック v1.4

4

1 に答える 1