acl:Authorization missing for default
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 153
- Forks
- 46
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 7
Description
@Bourgeoa found an inconsistency while testing my solid-acl-parser library: When a folder loads the default rules from a parent, no acl:Authorization is added to these rules. As a result my parser didn't notice them.
Steps to reproduce
- Go to /private/ in NSS
- Create /private/test/ folder
- Set specific sharing for this folder
- Inspect /private/test/.acl
@prefix : <#>.
@prefix n0: <http://www.w3.org/ns/auth/acl#>.
@prefix test: <./>.
@prefix c: </profile/card#>.
:owner
n0:accessTo test:;
n0:agent c:me;
n0:default test:;
n0:mode n0:Control, n0:Read, n0:Write.
Possible Fix
In the acl.js code, there is a line where acl:Authorization is added (here), but I afaik the function which loads the default doesn't call it.
I think the acl:Authorization should also be added here (can't test and verify it though):
https://github.com/solid/solid-ui/blob/d47d8a0e875de5ae4649fdd548400113b9f24c8d/src/acl.js#L55
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in src/acl.js around the default-rule loading code at line 55, then compare it with the acl:Authorization handling around line 249. Reproduce the /private/test/ scenario in NSS and inspect the generated .acl; done means inherited default rules include acl:Authorization.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- authorization
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100