-
Notifications
You must be signed in to change notification settings - Fork 22
Using ACLs
Note that this feature is currently under development and not yet released
Each folder and page in DA can have access control permissions. This allows an administrator to specify who can see pages and who can edit.
ACLs are declared on the owner organisation level configuration in a sheet called permissions
.

Permissions are defined as actions on a per-path basis. Each path listed gives permissions to individual users or IMS groups. The following permissions can be given in the actions
column:
-
read
: the user can read resources on the path -
write
: the user can write resources on the path;write
impliesread
permissions too -
Users/groups are specified in the groups
column. This is a comma-separated list of user emails and/or IMS Orgs/IMS group tuples. The IMS IDs can also be used instead of the descriptive name or email address.
The following path syntax is supported:
-
/project/dir/document1
- matches this specific document (document1
) and nothing else. In the above screenshot[email protected]
is given write access to the/project2/newsite/docs/factsheet
document -
/project/dir/subdir1
- matches this specific folder (subdir1
) and nothing else -
/project/dir/*
- matches all documents and folders under/project/dir
but does not match thedir
folder itself. In the above screenshot '[email protected]` is given read access to all documents and folders under /project2/newsite -
/project/dir/+*
- matches all documents and folders under/project/dir
including thedir
folder itself. In the above screenshot users in the IMS groupIMS Org A/IMS Group
are given no access to/project2/newsite/notes
and its subfolders and documents.
To find a user's allowable actions the following process is used.
For each of the user's matching groups:
- IMS user ID
- IMS Org name/Ims Group name
- IMS Org ID/Ims Group ID
The longest matching path for a requested resource is searched and the allowable actions are looked up. Once a matching path is found the searching stops for this group.
Then all actions found are merged into a set and returned.
As an example, let's assume that [email protected]
is in IMS Org A/IMS Group
and needs access to /project2/newsite/food/monday
. The ACL lookup finds that IMS Org A/IMS Group
has its longest path defined as /project2/newsite/+*
with read
permissions.
The ACL lookup also finds that [email protected]
has write permissions to /+*
which is the longest matching path for the email address. The resulting action set for the requested resource is the combination of these: read
and write
.
An an example let's walk through the above screenshot.
Lines:
- Both
[email protected]
and[email protected]
havewrite
permissions to the root of theMyOrg
organisation. Havingwrite
permission also means they haveread
permission. This means that they can list all projects and they can have full access to any project not further specified in the ACL sheet. If we assume there was a/project3
then both have fullwrite
access to that. -
[email protected]
has its permissions taken away for the/project1
project. As the.../+*
syntax is used joe can also not list the contents of the/project1
folder. - Any user in
IMS Org A/IMS Group
or inIMS Org B/IMS Group 2
has read access to/project2/newsite
and it's subfolders and documents. Because the.../+*
syntax is used these users also have rights to list the/project2/newsite
folder itself.[email protected]
and[email protected]
already havewrite
access to this folder and its subfolders. Even if they are in these IMS Org+Group the fact that they havewrite
permission is not taken away as the write permission is granted on their email address.