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

Auxiliary Resources with own Access Controls #501

Open
csarven opened this issue Feb 22, 2023 · 1 comment
Open

Auxiliary Resources with own Access Controls #501

csarven opened this issue Feb 22, 2023 · 1 comment

Comments

@csarven
Copy link
Member

csarven commented Feb 22, 2023

https://solidproject.org/ED/protocol#auxiliary-resources does not specify access controls on auxiliary resources themselves.

Raising this as an issue as it its essence was brought up by different people over time, e.g.:

Related issues:

Notes:

@matthieubosquet
Copy link
Member

Maybe worth linking to those related authorization issues as well:

From the perspective of the ACP domain model, the approach and solution to such concerns could be quite generic because any resource can have an access control resource. The following, for example, is perfectly valid:

ex:resource1 acp:accessControlResource ex:acr1 .
ex:auxiliaryresource1 acp:accessControlResource ex:acr2 .

Generally, given that:

  1. Auxiliary resources' lifecycle should depend on the primary
  2. Eventually something needs to express access over itself (r1 --rel:acl--> acl1 --rel:acl--> acl2 ... acl83729 ... doesn't practically work)

I don't think there is a lot of interest in implementing a system where auxiliary resources link to their own rel=acl resource.

I think I would be in favour of:

  1. Allowing the acl of Solid resources to express specific rules for auxiliaries
  2. Defaulting to auxiliary permissions being applicable for auxiliaries

Allowing the acl of Solid resources to express specific rules for auxiliaries

This is already the case for ACL that express access to themselves via the acl:Control mode. It would be possible to devise a new mode for specific types of auxiliaries... but that would be quite inconvenient because it would require new modes for each new type of auxiliary resource.

I think it would be preferable to express access to auxiliaries resources via their relation to the primary. In other words, I would rather express control over the thing that describes the primary resource rather than control over the description auxiliary resource itself. For example, ammending my first ACP example in that optic:

ex:resource1 acp:accessControlResource ex:acr1 .

[]
  rel:describes ex:resource1 ;
  acp:accessControlResource ex:acr2 .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Development

No branches or pull requests

2 participants