How does an app access only parts of a user's Pod


#1

Hi

I have been parsing through some of the various libraries available for manipulating a solid user’s Pod data - rdflib, solid-auth-client, query-ldflex, solid-react, solid-react-components. But I haven’t been able to figure out how I would access just a particular part of a solid user’s Pod and nothing else. From my understanding of how Solid works I could develop an app and then a user can store all settings needed for my app in their Pod. They could also share specific parts of this data with specific other solid users? My app would only need read/write access to one particular area in the Pod - the one that relates to all the settings for this app.

So for example, say I want to write an app for people who like to watch live music - call it mygigs. Then when a user wants to start using the app it could create a new node in the user’s pod called mygigs for example. This is the only node the mygigs app should be allowed read/write access to in a user’s pod. Then also say a user wants to share only part’s of that data with all or just other specific users, eg. gigs they have been to. How would I achieve this? I can see how to use solid-auth-client to log the user in but does this give my app access to everything in the user’s Pod? And how can I specify which solid users can see what parts of another solid user’s gig data?

Thanks
Des


#2

As far as I know this is not possible yet. @RubenVerborgh noted some initial thoughts on what that could look like in this blog post, but I think that’s still quite a long way off at this time.


#3

You need to manage the permissions given to the different resources in mygigs container.

The application would only be allowed to access this folder by allowing it via the dedicated acl file (and not by specifying it as a trusted application). Some of these resources can be shared with other users by also giving them the read permission (still thanks to the acl files).

However, there are no tools (as far as I know) to easily manipulate these acl files. It therefore seems necessary to manage them with existing rdf data manipulation tools.