我试图弄清楚如何通过ACL而不是以编程方式控制事务的运行。
e.g。如果我有两个参与者,买方和卖方,以及一个交易列出要出售的项目。我想配置一个ACL规则,该规则只说卖方可以运行事务来列出项目。如果买方运行交易,则应拒绝该交易。简化声明如下。
participant Person identified by emailId {
o String emailId
}
participant Buyer extends Person {
}
participant Seller extends Person {
}
asset listing identified by item {
o string item
o double price
--> Seller
}
transaction list {
o listing itemtosell
--> Seller seller
}
最好的问候, 贾米尔
答案 0 :(得分:0)
您需要与此类似的规则来实施您的解决方案:
rule EnableSellersList {
description: "Enable Sellers to use list"
participant: "org.acme.testorg.Seller"
operation: ALL
resource: "org.acme.testorg.list"
action: ALLOW
}
但规则是集合的一部分,您需要确保没有其他一般规则允许访问买方。
Composer文档中有good tutorial通过在事务上设置ACL(以及其他有用的ACL)。
访问控制语言也有reference doc。