= Trac의 접근 권한 =
[[TracGuideToc]]

Trac은 사용자의 접근을 제어하기 위해서 간단하지만 유연한 권한 시스템을 사용합니다.

접근 권한은 [wiki:TracAdmin trac-admin] 툴을 사용해서 설정됩니다.

시스템에 접근하는 일반 사용자(인증되지 않은)는 기본적으로 {{{anonymous}}}라고 이름 붙은  (''user'') 권한이 적용됩니다.
인증되지 않은(게스트) 사용자에게 권한을 설정하기 위해서는 {{{anonymous}}} 사용자에게 권한을 할당하십시오.

추가적으로 시스템에 인증된 사용자로 로그인 했을 때, 이 권한의 사용자들은 추가적인 권한에 접근할 수 있게 허용됩니다.

== 이용 가능한 권한들 ==

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.

Otherwise, individual privileges can be assigned to users for the various different functional areas of Trac:

=== Repository Browser ===

|| `BROWSER_VIEW` || View directory listings in the [wiki:TracBrowser repository browser] ||
|| `LOG_VIEW` || View revision logs of files and directories in the [wiki:TracBrowser repository browser] ||
|| `FILE_VIEW` || View files in the [wiki:TracBrowser repository browser] ||
|| `CHANGESET_VIEW` || View [wiki:TracChangeset repository check-ins] ||

=== Ticket System ===

|| `TICKET_VIEW` || View existing [wiki:TracTickets tickets] and perform [wiki:TracQuery ticket queries] ||
|| `TICKET_CREATE` || Create new [wiki:TracTickets tickets] ||
|| `TICKET_APPEND` || Add comments or attachments to [wiki:TracTickets tickets] ||
|| `TICKET_CHGPROP` || Modify [wiki:TracTickets ticket] properties ||
|| `TICKET_MODIFY` || Includes both `TICKET_APPEND` and `TICKET_CHGPROP`, and in addition allows resolving [wiki:TracTickets tickets] ||
|| `TICKET_ADMIN` || All `TICKET_*` permissions, plus the deletion of ticket attachments. ||

=== Roadmap ===

|| `MILESTONE_VIEW` || View a milestone ||
|| `MILESTONE_CREATE` || Create a new milestone ||
|| `MILESTONE_MODIFY` || Modify existing milestones ||
|| `MILESTONE_DELETE` || Delete milestones ||
|| `MILESTONE_ADMIN` || All `MILESTONE_*` permissions ||
|| `ROADMAP_VIEW` || View the [wiki:TracRoadmap roadmap] page ||
|| `ROADMAP_ADMIN` || Alias for `MILESTONE_ADMIN` (deprecated) ||

=== Reports ===

|| `REPORT_VIEW` || View [wiki:TracReports reports] ||
|| `REPORT_SQL_VIEW` || View the underlying SQL query of a [wiki:TracReports report] ||
|| `REPORT_CREATE` || Create new [wiki:TracReports reports] ||
|| `REPORT_MODIFY` || Modify existing [wiki:TracReports reports] ||
|| `REPORT_DELETE` || Delete [wiki:TracReports reports] ||
|| `REPORT_ADMIN` || All `REPORT_*` permissions ||

=== Wiki System ===

|| `WIKI_VIEW` || View existing [wiki:TracWiki wiki] pages ||
|| `WIKI_CREATE` || Create new [wiki:TracWiki wiki] pages ||
|| `WIKI_MODIFY` || Change [wiki:TracWiki wiki] pages ||
|| `WIKI_DELETE` || Delete [wiki:TracWiki wiki] pages and attachments ||
|| `WIKI_ADMIN` || All `WIKI_*` permissions, plus the management of ''readonly'' pages. ||

=== Others ===

|| `TIMELINE_VIEW` || View the [wiki:TracTimeline timeline] page ||
|| `SEARCH_VIEW` || View and execute [wiki:TracSearch search] queries ||
|| `CONFIG_VIEW` || Enables additional pages on ''About Trac'' that show the current configuration or the list of installed plugins ||

== Granting Privileges ==

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:
{{{
  $ trac-admin /path/to/projenv permission list
}}}

다음 명령은 ''bob'' 사용자에게 리포트를 삭제할 수 있는 권한을 허용합니다. 

{{{
  $ trac-admin /path/to/projenv permission add bob REPORT_DELETE
}}}

== 그룹 권한 ==

Permissions can be grouped together to form roles such as ''developer'', ''admin'', etc.
{{{
  $ trac-admin /path/to/projenv permission add developer WIKI_ADMIN
  $ trac-admin /path/to/projenv permission add developer REPORT_ADMIN
  $ trac-admin /path/to/projenv permission add developer TICKET_MODIFY
  $ trac-admin /path/to/projenv permission add bob developer
  $ trac-admin /path/to/projenv permission add john developer
}}}

=== 기본 권한 설정값 ===

Granting privileges to the special user ''anonymous'' can be used to control what an anonymous user can do before they have logged in.

같은 방법으로 특별한 사용자인 ''authenticated''에게 권한을 설정하는 것은 인증된 사용자(로그온한 사용자)에게 적용됩니다.

----
참고: TracAdmin, TracGuide
