tracopt.perm.config_perm_provider.ExtraPermissionsProvider
ExtraPermissionsProvider
is an optional component which makes it possible to easily add new permissions to a Trac environment. These can be used, for example, in configurable TracWorkflows, when one wants to add a permission specific to a transition, via the .permissions
key.
The component is disabled by default, so it must be enabled in the configuration:
[components] tracopt.perm.config_perm_provider.* = enabled
To add new permissions, create a new section [extra-permissions]
in
trac.ini. Every entry in that section defines a meta-permission
and a comma-separated list of permissions. For example:
[extra-permissions] EXTRA_ADMIN = EXTRA_VIEW, EXTRA_MODIFY, EXTRA_DELETE
This entry will define three new permissions EXTRA_VIEW
,
EXTRA_MODIFY
and EXTRA_DELETE
, as well as a meta-permissions
EXTRA_ADMIN
that grants all three permissions.
The permissions are created in upper-case characters regardless of
the casing of the definitions in trac.ini
. For example, the
definition extra_view
would create the permission EXTRA_VIEW
.
If you don't want a meta-permission, start the meta-name with an
underscore (_
):
[extra-permissions] _perms = EXTRA_VIEW, EXTRA_MODIFY
See also: #9392, config_perm_provider.py