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}}} |
| 15 | 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. |
| 26 | === Ticket System === |
| 27 | |
| 28 | || `TICKET_VIEW` || View existing [wiki:TracTickets tickets] and perform [wiki:TracQuery ticket queries] || |
| 29 | || `TICKET_CREATE` || Create new [wiki:TracTickets tickets] || |
| 30 | || `TICKET_APPEND` || Add comments or attachments to [wiki:TracTickets tickets] || |
| 31 | || `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 || |
| 32 | || `TICKET_MODIFY` || Includes both `TICKET_APPEND` and `TICKET_CHGPROP`, and in addition allows resolving [wiki:TracTickets tickets] || |
| 33 | || `TICKET_EDIT_CC` || Full modify cc field || |
| 34 | || `TICKET_EDIT_DESCRIPTION` || Modify description field || |
| 35 | || `TICKET_ADMIN` || All `TICKET_*` permissions, plus the deletion of ticket attachments and modification of the description field || |
| 36 | |
| 37 | Attention: the "view tickets" button appears with the `REPORT_VIEW` permission. |
| 38 | |
| 39 | === Roadmap === |
| 40 | |
| 41 | || `MILESTONE_VIEW` || View a milestone || |
| 42 | || `MILESTONE_CREATE` || Create a new milestone || |
| 43 | || `MILESTONE_MODIFY` || Modify existing milestones || |
| 44 | || `MILESTONE_DELETE` || Delete milestones || |
| 45 | || `MILESTONE_ADMIN` || All `MILESTONE_*` permissions || |
| 46 | || `ROADMAP_VIEW` || View the [wiki:TracRoadmap roadmap] page, is not (yet) the same as MILESTONE_VIEW, see #4292 || |
| 47 | || `ROADMAP_ADMIN` || to be removed with #3022, replaced by MILESTONE_ADMIN || |
| 48 | |
| 49 | === Reports === |
| 50 | |
| 51 | || `REPORT_VIEW` || View [wiki:TracReports reports], i.e. the "view tickets" link. || |
| 52 | || `REPORT_SQL_VIEW` || View the underlying SQL query of a [wiki:TracReports report] || |
| 53 | || `REPORT_CREATE` || Create new [wiki:TracReports reports] || |
| 54 | || `REPORT_MODIFY` || Modify existing [wiki:TracReports reports] || |
| 55 | || `REPORT_DELETE` || Delete [wiki:TracReports reports] || |
| 56 | || `REPORT_ADMIN` || All `REPORT_*` permissions || |
| 57 | |
| 58 | === Wiki System === |
| 59 | |
| 60 | || `WIKI_VIEW` || View existing [wiki:TracWiki wiki] pages || |
| 61 | || `WIKI_CREATE` || Create new [wiki:TracWiki wiki] pages || |
| 62 | || `WIKI_MODIFY` || Change [wiki:TracWiki wiki] pages || |
| 63 | || `WIKI_DELETE` || Delete [wiki:TracWiki wiki] pages and attachments || |
| 64 | || `WIKI_ADMIN` || All `WIKI_*` permissions, plus the management of ''readonly'' pages. || |
| 65 | |
| 66 | === Permissions === |
| 67 | |
| 68 | || `PERMISSION_GRANT` || add/grant a permission || |
| 69 | || `PERMISSION_REVOKE` || remove/revoke a permission || |
| 70 | || `PERMISSION_ADMIN` || All `PERMISSION_*` permissions || |
| 71 | |
| 72 | |
| 73 | === Others === |
| 74 | |
| 75 | || `TIMELINE_VIEW` || View the [wiki:TracTimeline timeline] page || |
| 76 | || `SEARCH_VIEW` || View and execute [wiki:TracSearch search] queries || |
| 77 | || `CONFIG_VIEW` || Enables additional pages on ''About Trac'' that show the current configuration or the list of installed plugins || |
| 78 | || `EMAIL_VIEW` || Shows email addresses even if [wiki:0.11/TracIni `trac show_email_addresses` configuration option is `false`] || |
| 79 | |
| 80 | == Granting Privileges == |
| 81 | |
| 82 | You grant privileges to users using [wiki:TracAdmin trac-admin]. The current set of privileges can be listed with the following command: |
| 102 | == Permission Groups == |
| 103 | |
| 104 | There are two built-in groups, "authenticated" and "anonymous".[[BR]] |
| 105 | Any user who has not logged in is automatically in the "anonymous" group.[[BR]] |
| 106 | Any user who has logged in is also in the "authenticated" group.[[BR]] |
| 107 | The "authenticated" group inherits permissions from the "anonymous" group.[[BR]] |
| 108 | eg. if the "anonymous" group has permission WIKI_MODIFY, it's not necessary to add the WIKI_MODIFY permisison to the "authenticated" group as well. |
| 109 | |
| 110 | Custom groups may be defined that inherit permissions from the two built-in groups. |
| 111 | |
| 112 | Permissions can be grouped together to form roles such as ''developer'', ''admin'', etc. |
68 | | In the same way, privileges granted to the special user ''authenticated'' will apply to any authenticated (logged in) user. |
| 126 | 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) |
| 127 | {{{ |
| 128 | $ trac-admin /path/to/projenv permission add bob beta_testers |
| 129 | $ trac-admin /path/to/projenv permission add beta_testers WIKI_ADMIN |
| 130 | |
| 131 | }}} |
| 132 | |
| 133 | == Removing Permissions == |
| 134 | |
| 135 | Permissions can be removed using the 'remove' command. For example: |
| 136 | |
| 137 | This command will prevent the user ''bob'' from deleting reports: |
| 138 | {{{ |
| 139 | $ trac-admin /path/to/projenv permission remove bob REPORT_DELETE |
| 140 | }}} |
| 141 | |
| 142 | Just like `permission add`, this command accepts multiple privilege names. |
| 143 | |
| 144 | You can also remove all privileges for a specific user: |
| 145 | {{{ |
| 146 | $ trac-admin /path/to/projenv permission remove bob '*' |
| 147 | }}} |
| 148 | |
| 149 | Or one privilege for all users: |
| 150 | {{{ |
| 151 | $ trac-admin /path/to/projenv permission remove '*' REPORT_ADMIN |
| 152 | }}} |
| 153 | |
| 154 | == Default Permissions == |
| 155 | |
| 156 | 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. |
| 157 | On the other hand, the `authenticated` users will have the permissions to ''create and modify tickets and wiki pages''. |
| 158 | |
| 159 | '''anonymous''':: |
| 160 | BROWSER_VIEW |
| 161 | CHANGESET_VIEW |
| 162 | FILE_VIEW |
| 163 | LOG_VIEW |
| 164 | MILESTONE_VIEW |
| 165 | REPORT_SQL_VIEW |
| 166 | REPORT_VIEW |
| 167 | ROADMAP_VIEW |
| 168 | SEARCH_VIEW |
| 169 | TICKET_VIEW |
| 170 | TIMELINE_VIEW |
| 171 | WIKI_VIEW |
| 172 | |
| 173 | '''authenticated''':: |
| 174 | TICKET_CREATE |
| 175 | TICKET_MODIFY |
| 176 | WIKI_CREATE |
| 177 | WIKI_MODIFY |