Inclui função na condição ACL
Eu tenho um ativo chamado MedicalFile que contém uma referência a uma organização. O participante HealthCareProfessional também pertence a uma organização.
Agora, gostaria de definir uma regra da ACL que limite o profissional de saúde a exibir apenas os arquivos médicos com os quais o MedicalFile está conectado à sua organização.
Eu vim com a seguinte regra:
rule OrganisationMedicalFilePermission {
description: "An organisation may updates a medical file which they have permission from"
participant(h): "nl.epd.blockchain.HealthCareProfessional"
operation: ALL
resource(m): "nl.epd.blockchain.MedicalFile"
condition: (m.organisations.includes(h.organisation))
action: ALLOW
}
Isso resulta em uma matriz vazia depois que eu chamo a API RESTful com loopback. Sou autenticado como profissional de saúde.
Ativos e Participantes:
asset Organisation identified by id {
o String id
o String name
o String city
o String zipCode
o String street
o String houseNumber
,o String houseNumberExtra optional
o OrganisationType organisationType
}
asset MedicalFile identified by bsn {
o String bsn
--> Patient owner
--> Patient[] mentors optional
--> Organisation[] organisations optional
o Visit[] visits optional
o String[] allergies optional
o Treatment[] treatments optional
o Medicine[] medicine optional
}
participant HealthCareProfessional identified by bsn {
o String bsn
o String firstName
o String namePrefix optional
o String lastName
--> Organisation organisation
}
Minha pergunta é se é possível criar uma condição que valide esse problema. Caso contrário, quais são minhas opções?