SVN USER MANAGEMENT README ========================== First of all, we talk about the following files and folders: .htpasswd README authz cpi elab-users.py old-scripts-backup ** WARNING: ** In this list, there is one hidden files: `.htpasswd`. This file is hidden on purpose, so ** don't mess with it **. quick file overview ------------------- `.htpasswd`: stores the passwords for the users (classical apache htpaswd-file) `README`: this file `authz`: defines the access controll list, so who has access to what `cpi`: folder that holds the svn repository itself `elab-users.py`: usermanagement script `old-scripts-backup`: contains the old scripts to add a user for backup reasons Usermanagement with `elab-users.py` ----------------------------------- ** HINT: ** To run this scipt first change to the directory with `cd /var/www/svn` and prepend every command with `./` (e.g. `./elab-users.py --help`). The script `elab-users.py` provides some options to add and delete users, show access information from users and their elab journals. If the scprit is called with the `--help` option, the folowing help message is displayed: Usage: elab-users.py [option] name shows and manipulates svn access rights Options: -h, --help show this help message and exit -g, --groupinfo display users in a group -a, --add add a regular user -r, --restricted add a restricted user -m, --move move a user to alumni -p, --password reset a user password to grant a restricted user access to another folder, you have to carefully edit the authz file the following combinations are possible: * `elab-users.py`: will show a list of all groups and their users * `elab-users.py UserName`: shows the access rights of the user and their labjournal * `elab-users.py -g GroupName`: shows a list of all group members * `elab-users.py -a UserName`: adds a regular user, creates svn folders and sets a random password * `elab-users.py -a UserName`: adds a restricted user, creates svn folders and sets a random password * `elab-users.py -m UserName`: moves an existing user to the alumni group, removes his password * `elab-users.py -p UserName`: resets the password for an existing user to a new random one Grant read writes to restricted users ------------------------------------- As noted in the help message of `elab-users.py`, if a restriced user should have read access to another labjournal, the `authz` file has to be edited manually. Here are two examples that grant the user 'UrmilShah' read access to two different lab journals: ... snip ... [cpi:/AndreasEvers] @restricted = UrmilShah = r ... snip ... [cpi:/HolgerFrey] @restricted = UrmilShah = r HolgerFrey = rw ... snip ... This does not apply to regular users, since these have read access to all folders. Hint ---- This readme is written in Markdown. So if you want a nice printout, use a markdown converter first. Something like