DHIS2 uses access control lists for metadata (i.e. data elements, indicators), referred to in DHIS2 as sharing and based on user groups. Commonly the same sharing should be applied to a set of metadata objects, for example a data set (reporting form) and all it’s dependencies (data elements etc). However, sharing settings can currently only be modified for one object at the time, making it time consuming to make more than minor changes.
The assignments involves making an app for updating sharing configuration for multiple/a set of metadata objects. It should be possible to select metadata to be updated based on (at least) these methods:
- Through search on name (or other properties), with the possibility of applying settings to all or a selection of the search result
- Through selection of a group, with the possibility of applying settings to all or a selection of the search result
- Through data sets, programmes and dashboards with dependencies. The metadata dependency export functionality will give an idea of which metadata objects need to be updated for data sets, programmes and dashboards.
Ideally, there should be support to work with all shareable objects, but a minimum is:
- Analysis tool favourites
- Data sets
- Data elements (and groups)
- Indicators (and groups)
- Category/ category combos/ category option
The app should apply read/ write, read only or no access to one or more user groups, as well as changing the “public access” property to read/ write, read only or no access. It should be possible both to completely overwrite existing sharing settings or modifying the existing sharing settings.
DHIS2 standard app.