Changes between Initial Version and Version 1 of TracPermissions


Ignore:
Timestamp:
Nov 17, 2012, 6:20:07 PM (12 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracPermissions

    v1 v1  
     1= アクセス制御とパーミッション = #TracPermissions
     2[[TracGuideToc]]
     3
     4Trac はシンプルなアクセス制御システムを使用しています。大文字小文字は区別されます。
     5
     6パーミッションの付与は [wiki:TracAdmin trac-admin] ツール、または (バージョン 0.11 の新しい機能では) ''管理'' (英語版では ''Admin'') Web インタフェースの ''一般設定 / パーミッション'' (英語版では ''General / Permissions'') パネルを使用して操作します。
     7
     8このページで説明するデフォルトのパーミッションポリシーに加え、他のパーミッションポリシーを使用することができます。プラグインを有効化し、 TracIni の `[trac] permission_policies` リストのエントリに追加してください。詳細は TracFineGrainedPermissions を参照してください。
     9
     10認証していないユーザは "anonymous" としてシステムにアクセスします。 "anonymous" ユーザには anonymous/guest ユーザの権限を割り当てます。 権限が与えられていない Trac のモジュールはナビゲーションバーに表示されません。
     11これらの権限に加えて、登録したユーザ (HTTP 認証を行ったユーザ) には個別に権限を付与することができます。ログインしたすべてのユーザは "authenticated" という仮想グループに所属します ("authenticated" は "anonymous" からパーミッションを継承します)。
     12
     13== Web Admin でのタブ == #GraphicalAdminTab
     14''この機能はバージョン 0.11 で追加されました。''
     15
     16このタブにアクセスするには `TRAC_ADMIN 権限` が必要です。以下の要領で権限を付与してください (trac-admin スクリプトを使用します):
     17{{{
     18  $ trac-admin /path/to/projenv permission add bob TRAC_ADMIN
     19}}}
     20
     21ユーザ `bob` には管理 (英語版では Admin) タブが表示されるようになり、パーミッションのメニューにアクセスできるようになります。このメニューでは、以下に記述される全ての機能を Web ブラウザから使用でき、サーバへの root 権限でのアクセスは必要としません (ユーザアカウントに適切なパーミッションが付与されている必要があります)。
     22
     23
     24An easy way to quickly secure a new Trac install is to run the above command on the anonymous user, install the [http://trac-hacks.org/wiki/AccountManagerPlugin AccountManagerPlugin], create a new admin account graphically and then remove the TRAC_ADMIN permission from the anonymous user.  (訳者註: secure と書いてありますがセキュリティ的に脆弱な瞬間が発生するため、お薦めできません。コマンドを使用してください。)
     25
     26== 付与できる権限 == #AvailablePrivileges
     27
     28あるユーザで全ての権限を有効にしたい場合、 `TRAC_ADMIN` 権限を使用してください。 `TRAC_ADMIN` 権限を持っているユーザは *NIX システムでの `root` と同じように、いかなる操作も行うことができます。
     29
     30または Trac の機能ごとに異なる種類の権限を、ユーザごとに個別に付与することができます。('''パーミッション名は大文字/小文字を区別します'''):
     31
     32=== リポジトリブラウザ === #RepositoryBrowser
     33
     34|| `BROWSER_VIEW` || [wiki:TracBrowser リポジトリブラウザ] でディレクトリの一覧表示を行う ||
     35|| `LOG_VIEW` || [wiki:TracBrowser リポジトリブラウザ] でファイルとディレクトリのリビジョンログを表示する ||
     36|| `FILE_VIEW` || [wiki:TracBrowser リポジトリブラウザ] でファイルを表示する ||
     37|| `CHANGESET_VIEW` || [wiki:TracChangeset リポジトリへのチェックイン] を表示する ||
     38
     39=== チケットシステム === #TicketSystem
     40
     41|| `TICKET_VIEW` || 登録済みの [wiki:TracTickets チケット] を表示し、 [wiki:TracQuery チケットクエリ] を実行する ||
     42|| `TICKET_CREATE` || 新規 [wiki:TracTickets チケット] を登録する ||
     43|| `TICKET_APPEND` || [wiki:TracTickets チケット] にコメントや添付ファイルを追加する ||
     44|| `TICKET_CHGPROP` || [wiki:TracTickets チケット] 属性 (優先度 (Priority), 担当者 (Owner), キーワード (Keywords)など) を変更する。ただし例外があり、説明 (Description) の編集は不可能で、ログイン名やユーザ設定 (Pref) から取得したメールアドレスを関係者 (Cc) に追加/削除する場合に他のユーザを対象にできない。 ||
     45|| `TICKET_MODIFY` || `TICKET_APPEND` と `TICKET_CHGPROP` の両方に加え、 [wiki:TracTickets チケット] の解決を可能にする。チケットの担当者を制限している場合は、担当者となりうるユーザの [TracTickets#Assign-toasDrop-DownList リスト] に使用される ||
     46|| `TICKET_EDIT_CC` || 関係者 (英語版では Cc) のリストを直接編集できる ||
     47|| `TICKET_EDIT_DESCRIPTION` || 説明 (英語版では description) フィールドを編集できる ||
     48|| `TICKET_ADMIN` || 全ての `TICKET_*` 権限に加え、チケットへの添付ファイルの削除したり、チケットの報告者 (Reporter) や、説明 (Description) フィールドの変更が可能となる。また [http://trac.edgewall.org/wiki/WebAdmin WebAdmin] のパネルを通してチケット属性を管理できる ||
     49
     50注意: "チケットを見る" (英語版では "view tickets") ボタンは、 `REPORT_VIEW` 権限で表示されます。
     51
     52=== ロードマップ === #Roadmap
     53
     54|| `MILESTONE_VIEW` || マイルストーンを表示する。マイルストーンにチケットを割り当てる ||
     55|| `MILESTONE_CREATE` || 新しいマイルストーンを作成する ||
     56|| `MILESTONE_MODIFY` || 既に存在するマイルストーンを編集する ||
     57|| `MILESTONE_DELETE` || マイルストーンを削除する ||
     58|| `MILESTONE_ADMIN` || 全ての `MILESTONE_*` 権限を持つ ||
     59|| `ROADMAP_VIEW` || [wiki:TracRoadmap ロードマップ] を表示する, (すでに) MILESTONE_VIEW と同じではない [http://trac.edgewall.org/ticket/4292 #4292] 参照 ||
     60|| `ROADMAP_ADMIN` || [http://trac.edgewall.org/ticket/3022 #3022] で削除され、 MILESTONE_ADMIN に置き換えられた ||
     61
     62=== レポート === #Reports
     63
     64|| `REPORT_VIEW` || [wiki:TracReports レポート] を表示する。つまり "チケットを見る" (英語版では "view tickets") リンク ||
     65|| `REPORT_SQL_VIEW` || [wiki:TracReports レポート] の SQL を表示する ||
     66|| `REPORT_CREATE` || 新しい [wiki:TracReports レポート] を作成する ||
     67|| `REPORT_MODIFY` || 既に存在する [wiki:TracReports レポート] を編集する ||
     68|| `REPORT_DELETE` || [wiki:TracReports レポート] を削除する ||
     69|| `REPORT_ADMIN` || 全ての `REPORT_*` 権限を持つ ||
     70
     71=== Wiki システム === #WikiSystem
     72
     73|| `WIKI_VIEW` || 既に存在する [wiki:TracWiki Wiki] ページを表示する ||
     74|| `WIKI_CREATE` || 新しい [wiki:TracWiki Wiki] ページを作成する ||
     75|| `WIKI_MODIFY` || [wiki:TracWiki Wiki] ページを編集する ||
     76|| `WIKI_DELETE` || [wiki:TracWiki Wiki] ページと添付ファイルを削除する ||
     77|| `WIKI_ADMIN` || 全ての `WIKI_*` 権限に加え、 ''読み込み専用'' ページを管理する ||
     78
     79=== パーミッション === #Permissions
     80
     81|| `PERMISSION_GRANT` || パーミッションを追加および付与する ||
     82|| `PERMISSION_REVOKE` || パーミッションを削除およびはく奪する ||
     83|| `PERMISSION_ADMIN` || 全ての `PERMISSION_*` 権限を持つ ||
     84
     85
     86=== その他 === #Others
     87
     88|| `TIMELINE_VIEW` || [wiki:TracTimeline タイムライン] を表示する ||
     89|| `SEARCH_VIEW` || [wiki:TracSearch 検索] の表示と実行 ||
     90|| `CONFIG_VIEW` || ''Trac について'' (英語版では ''About Trac'') のページに追加して、現在のコンフィグやインストールされているプラグインの表示を可能にする ||
     91|| `EMAIL_VIEW` || [wiki:TracIni trac セクションの show_email_addresses オプションが false] でもメールアドレスを表示する ||
     92
     93== 権限の付与 == #GrantingPrivileges
     94
     95[wiki:TracAdmin trac-admin] を使用してユーザに権限を与えて下さい。現在設定されている権限は以下のコマンドで一覧できます:
     96{{{
     97  $ trac-admin /path/to/projenv permission list
     98}}}
     99
     100次のコマンドはユーザ ''bob'' にレポートの削除権限を与えます:
     101{{{
     102  $ trac-admin /path/to/projenv permission add bob REPORT_DELETE
     103}}}
     104
     105`permission add` コマンドでは複数の権限を扱うことができます:
     106{{{
     107  $ trac-admin /path/to/projenv permission add bob REPORT_DELETE WIKI_CREATE
     108}}}
     109
     110次のコマンドはユーザ ''bob'' に管理者権限を与えます:
     111{{{
     112  $ trac-admin /path/to/projenv permission add bob TRAC_ADMIN
     113}}}
     114
     115== パーミッショングループ == #PermissionGroups
     116
     117二つのビルトイングループ "認証済み (authenticated)" と "匿名 (anonymous)" があります。[[BR]]
     118ログインしていないユーザは自動的に "匿名 (anonymous)" グループに属します。[[BR]]
     119ログインしたユーザは "認証済み (authenticated)" グループに属します。[[BR]]
     120"認証済み (authenticated)" グループの権限は "匿名 (anonymous)" グループの権限を継承します。[[BR]]
     121例えば、"匿名 (anonymous)" グループが WIKI_MODIFY 権限を持っていれば、"認証 (authenticated)" グループに WIKI_MODIFY 権限を与える必要はありません。
     122
     123カスタムグループは二つのビルトイングループから権限を継承します。
     124
     125パーミッションをグループ化してロール (''developer''、''admin''、etc.) を構成することができます
     126{{{
     127  $ trac-admin /path/to/projenv permission add developer WIKI_ADMIN
     128  $ trac-admin /path/to/projenv permission add developer REPORT_ADMIN
     129  $ trac-admin /path/to/projenv permission add developer TICKET_MODIFY
     130  $ trac-admin /path/to/projenv permission add bob developer
     131  $ trac-admin /path/to/projenv permission add john developer
     132}}}
     133
     134グループのメンバーは {{{permission list}}} を引数なしで起動すると見ることができます; 出力される結果にはグループのメンバが含まれています。 '''グループ名には小文字を使ってください。大文字は権限名のために予約されています。'''
     135
     136== グループと権限を追加する == #AddingaNewGroupandPermissions
     137あなたが望むようにパーミッショングループを作り、ユーザを割り当てて、そのグループに権限を付与することができます。
     138
     139以下は、新しいグループ ''beta_testers'' に ''bob'' というユーザを割り当てて、 ''beta_testers'' に WIKI_ADMIN の権限を付与する例です ( その結果 ''bob'' は WIKI_ADMIN という権限を引き継ぐでしょう ) 。
     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== パーミッションを削除する == #RemovingPermissions
     147
     148パーミッションは 'remove' コマンドを使用して削除します。例:
     149
     150このコマンドは、ユーザ ''bob'' から レポートを削除する権限を削除します:
     151{{{
     152  $ trac-admin /path/to/projenv permission remove bob REPORT_DELETE
     153}}}
     154
     155`permission add` と同様に、このコマンドは複数の権限名を扱うことができます。
     156
     157特定のユーザからすべての権限を削除することもできます:
     158{{{
     159  $ trac-admin /path/to/projenv permission remove bob '*'
     160}}}
     161
     162または、すべてのユーザからある権限を削除することもできます:
     163{{{
     164  $ trac-admin /path/to/projenv permission remove '*' REPORT_ADMIN
     165}}}
     166
     167== デフォルトのパーミッション == #DefaultPermissions
     168
     169`匿名 (anonymous)` のユーザは、デフォルトで Trac 内の全てに対して ''参照 (view)'' 権限を持ちますが、作成 (create) および変更 (modify) の権限はありません。
     170加えて、 `認証済み (authenticated)` のユーザは ''チケットと Wiki ページに関する作成 (create) 及び変更 (modify)'' の権限を持ちます。
     171
     172'''匿名 (anonymous)'''
     173{{{
     174 BROWSER_VIEW
     175 CHANGESET_VIEW
     176 FILE_VIEW
     177 LOG_VIEW
     178 MILESTONE_VIEW
     179 REPORT_SQL_VIEW
     180 REPORT_VIEW
     181 ROADMAP_VIEW
     182 SEARCH_VIEW
     183 TICKET_VIEW
     184 TIMELINE_VIEW
     185 WIKI_VIEW
     186}}}
     187
     188'''認証済み (authenticated)'''
     189{{{
     190 TICKET_CREATE
     191 TICKET_MODIFY
     192 WIKI_CREATE
     193 WIKI_MODIFY 
     194}}}
     195----
     196See also: TracAdmin, TracGuide and TracFineGrainedPermissions