|
a/Allura/docs/guides/permissions.rst |
|
b/Allura/docs/guides/permissions.rst |
1 |
Guide to Users, Groups and Permissions in PyForge
|
1 |
Guide to Users, Groups and Permissions in Allura
|
2 |
=====================================================================
|
2 |
=====================================================================
|
3 |
|
3 |
|
4 |
User/Group model
|
4 |
User/Group model
|
5 |
---------------------------------------------------------------------
|
5 |
---------------------------------------------------------------------
|
6 |
|
6 |
|
|
... |
|
... |
17 |
Individual artifacts and ACL's
|
17 |
Individual artifacts and ACL's
|
18 |
---------------------------------------------------------------------
|
18 |
---------------------------------------------------------------------
|
19 |
|
19 |
|
20 |
There are also likely to be some permissions that you want to assign
|
20 |
There are also likely to be some permissions that you want to assign
|
21 |
to particular people or roles for a particular `Artifact` such as
|
21 |
to particular people or roles for a particular `Artifact` such as
|
22 |
a particular bug in the ticket tracker. PyForge supports this via
|
22 |
a particular bug in the ticket tracker. Allura supports this via
|
23 |
an ACL field on every `Artifact` instance.
|
23 |
an ACL field on every `Artifact` instance.
|
24 |
|
24 |
|
25 |
Permission hierarchy
|
25 |
Permission hierarchy
|
26 |
--------------------------------------------------------------------
|
26 |
--------------------------------------------------------------------
|
27 |
|
27 |
|
|
... |
|
... |
32 |
what permissions are allowed by a higher level project.
|
32 |
what permissions are allowed by a higher level project.
|
33 |
|
33 |
|
34 |
Permission predicates
|
34 |
Permission predicates
|
35 |
---------------------------------------------------------------------
|
35 |
---------------------------------------------------------------------
|
36 |
|
36 |
|
37 |
Predicates are simple functions, several of which are defined in PyForge
|
37 |
Predicates are simple functions, several of which are defined in Allura
|
38 |
itself, and which can be added by any tool, which return true if
|
38 |
itself, and which can be added by any tool, which return true if
|
39 |
permission is granted, and false if it is not.
|
39 |
permission is granted, and false if it is not.
|
40 |
|
40 |
|
41 |
An example predicate function `has_project_access` takes two params, an object
|
41 |
An example predicate function `has_project_access` takes two params, an object
|
42 |
and a `permission` string. It then checks to see if the current user
|
42 |
and a `permission` string. It then checks to see if the current user
|