Sharing pane overwrites current owner
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 153
- Fork
- 46
- Merge medio
- 1g 8h
- PR unite (30g)
- 7
Descrizione
Did this always happen? It seems pretty big.
To Replicate:
- In the databrowser, create a new file in, say, the
privatefolder (https://jackson.localhost:8443/private/test.txt) - Once you do that, the private folder has two resources (
https://jackson.localhost:8443/private/test.txtandhttps://jackson.localhost:8443/private/.acl- the private folder's default acl, seen below)
# ACL resource for the private folder
@prefix acl: <http://www.w3.org/ns/auth/acl#>.
# The owner has all permissions
<#owner>
a acl:Authorization;
acl:agent <https://jackson.localhost:8443/profile/card#me>;
acl:accessTo <./>;
acl:defaultForNew <./>;
acl:mode acl:Read, acl:Write, acl:Control.
- At this point, everything's good.
text.txtinherits its permissions fromprivate's acl. - Go to the sharing pane and click "Set specific sharing preferences"
- This will cause a new file (
https://jackson.localhost:8443/private/test.txt.acl) to be made (see below)
@prefix : <#>.
@prefix acl: <http://www.w3.org/ns/auth/acl#>.
@prefix c: </profile/card#>.
:owner
a acl:Authorization;
acl:accessTo <test.txt>;
acl:agent c:me;
acl:mode acl:Control, acl:Read, acl:Write.
- Everything's still fine because it adds
c:meto the acl. - Now, click the green plus and the single person icon to add a new user.
- Add another webid like
https://ldp.demo-ess.inrupt.com/114176645321964550648/profile/card#me - This updates
https://jackson.localhost:8443/private/test.txt.aclto be below
@prefix : <#>.
@prefix n0: <http://www.w3.org/ns/auth/acl#>.
@prefix c: <https://ldp.demo-ess.inrupt.com/114176645321964550648/profile/card#>.
:Read a n0:Authorization; n0:accessTo <test.txt>; n0:agent c:me; n0:mode n0:Read.
- Notice that instead of adding the new user, it fully replaced the original owner of the document.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia dal flusso del pannello di condivisione attivato da “Set specific sharing preferences” e dall’aggiunta di un utente tramite il segno più verde. Traccia il modo in cui l’ACL esistente viene aggiornata quando viene aggiunto un nuovo WebID; il lavoro è completato quando il nuovo utente viene aggiunto e il proprietario attuale e i permessi esistenti rimangono invariati. Riproduci i passaggi riportati nell’issue per verificare l’ACL risultante.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- typescript
- Ambito
- authorization, frontend
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 45/100