iRODS Customization¶
This section describes the iRODS customizations that have been installed / implemented.
Rule Adoptions¶
By default, no home directory is created for newly created users. This is a deviation from the standard iRODS behaviour.
Microservices¶
The software irods-sudo-microservices has been installed on the iRODS provider (catalogue) server. This allows to implement rules with privilege escalation.
AVU Prefixes¶
Generally, the RODOES system uses the prefix rodeos::
for AVU (attribute value unit) triples.
The RODEOS Ingest subsystem uses the prefix rodeos::ingest
for meta data annotation and state management.
To allow facility members to manage groups of customers, AVU triples with the attribute name rodeos::sudo::group-prefix
are created.
Such users can then invoke the msiSudoUserAdd()
microservice to manipulate groups whose name starts with the given prefix.
Of course, good care has to be taken for such prefixes to be unique, generally group names are ${UNIT}::${CUSTOMER}
with short identifiers of the unit and the customer group.
Rules¶
The following rules have been implemented for the irods-sudo-microservices
package.
- acPreSudoGroupAdd
Allow users to add groups with the name that starts with the value of any value of the
rodeos::sudo::group-prefix
attribute.- acPreSudoGroupRemove
Allow users to remove groups with the name that starts with the value of any value of the
rodeos::sudo::group-prefix
attribute.- acPreSudoGroupMemberAdd
Allow users to add members to groups with the name that starts with the value of any value of the
rodeos::sudo::group-prefix
attribute.- acPreSudoGroupMemberRemove
Allow users to remove members from groups with the name that starts with the value of any value of the
rodeos::sudo::group-prefix
attribute.
Custom Scripts¶
RODEOS Facility Helper Scripts¶
RODEOS ships with a number of Bash scripts that help facility staff in the management of users:
- rodeos-cli-group-list
Lists existing groups that the current user can manager.
- rodeos-cli-group-create GROUP_NAME
Create a new group with the given name.
- rodeos-cli-group-remove GROUP_NAME
Delete group with the given name.
- rodeos-cli-group-member-add GROUP_NAME USER_NAME
Add a user with the given name to the given group.
- rodeos-cli-group-member-remove GROUP_NAME USER_NAME
Remove a member from a group.