39
|
1 = Trac Permissions =
|
|
2 [[TracGuideToc]]
|
|
3
|
|
4 Trac uses a simple but flexible permission system to control what users can and can't access.
|
|
5
|
|
6 Permission privileges are managed using the [wiki:TracAdmin trac-admin] tool.
|
|
7
|
|
8 Regular visitors, non-authenticated users, accessing the system are assigned the default
|
|
9 role (''user'') named {{{anonymous}}}.
|
|
10 Assign permissions to the {{{anonymous}}} user to set privileges for non-authenticated/guest users.
|
|
11
|
|
12 In addition to these privileges users can be granted additional individual
|
|
13 rights in effect when authenticated and logged into the system.
|
|
14
|
|
15 == Available Privileges ==
|
|
16
|
|
17 To enable all privileges for a user, use the `TRAC_ADMIN` permission. Having `TRAC_ADMIN` is like being `root` on a *NIX system, it will let you do anything you want.
|
|
18
|
|
19 Otherwise, individual privileges can be assigned to users for the various different functional areas of Trac:
|
|
20
|
|
21 === Repository Browser ===
|
|
22
|
|
23 || `BROWSER_VIEW` || View directory listings in the [wiki:TracBrowser repository browser] ||
|
|
24 || `LOG_VIEW` || View revision logs of files and directories in the [wiki:TracBrowser repository browser] ||
|
|
25 || `FILE_VIEW` || View files in the [wiki:TracBrowser repository browser] ||
|
|
26 || `CHANGESET_VIEW` || View [wiki:TracChangeset repository check-ins] ||
|
|
27
|
|
28 === Ticket System ===
|
|
29
|
|
30 || `TICKET_VIEW` || View existing [wiki:TracTickets tickets] and perform [wiki:TracQuery ticket queries] ||
|
|
31 || `TICKET_CREATE` || Create new [wiki:TracTickets tickets] ||
|
|
32 || `TICKET_APPEND` || Add comments or attachments to [wiki:TracTickets tickets] ||
|
|
33 || `TICKET_CHGPROP` || Modify [wiki:TracTickets ticket] properties ||
|
|
34 || `TICKET_MODIFY` || Includes both `TICKET_APPEND` and `TICKET_CHGPROP`, and in addition allows resolving [wiki:TracTickets tickets] ||
|
|
35 || `TICKET_ADMIN` || All `TICKET_*` permissions, plus the deletion of ticket attachments. ||
|
|
36
|
|
37 === Roadmap ===
|
|
38
|
|
39 || `MILESTONE_VIEW` || View a milestone ||
|
|
40 || `MILESTONE_CREATE` || Create a new milestone ||
|
|
41 || `MILESTONE_MODIFY` || Modify existing milestones ||
|
|
42 || `MILESTONE_DELETE` || Delete milestones ||
|
|
43 || `MILESTONE_ADMIN` || All `MILESTONE_*` permissions ||
|
|
44 || `ROADMAP_VIEW` || View the [wiki:TracRoadmap roadmap] page ||
|
|
45 || `ROADMAP_ADMIN` || Alias for `MILESTONE_ADMIN` (deprecated) ||
|
|
46
|
|
47 === Reports ===
|
|
48
|
|
49 || `REPORT_VIEW` || View [wiki:TracReports reports] ||
|
|
50 || `REPORT_SQL_VIEW` || View the underlying SQL query of a [wiki:TracReports report] ||
|
|
51 || `REPORT_CREATE` || Create new [wiki:TracReports reports] ||
|
|
52 || `REPORT_MODIFY` || Modify existing [wiki:TracReports reports] ||
|
|
53 || `REPORT_DELETE` || Delete [wiki:TracReports reports] ||
|
|
54 || `REPORT_ADMIN` || All `REPORT_*` permissions ||
|
|
55
|
|
56 === Wiki System ===
|
|
57
|
|
58 || `WIKI_VIEW` || View existing [wiki:TracWiki wiki] pages ||
|
|
59 || `WIKI_CREATE` || Create new [wiki:TracWiki wiki] pages ||
|
|
60 || `WIKI_MODIFY` || Change [wiki:TracWiki wiki] pages ||
|
|
61 || `WIKI_DELETE` || Delete [wiki:TracWiki wiki] pages and attachments ||
|
|
62 || `WIKI_ADMIN` || All `WIKI_*` permissions, plus the management of ''readonly'' pages. ||
|
|
63
|
|
64 === Others ===
|
|
65
|
|
66 || `TIMELINE_VIEW` || View the [wiki:TracTimeline timeline] page ||
|
|
67 || `SEARCH_VIEW` || View and execute [wiki:TracSearch search] queries ||
|
|
68 || `CONFIG_VIEW` || Enables additional pages on ''About Trac'' that show the current configuration or the list of installed plugins ||
|
|
69
|
|
70 == Granting Privileges ==
|
|
71
|
|
72 Currently the only way to grant privileges to users is by using the `trac-admin` script. The current set of privileges can be listed with the following command:
|
|
73 {{{
|
|
74 $ trac-admin /path/to/projenv permission list
|
|
75 }}}
|
|
76
|
|
77 This command will allow the user ''bob'' to delete reports:
|
|
78 {{{
|
|
79 $ trac-admin /path/to/projenv permission add bob REPORT_DELETE
|
|
80 }}}
|
|
81
|
|
82 == Permission Groups ==
|
|
83
|
|
84 Permissions can be grouped together to form roles such as ''developer'', ''admin'', etc.
|
|
85 {{{
|
|
86 $ trac-admin /path/to/projenv permission add developer WIKI_ADMIN
|
|
87 $ trac-admin /path/to/projenv permission add developer REPORT_ADMIN
|
|
88 $ trac-admin /path/to/projenv permission add developer TICKET_MODIFY
|
|
89 $ trac-admin /path/to/projenv permission add bob developer
|
|
90 $ trac-admin /path/to/projenv permission add john developer
|
|
91 }}}
|
|
92
|
|
93 == Default Permissions ==
|
|
94
|
|
95 Granting privileges to the special user ''anonymous'' can be used to control what an anonymous user can do before they have logged in.
|
|
96
|
|
97 In the same way, privileges granted to the special user ''authenticated'' will apply to any authenticated (logged in) user.
|
|
98
|
|
99 ----
|
|
100 See also: TracAdmin, TracGuide |