Skip to content

SOLID Data Schema

Jared Krajewski edited this page Oct 3, 2023 · 12 revisions

Description of the database structure

  • How Access Control Lists (ACL) work for Solid Pods

Access control is used to allow users to control who can access and modify their data. Solid Pods use ACLs to manage access at the resource level within them.

What are Access Control Lists (ACLs)?

ACLs are a way of specifying who can access a resource and what actions they can perform on that resource. In Solid Pods, ACLs are represented as files that contain a list of agents and their corresponding permissions for a specific resource. They can be located at https://ACCOUNTNAME.PROVIDERURL/DIRECTORY/.acl -- replacing ACCOUNTNAME with your account name, PROVIDERURL with the host url and DIRECTORY with the directory the ACL is responsible for. Example: https://testorg.solidcommunity.net/inbox/.acl

Understanding ACL Modes

Solid Pods support three different ACL modes that allow users to control the level of access granted to different agents. These modes include:

  1. Read: Allows agents to read the contents of a resource.
  2. Write: Allows agents to modify the contents of a resource.
  3. Append: Allows agents to add new data to a resource without modifying existing data.
  4. Control: Allows full control over the data and acl file.

Specifying Access Control

Access control for a resource in a Solid Pod is specified using an .acl file that is located in the same folder as the resource. The .acl file contains a list of agents and their corresponding permissions for the resource. The following is an example of an .acl file:

Inbox ACL example

Additional SOLID Resources

Top of page ⬆️

Clone this wiki locally