Open mrkvon opened 2 years ago
@mrkvon
Adding acl: default
to group-test
should resolve the problem.
I added your https://grouptest1.solidcommunity.net/profile/card#me
to the groups in https://bourgeoa2.solidcommunity.net/public/grouptest/
There are documents in https://bourgeoa1.solidcommunity.net/public
one with publicgroup, one with privategroup
You should be able to read the private document when logged in with https://grouptest1.solidcommunity.net/profile/card#me
This sounds great! 🪄
I can definitely see the documents when signed in with grouptest1
(and not, when not signed in). 🎉 I don't see either of the groups even when signed in. 🤔 (please note i changed the group path a bit, i didn't find the group files in /public)
@bourgeoa
edit: I found your comments on gitter, will test
Could you perhaps share contents of your https://bourgeoa2.solidcommunity.net/grouptest/publicgroup.ttl.acl, https://bourgeoa2.solidcommunity.net/grouptest/privategroup.ttl.acl, https://bourgeoa1.solidcommunity.net/public/documentgrouptest.ttl.acl and https://bourgeoa1.solidcommunity.net/public/documentprivategrouptest.ttl.acl, please?
edit: And if not included in these files already, tell me where you added that helpful acl:default
and how that .acl
looked afterwards?
This could help me try it out myself, and get a better understanding how this works.
Thank you!
@mrkvon Here are the details. Hope this help.
To go on more details we can have a video (with https://meet.jit.si/solid-operating-system)
when you are available. I'm on Paris time.
Nota : For your information I did not succeed to use groups on CSS I always have 403 (public or private). You used the same CSS server I must try again I'm using CSS webId's from different CSS servers. (I shall rebuild my CSS servers with latest v5.0.0) I can include CSS webId's in NSS groups and it works
https://bourgeoa2.solidcommunity.net/grouptest/.acl
The idea for it came because at first I experimented using the groups created with the Address book app
@prefix : <#>.
@prefix acl: <http://www.w3.org/ns/auth/acl#>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
@prefix gro: <./>.
@prefix c: </profile/card#>.
:ControlReadWrite a acl:Authorization; acl:accessTo gro:; acl:agent c:me, mailto:alain.bourgeois10@gmail.com; acl:default gro:; acl:mode acl:Control, acl:Read, acl:Write. :Read a acl:Authorization; acl:accessTo gro:; acl:agentClass foaf:Agent; acl:default gro:; acl:mode acl:Read.
- https://bourgeoa2.solidcommunity.net/grouptest/publicgroup.ttl.acl
@prefix : <#>. @prefix acl: http://www.w3.org/ns/auth/acl#. @prefix c: </profile/card#>.
:owner
a acl:Authorization;
acl:accessTo
- https://bourgeoa2.solidcommunity.net/grouptest/privategroup.ttl.acl
@prefix : <#>. @prefix acl: http://www.w3.org/ns/auth/acl#. @prefix c: </profile/card#>.
:owner
a acl:Authorization;
acl:accessTo
:Read
a acl:Authorization;
acl:accessTo
- https://bourgeoa1.solidcommunity.net/public/documentgrouptest.ttl.acl
@prefix : <#>. @prefix acl: http://www.w3.org/ns/auth/acl#. @prefix c: </profile/card#>. @prefix Sol: https://solidos.solidcommunity.net/Contacts/Group/SolidOS_Team.ttl#.
:ControlReadWrite
a acl:Authorization;
acl:accessTo
- https://bourgeoa1.solidcommunity.net/public/documentprivategrouptest.ttl.acl
@prefix : <#>. @prefix acl: http://www.w3.org/ns/auth/acl#. @prefix c: </profile/card#>.
:ControlReadWrite
a acl:Authorization;
acl:accessTo
:read
a acl:Authorization;
acl:accessTo
By private group we mean a group defined in a file that has permission to be viewed by the group itself (detailed description follows).
The issue
When we
create a group on the first account, containing all three accounts, defined as follows
(a similar group, but public, is here),
give the group permission to view itself (i.e. set up .acl file for the group file as follows)
(Here we already have a major win, because group members can see the group. Compare to CSS, which currently fails at this task (https://github.com/CommunitySolidServer/CommunitySolidServer/issues/1442) :tada:),
😄,
give the group permission to view the document (i.e. set up .acl file for the document as follows)
(this step already failed with the SolidOS, we needed to set up the .acl manually),
it fails with
403 Forbidden
.Expected result
A member of a private group (i.e. a group viewable by itself) can read documents that other members share with the group.
Context and motivation
context and more tests here
This bugfix/feature is a necessary step towards fully functional private groups on Solid. E.g. there are non-public Solid groups, and members of the groups can share (sensitive) data with other group members only.
We stumbled upon this issue when developing a hospitality exchange based on Solid (WIP).