FHIR Chat · custom CompartmentDefinitions and authorization · implementers

Stream: implementers

Topic: custom CompartmentDefinitions and authorization


view this post on Zulip Jens Villadsen (Mar 13 2019 at 11:46):

How come the CompartmentDefinition.code is not extensible? If compartmentDefinitions are meant to be of use in some authorization use cases, and eg. the part that grants access to a certain set of resources goes through eg. a CareTeam, it's sort hard to do currently.

view this post on Zulip Lloyd McKenzie (Mar 13 2019 at 14:51):

At the moment, because compartment definitions drive code so much, we've said that only HL7 can define and change them. That doesn't mean we couldn't revisit that decision though.

view this post on Zulip Jens Villadsen (Mar 13 2019 at 19:56):

That would still be the case if the set is extensible.

view this post on Zulip Christiaan Knaap (Apr 11 2019 at 09:14):

I think a GraphDefinition is more capable of expressing authorization rules than a CompartmentDefinition. Anyone else's thoughts on that?

view this post on Zulip John Moehrke (Apr 11 2019 at 12:17):

Realistically: Security and Privacy will leverage anything they can when it comes to rules writing and rules enforcing. This is why there is no singular binding of a security model to FHIR.

view this post on Zulip John Moehrke (Apr 11 2019 at 12:21):

Compartment in terms of REST is related to Compartment in terms of Security; but they are not the same thing. As I said above, security is happy to leverage the REST (CompartmentDefinition) compartment mechanism. However Security-labels include the concept of compartment as a tag. Local domains will identify compartments, and put that tag on all the data that is to be considered within that compartment. This concept of compartment as a tag is the Security domain concept of Compartment. This concept of compartment is what you will see in a government system, like military. These security compartment tags are completely dynamic, and universally supported in the FHIR specification.

view this post on Zulip John Moehrke (Apr 11 2019 at 12:23):

On GraphDefinition, I would agree this is also a good tool for Privacy and Security. I would love to see someone propose this as a model for writing the rules of a Privacy-Consent. The nice part of this is that the graph definition is managed independent of the data, and thus is more flexible to changes in policy. @Christiaan Knaap do you have an example?

view this post on Zulip Christiaan Knaap (Apr 11 2019 at 12:24):

No, I haven't - I have not left the theoretical phase yet.

view this post on Zulip Christiaan Knaap (Apr 11 2019 at 12:25):

I was interested in community thoughts on this because it would mean that custom CompartmentDefinitions (that @Jens Villadsen requested) are not that neccessary.

view this post on Zulip John Moehrke (Apr 11 2019 at 12:27):

Compartments in the REST domain are far less dynamic, much more like FHIR has today.

view this post on Zulip Lloyd McKenzie (Apr 11 2019 at 14:20):

When I was talking about Compartment from a security perspective, I was referring to the RESTful compartments. I.e. a practitioner might have access to data in one patient's Compartment, but not another. Or a Practiioner might always have access to data that's in their Compartment. This use of Compartment is more common than using it as a query mechanism

view this post on Zulip Grahame Grieve (Apr 12 2019 at 20:52):

also, this use is implicit not explicit

view this post on Zulip Grahame Grieve (Apr 12 2019 at 20:52):

Compartments are very challenging when they are based on indirect references. I don't see how we'd make a CareTeam compartment work

view this post on Zulip Jens Villadsen (Apr 23 2019 at 12:24):

Right - having thought about it, Careteams is probably not a good fit. As I see it, compartments more or less works as a set of restrictions for an entity (machine or person) that in some unspecified way can act as a user to the system. In that perspective, a Careteam is not part of that definition as it more or less consists of a group of entities

view this post on Zulip nicola (RIO/SS) (Apr 23 2019 at 20:57):

Here how we do custom compartments - https://docs.aidbox.app/tutorials/compartments


Last updated: Apr 12 2022 at 19:14 UTC