Editor for Fine Grained Authz Permissions File
This is a simple plugin to help edit the fine grained authz permissions file. In addition to providing a text editor, it also provides a list of the current project users, so they are readily available.
A more elaborate editor was considered where sections could be selected, then the user/group to give permission to. However this was considered to be overly complicated and bloated.
The plugin takes the group information from the groups file and will put it at the head of the authz file so that the same groups are used. If there isn't a group file, the groups section should remain intact. Ideally this would be a link.
After creating or modifying the main group file, to include the changed group definitions, the editor page should be opened and then 'Apply Changes' clicked.
A check that the entered text can be parsed as an ini config file is done prior to saving.
To help edit groups the HtGroupEditorPlugin can be used.
The naming and positioning of this plugin may change in the light of feedback.
The plugin tries to find the names of the files it has to work with from the config object that reads them in from the normal config file for a Trac project, They maybe specifed in a project specific file or an inherited one.
The list of users are obtained form the account_manager object that will could have read them from password_file specified under the account-manager section.
[account-manager] password_file = /some/project/directory/users
For the group file it is looked for under the account-manager section and the name group_file. If this fails it then looks under the htgroups section.
[account-manager] group_file = /some/project/directory/groups
[htgroups] group_file = /some/project/directory/groups
The authz policy file name is under the authz_policy policy section and the name authz_file.
[authz_policy] authz_file = /some/project/directory/authzpolicy.conf
It uses the following additional modules which may require installation
- ConfigObj from http://www.voidspace.org.uk/python/configobj.html#introduction
- AccountManagerPlugin needs to be installed, but not enabled.
- Must have group_file configuration as mentioned in File Locations above.
If you have any issues, create a new ticket.
Download and Source
Install by doing 'python setup.py install'
Refs #10780: Added new maintainer to setup.py.
Bug Fix. Dummy get_htdocs_dirs method added. Thanks to mkc. Was in earlier versions, but had been cleaned out.
Comma separator beteen the user names, omitted in the previous update. Link to the wiki Trac Permissions page included.
Changed _get_filename to match the htgropups version.