Sharing pane overwrites current owner
Abierto
Nadie ha tomado este issue todavía.
bug
priority-high
- Lenguaje dominante
- TypeScript
- Estrellas
- 153
- Forks
- 46
- Merge medio
- 1 d 8 h
- PR fusionados (30 d)
- 7
Descripción
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.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con el flujo del panel de uso compartido que se activa mediante “Set specific sharing preferences” y la adición de un usuario con el signo más verde. Traza cómo se actualiza la ACL existente cuando se añade un nuevo WebID; se considera completado cuando se añade el nuevo usuario y se conservan el propietario actual y los permisos existentes. Reproduce los pasos indicados en el issue para verificar la ACL resultante.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- typescript
- Área
- authorization, frontend
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100