17 | | * {{{TRAC_ADMIN}}} |
18 | | * {{{LOG_VIEW}}} |
19 | | * {{{FILE_VIEW}}} |
20 | | * {{{CHANGESET_VIEW}}} |
21 | | * {{{BROWSER_VIEW}}} |
22 | | * {{{TICKET_VIEW, TICKET_CREATE, TICKET_MODIFY, TICKET_ADMIN}}} |
23 | | * {{{REPORT_VIEW, REPORT_CREATE, REPORT_MODIFY, REPORT_DELETE, REPORT_ADMIN, REPORT_SQL_VIEW}}} |
24 | | * {{{WIKI_VIEW, WIKI_CREATE, WIKI_MODIFY, WIKI_DELETE, WIKI_ADMIN}}} |
25 | | * {{{MILESTONE_VIEW, MILESTONE_CREATE, MILESTONE_MODIFY, MILESTONE_DELETE}}} |
26 | | * {{{ROADMAP_VIEW, ROADMAP_ADMIN}}} |
27 | | * {{{TIMELINE_VIEW}}} |
28 | | * {{{SEARCH_VIEW}}} |
29 | | * {{{CONFIG_VIEW}}} |
| 16 | To access this tab, a user must have `TRAC_ADMIN privileges`. This can be performed as follows (more on the trac-admin script below): |
| 17 | {{{ |
| 18 | $ trac-admin /path/to/projenv permission add bob TRAC_ADMIN |
| 19 | }}} |
| 26 | == Available Privileges == |
| 27 | |
| 28 | 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 allow you to perform any operation. |
| 29 | |
| 30 | Otherwise, individual privileges can be assigned to users for the various different functional areas of Trac ('''note that the privilege names are case-sensitive'''): |
| 31 | |
| 32 | === Repository Browser === |
| 33 | |
| 34 | || `BROWSER_VIEW` || View directory listings in the [wiki:TracBrowser repository browser] || |
| 35 | || `LOG_VIEW` || View revision logs of files and directories in the [wiki:TracBrowser repository browser] || |
| 36 | || `FILE_VIEW` || View files in the [wiki:TracBrowser repository browser] || |
| 37 | || `CHANGESET_VIEW` || View [wiki:TracChangeset repository check-ins] || |
| 38 | |
| 39 | === Ticket System === |
| 40 | |
| 41 | || `TICKET_VIEW` || View existing [wiki:TracTickets tickets] and perform [wiki:TracQuery ticket queries] || |
| 42 | || `TICKET_CREATE` || Create new [wiki:TracTickets tickets] || |
| 43 | || `TICKET_APPEND` || Add comments or attachments to [wiki:TracTickets tickets] || |
| 44 | || `TICKET_CHGPROP` || Modify [wiki:TracTickets ticket] properties (priority, assignment, keywords, etc.) except description field, cc field add/remove when logged in or set email to pref || |
| 45 | || `TICKET_MODIFY` || Includes both `TICKET_APPEND` and `TICKET_CHGPROP`, and in addition allows resolving [wiki:TracTickets tickets] || |
| 46 | || `TICKET_EDIT_CC` || Full modify cc field || |
| 47 | || `TICKET_EDIT_DESCRIPTION` || Modify description field || |
| 48 | || `TICKET_ADMIN` || All `TICKET_*` permissions, plus the deletion of ticket attachments and modification of the description field || |
| 49 | |
| 50 | Attention: the "view tickets" button appears with the `REPORT_VIEW` permission. |
| 51 | |
| 52 | === Roadmap === |
| 53 | |
| 54 | || `MILESTONE_VIEW` || View a milestone || |
| 55 | || `MILESTONE_CREATE` || Create a new milestone || |
| 56 | || `MILESTONE_MODIFY` || Modify existing milestones || |
| 57 | || `MILESTONE_DELETE` || Delete milestones || |
| 58 | || `MILESTONE_ADMIN` || All `MILESTONE_*` permissions || |
| 59 | || `ROADMAP_VIEW` || View the [wiki:TracRoadmap roadmap] page, is not (yet) the same as MILESTONE_VIEW, see #4292 || |
| 60 | || `ROADMAP_ADMIN` || to be removed with #3022, replaced by MILESTONE_ADMIN || |
| 61 | |
| 62 | === Reports === |
| 63 | |
| 64 | || `REPORT_VIEW` || View [wiki:TracReports reports], i.e. the "view tickets" link. || |
| 65 | || `REPORT_SQL_VIEW` || View the underlying SQL query of a [wiki:TracReports report] || |
| 66 | || `REPORT_CREATE` || Create new [wiki:TracReports reports] || |
| 67 | || `REPORT_MODIFY` || Modify existing [wiki:TracReports reports] || |
| 68 | || `REPORT_DELETE` || Delete [wiki:TracReports reports] || |
| 69 | || `REPORT_ADMIN` || All `REPORT_*` permissions || |
| 70 | |
| 71 | === Wiki System === |
| 72 | |
| 73 | || `WIKI_VIEW` || View existing [wiki:TracWiki wiki] pages || |
| 74 | || `WIKI_CREATE` || Create new [wiki:TracWiki wiki] pages || |
| 75 | || `WIKI_MODIFY` || Change [wiki:TracWiki wiki] pages || |
| 76 | || `WIKI_DELETE` || Delete [wiki:TracWiki wiki] pages and attachments || |
| 77 | || `WIKI_ADMIN` || All `WIKI_*` permissions, plus the management of ''readonly'' pages. || |
| 78 | |
| 79 | === Permissions === |
| 80 | |
| 81 | || `PERMISSION_GRANT` || add/grant a permission || |
| 82 | || `PERMISSION_REVOKE` || remove/revoke a permission || |
| 83 | || `PERMISSION_ADMIN` || All `PERMISSION_*` permissions || |
| 84 | |
| 85 | |
| 86 | === Others === |
| 87 | |
| 88 | || `TIMELINE_VIEW` || View the [wiki:TracTimeline timeline] page || |
| 89 | || `SEARCH_VIEW` || View and execute [wiki:TracSearch search] queries || |
| 90 | || `CONFIG_VIEW` || Enables additional pages on ''About Trac'' that show the current configuration or the list of installed plugins || |
| 91 | || `EMAIL_VIEW` || Shows email addresses even if [wiki:0.11/TracIni `trac show_email_addresses` configuration option is `false`] || |
| 92 | |
| 93 | == Granting Privileges == |
| 94 | |
| 95 | You grant privileges to users using [wiki:TracAdmin trac-admin]. The current set of privileges can be listed with the following command: |
68 | | In the same way, privileges granted to the special user ''authenticated'' will apply to any authenticated (logged in) user. |
| 139 | The following will add ''bob'' to the new group called ''beta_testers'' and then will assign WIKI_ADMIN permissions to that group. (Thus, ''bob'' will inherit the WIKI_ADMIN permission) |
| 140 | {{{ |
| 141 | $ trac-admin /path/to/projenv permission add bob beta_testers |
| 142 | $ trac-admin /path/to/projenv permission add beta_testers WIKI_ADMIN |
| 143 | |
| 144 | }}} |
| 145 | |
| 146 | == Removing Permissions == |
| 147 | |
| 148 | Permissions can be removed using the 'remove' command. For example: |
| 149 | |
| 150 | This command will prevent the user ''bob'' from deleting reports: |
| 151 | {{{ |
| 152 | $ trac-admin /path/to/projenv permission remove bob REPORT_DELETE |
| 153 | }}} |
| 154 | |
| 155 | Just like `permission add`, this command accepts multiple privilege names. |
| 156 | |
| 157 | You can also remove all privileges for a specific user: |
| 158 | {{{ |
| 159 | $ trac-admin /path/to/projenv permission remove bob '*' |
| 160 | }}} |
| 161 | |
| 162 | Or one privilege for all users: |
| 163 | {{{ |
| 164 | $ trac-admin /path/to/projenv permission remove '*' REPORT_ADMIN |
| 165 | }}} |
| 166 | |
| 167 | == Default Permissions == |
| 168 | |
| 169 | By default on a new Trac installation, the `anonymous` user will have ''view'' access to everything in Trac, but will not be able to create or modify anything. |
| 170 | On the other hand, the `authenticated` users will have the permissions to ''create and modify tickets and wiki pages''. |
| 171 | |
| 172 | '''anonymous''':: |
| 173 | BROWSER_VIEW |
| 174 | CHANGESET_VIEW |
| 175 | FILE_VIEW |
| 176 | LOG_VIEW |
| 177 | MILESTONE_VIEW |
| 178 | REPORT_SQL_VIEW |
| 179 | REPORT_VIEW |
| 180 | ROADMAP_VIEW |
| 181 | SEARCH_VIEW |
| 182 | TICKET_VIEW |
| 183 | TIMELINE_VIEW |
| 184 | WIKI_VIEW |
| 185 | |
| 186 | '''authenticated''':: |
| 187 | TICKET_CREATE |
| 188 | TICKET_MODIFY |
| 189 | WIKI_CREATE |
| 190 | WIKI_MODIFY |