RIGHT:[[:t/権限]] [[:t/利用者]] [[:t/ページ]] [[:t/リンク]] [[:t/UI]]
RIGHT:[[:t/権限]]

権限について考えなければいけないもの。

----

#contents

***ユースケース全て [#z15450a7]
ページの閲覧と編集/履歴の閲覧と履歴の編集/ページ/属性の閲覧と編集/ページの追記(既存テキストを変えない)
…を対象ページごとに。
-下位展開時はそれを1ページごとに
-拒否する権限(拒否権)
†[[:i/権限と拒否]]

***ページを伴わないユースケースも [#t2ad8edb]
ダンプと復帰/エクスポートとインポート
…のコンソールを操作したときに受け付けるかどうか。
それぞれのコンソールを表示するかどうかはページの閲覧権限。

***リンクの表示 [#b0040a6a]
リンク先のページを閲覧できるときのみリンクラベルを表示する。リンクはリンク先ページの権限(錠)を継承する。
-リンクを使う場面すべて
例えば検索結果でもリンク先の権限(錠)を考慮する。
-ページ名を出すとき
ページ名はリンクになるはず。ページ名一覧やパンくずリストでも閲覧権限のあるページだけを表示。
-リンクのようなものでも
編集ボタンやUniversalEditButtonは対象ページの編集が可能な時だけ表示。
-自動リンク(暗黙的なリンク)については「非表示」ではなく「リンク化しない」
ユーザーが入力したテキストは消さない。

権限判定するのはユースケースばかりではない。
***%%拒否%% [#ia60a77d]
%%与えられた権限を使わないこと。一時的に権限を捨てること。%%
%%†[[:i/権限と拒否]]%%

***見解 [#eb5d60c4]
利用者が「そんなページは無い」という見解でいるページは表示さえしない。
***ページの作成者/所有者 [#k7c05165]
†[[:i/状況によって変わる役割]]

***テンプレート [#e87aa5ff]
テンプレート参照時は、テンプレートページの権限(錠)を使う。埋め込みと同じ。%%のページ/属性に書かれたページ名を使って、権限を表すページを取得。そこで権限判定。%%
NGになってはいけないものなので判定不要だけど。
***そのほか [#c8ff0cf9]
リンクに関する権限判定は対象URIをすげ替えて、ユースケースと共通の権限判定を行なうようなもの。

''UniversalEditButtonの表示はHTMLヘッダーで指定する''ことに注意。

検索にはページ名を見る権限が必要。