Sharing pane overwrites current owner
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 153
- Forks
- 46
- Ø Merge
- 1 T. 8 Std.
- Gemergte PRs (30 T.)
- 7
Beschreibung
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.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit dem Ablauf des Freigabebereichs, der durch „Set specific sharing preferences“ und das Hinzufügen eines Benutzers über das grüne Plus ausgelöst wird. Verfolge, wie die bestehende ACL aktualisiert wird, wenn eine neue WebID hinzugefügt wird. Als abgeschlossen gilt die Aufgabe, wenn der neue Benutzer hinzugefügt wird und der aktuelle Besitzer sowie die bestehenden Berechtigungen erhalten bleiben. Führe die im Issue beschriebenen Schritte erneut aus, um die resultierende ACL zu überprüfen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- typescript
- Bereich
- authorization, frontend
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100