Участник, использующий транзакцию для обновления / добавления другого участника - PullRequest
0 голосов
/ 29 сентября 2018

Предположим, я создаю двух участников типа A и B соответственно и транзакцию X, которая может быть выполнена только типом участника B или администратором.Более того, я добавил некоторые правила разрешения, что Участник А может быть создан / обновлен только администратором или другим Участником типа А.Теперь моя логика в транзакции X требует создания / обновления участника A. Итак, если я выполню транзакцию X, используя один из идентификаторов реестра участника B, сможет ли он создать / обновить участника A?Если нет, то есть ли способ сделать это?

1 Ответ

0 голосов
/ 01 октября 2018

Если я правильно понял ваше требование, тогда эти правила должны работать для ядра того, что вы хотите: (В этом примере используется базовый пример сети по умолчанию)

rule BforX {
 description: "Allow B access to transaction X"
 participant: "org.example.basic.SampleParticipantB"
 operation: READ, CREATE, UPDATE
 resource: "org.example.basic.SampleTransactionX"
 action: ALLOW
}

rule BforAinX {
 description: "Allow B access to A whilst in X"
 participant: "org.example.basic.SampleParticipantB"
 operation: READ, CREATE, UPDATE
 resource: "org.example.basic.SampleParticipantA"
 transaction: "org.example.basic.SampleTransactionX"
 action: ALLOW
}

rule NotAforX {
 description: "Deny A access to transaction X"
 participant: "org.example.basic.SampleParticipantA"
 operation: ALL
 resource: "org.example.basic.SampleTransactionX"
 action: DENY
}

rule AforA {
 description: "Allow A access to Participant_A"
 participant: "org.example.basic.SampleParticipantA"
 operation: READ, CREATE, UPDATE
 resource: "org.example.basic.SampleParticipantA"
 action: ALLOW
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...