== アクセス制御とパーミッション - Trac Permissions == [[TracGuideToc]] Tracはアクセス制御にシンプルでありながら柔軟なパーミッションシステムを使用します。 パーミッションの付与は [wiki:TracAdmin trac-admin] ツールを使用して操作します。 システムにアクセスする通常のビジター (HTTP認証を通らないユーザ) は、 {{{anonymous}}} という デフォルトのロール (''仮想のユーザ'') を割り当てられます。 未登録のユーザ/ゲストユーザの権限を設定するためには、{{{anonymous}}} ユーザにパーミッションを設定してください。 これらの権限に加えて、登録したユーザ (HTTP認証を行ったユーザ) には個別に 権限を付与することができます。 === 付与できる権限 === * {{{TRAC_ADMIN}}} * {{{LOG_VIEW}}} * {{{FILE_VIEW}}} * {{{CHANGESET_VIEW}}} * {{{BROWSER_VIEW}}} * {{{TICKET_VIEW, TICKET_CREATE, TICKET_MODIFY, TICKET_ADMIN}}} * {{{REPORT_VIEW, REPORT_CREATE, REPORT_MODIFY, REPORT_DELETE, REPORT_ADMIN, REPORT_SQL_VIEW}}} * {{{WIKI_VIEW, WIKI_CREATE, WIKI_MODIFY, WIKI_DELETE, WIKI_ADMIN}}} * {{{MILESTONE_VIEW, MILESTONE_CREATE, MILESTONE_MODIFY, MILESTONE_DELETE}}} * {{{ROADMAP_VIEW, ROADMAP_ADMIN}}} * {{{TIMELINE_VIEW}}} * {{{SEARCH_VIEW}}} * {{{CONFIG_VIEW}}} {{{~_ADMIN}}}権限はユーザに ''~'' に関連する権限をまとめて付与するためのショートカットです。{{{TRAC_ADMIN}}} 権限を持つことは*NIXシステムでrootになるようなものです(つまり、何でもできます)。 === 権限の付与 === 現状では、ユーザに権限を付与するには {{{trac-admin}}} スクリプトを使用する 方法しかありません。現在(カレントで)設定されている権限のセットは 以下のコマンドで一覧表示されます: {{{ $ trac-admin /path/to/projenv permission list }}} 次のコマンドはユーザ''bob''にレポートの削除権限を与えます: {{{ $ trac-admin /path/to/projenv permission add bob REPORT_DELETE }}} === パーミッショングループ === パーミッションをグループ化してロール(''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 }}} === デフォルトパーミッション === 特別なユーザ ''anonymous'' に権限を付与することは、未ログイン状態の匿名ユーザに 権限を付与することになります。 同様に、特別なユーザ ''authenticated'' に権限を付与することで、 (HTTP認証に登録された) 全登録ユーザに権限を一律に設定することができます。 ---- 参考: TracAdmin, TracGuide