SolidOS / SolidOS/solid-ui

Sharing pane overwrites current owner

Abierto
#396 2 comentarios 0 reacciones 0 asignados Ver en GitHub

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 private folder (https://jackson.localhost:8443/private/test.txt)
  • Once you do that, the private folder has two resources (https://jackson.localhost:8443/private/test.txt and https://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.txt inherits its permissions from private'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:me to 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.acl to 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

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. 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

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.