Corda3,多方事务输出状态的字段级访问限制

Corda3,多方事务输出状态的字段级访问限制,corda,Corda,我有5个节点,每个节点代表partyA,partyB,partyC,partyD,partyE。 我需要做一个交易需要如下所述 只有来自partyA的“写入用户”才能“创建”或启动状态为20个字段的流,各方为partyA、B、C、D、E 任何其他用户(包括partyA中的“读取用户”)应该只能查看输出状态详细信息(但不能修改/使用) partyA,partyB应该可以看到所有20个字段 partyC,partyD应该只看到这20个字段中的15个 Party应该只看到20个字段中的10个 有人能建

我有5个节点,每个节点代表partyA,partyB,partyC,partyD,partyE。 我需要做一个交易需要如下所述

  • 只有来自partyA的“写入用户”才能“创建”或启动状态为20个字段的流,各方为partyA、B、C、D、E

  • 任何其他用户(包括partyA中的“读取用户”)应该只能查看输出状态详细信息(但不能修改/使用)

  • partyA,partyB应该可以看到所有20个字段

  • partyC,partyD应该只看到这20个字段中的15个
  • Party应该只看到20个字段中的10个
  • 有人能建议在corda3.x中实现输出状态的字段级读写访问控制的最佳方法吗


    提前谢谢。

    恐怕在州一级没有隐私控制

    就你的例子而言,最好是创建3种状态与这些缔约方共享,例如FullState、HalvedState、QuarteredState

    在合同中,您可以确保交易的发起人/初始签名人是partyA的身份。因为只有发起者才能做出符合您#1要求的更改

    然后实现2个流,在创建/修改FullState后触发,并将其克隆到HalvedState并与相应节点共享