SolidOS / SolidOS/solid-ui

Malformed acl rule in acl doc when modifying permissions

Open
#312 4 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
153
Forks
46
Avg merge
1d 8h
Merged PRs (30d)
7

Description

on /public I modified permissions for everybody from Viewers to Editors (Read to ReadWrite) and the acl doc was changed to :

@prefix : <#>.
@prefix n0: <http://www.w3.org/ns/auth/acl#>.
@prefix pub: <./>.
@prefix c: </profile/card#>.
@prefix n1: <http://xmlns.com/foaf/0.1/>.

:ControlReadWrite
    a n0:Authorization;
    n0:accessTo pub:;
    n0:agent c:me;
    n0:default pub:;
    n0:mode n0:Control, n0:Read, n0:Write.
:Read a n0:Authorization; n0:accessTo pub:; n0:default pub:; n0:mode n0:Read.

:ReadWrite
    a n0:Authorization;
    n0:accessTo pub:;
    n0:agentClass n1:Agent;
    n0:default pub:;
    n0:mode n0:Read, n0:Write.

As can be seen subject Read has not disapeared and is a malformed acl rule because it does not include any agent

The consequence is not in operation with the actual NSS but it should fail on a validity checker.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the permission change on /public from Viewers to Editors and inspect the generated ACL document. Trace the code that updates the ACL rules and verify that the obsolete Read authorization is removed or remains valid with an agent. Done means the resulting document passes an ACL validity checker and preserves the intended ReadWrite permissions.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
authorization
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.