Advanced dataset sharing / visibility extension
- Dominant language
- No language data
- Stars
- 39
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
The base CKAN permissions and roles represent a simple use case that is very effective in many situations. There are many cases however where something more flexible / granular is desirable. This has led to a variety of extensions adding different functionality:
[ckanext-collaborators](https://github.com/okfn/ckanext-collaborators)
[ckanext-restricted](https://github.com/EnviDat/ckanext-restricted)
[ckanext-resourceauthorizer](https://github.com/etri-odp/ckanext-resourceauthorizer)
[ckanext-privatedatasets](https://github.com/conwetlab/ckanext-privatedatasets)
Some work at the resource level, others at the dataset. Some work by users, others by users and groups. Some only expand access while others include editing. I think an advanced permissions extension unifying all the functionality would be a good goal.
A potential implementation would be an access control list for each dataset with the options of:
admin - edit data, metadata and user roles
editor - edit data and metadata
viewer - view data and metadata
metadata only - view description and metadata - would need to request access to the data
hidden - dataset not visible / searchable by the users(s)
resource specific - access determined at the resource level using a similar set of options
The lists should allow entries for individual users or organizations, so one could quickly share a private dataset with a second organization in a few clicks. If a user and their organization are both in the list the user would take precedence. I have used resourceauthorizer for similar functionality, but the action needs to be repeated for each resource.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by comparing the four linked extensions—ckanext-collaborators, ckanext-restricted, ckanext-resourceauthorizer, and ckanext-privatedatasets—to understand their differing permission models. The issue provides no repository files or tests; done would require a decided, unified access-control design covering dataset, resource, user, and organization visibility and editing rules.
Written by the indexing model from the issue text.
Assessment
- Domain
- authorization, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100