Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: simpler access control model #295

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

nissimsan
Copy link
Contributor

This has two suggestions:

  1. Drop the idea of mixing item id and access key
  2. Drop the role, this isn't actually Role Based Access Control anyway

@onthebreeze
Copy link
Contributor

Hi Nis.

I'm all for simpler. But lets trigger a broader discussion on this.

  1. With respect to the item ID as access key. Perhaps the wording is misleading but the business intent here is that someone who does not physically hold the item cannot see data specific to the serialised item. The publisher of the data doesn't know in advance who will buy the item and so has no way to share some out-of-bounds key. The key has to go with the physical item. Sometimes you cant even put some secret key in the box because there is no box (think RFID tag in cow's ear). So making the item ID un-guessable is a practical way to achieve the business goal. Sometimes (eg cattle) perhaps the only way to achieve the goal. So I'm keen not to delete this one.
  2. With regard to role, again maybe misleading language but the business intent is that a data provider may need to provide access to a party that they don't know in advance (eg a recycling plant) but where they can receive evidence that a given requestor has an authorised role granted by some other party they trust. Eg UK government maintains a list of authorised recycling plants and issues the plants with a relevant DIA credential. recycling plant presents the credential when requesting data and the provider says "I dont know you but I can see that UK govt says you are a recycling plant - so here you go". In that case we need to specify what kind of "roles" are allowed - or else the requester might present a valid DIA saying that they are a veterinary surgeon - but that doesn't mean they should get access to data intended for recycling plants.

So if we delete these two features, how do you propose to solve the corresponding business problem?

@nissimsan
Copy link
Contributor Author

I sincerely regret mixing two suggestions into one!

Per 1) it is the conflation of concerns that bother me with this. My suggestion is to focus on the access key. If implementers choose to use that as an item identifier, they are free to do so. But IMO that is beyond the UNTP spec.

Per 2) OK, I wasn't aware of this intention. Ambitious.

I'm happy to drop this PR, just thought it was worth a discussion.

@zachzeus
Copy link
Contributor

As we discussed in the meeting tonight - maybe we should simplify the page by dramatically reducing its scope for the initial release, and move the more ambitous components to a 'roadmap' for this section. With an invite to implementers and collaborators to help us explore this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants