:i/ロールは管理者とゲストのみによって、この権限は不要になった。

残る権限は「スペースの所有者かどうか」くらい。

「各スペースからページをどう集めるか」というbotの挙動が、権限の代わり。重要なページの収集対象にはならないスペースや、ルートページの収集対象スペースなど、スペースを差別するのが新しい権限


権限は2種類。

ページ側が持つ
これが無ければ鍵は無駄になり、誰にも何も許可されないので、錠というより「鍵穴」のほうが正しそう。錠はあらかじめ施錠されている。
利用者が持つ

権限名はユースケース名。フレームワーク/WikiEngineが定義する。再定義可能にはしないので、権限定義はページにはしない。
運用中に新しいユースケースを導入するには、新しい権限錠と鍵)をしかるべきページに書かなければならない。

ひとつのユースケースに対応する錠は全て外さなければならない。通常はひとつしか設定されていないはずだけど。実際にはユースケースクラスの権限判定次第。

:Done/権限について再々考権限のまとめ。


錠はページのもの Edit

ページ以外のものに錠をかけるなら独自に似たもの(錠ではない何か)を作る。それを表すページ属性領域にでも要求する権限(鍵)を書いておいて。それをどう扱うかはコード次第。実装内のクラス別に設定ページを用意するということ。

:i/クラスごとにページを
通常の錠はページクラスの設定ということになる(が、すべてのページに必要な設定なのでクラスごとのページにはしない)

ページ名を見る権限 Edit

逆リンクであってもそのページを閲覧する権限が必要。ページ名ページ/内容の1行目なので内容と同等。
自動リンクの場合、ページ名はもう書かれているのでリンクにしないだけ。

:i/常にサブセットWiki
実装では閲覧権限のあるページだけのサブセットWikiにする。その中で逆リンク自動リンクを生成。

:i/権限を判定するケース Edit

:Done/ページ自動更新時の権限 Edit

:/自動生成ページにアクセス権は引き継がれる
自動更新するなら権限不要にしないとおかしい。
自動更新にするための権限なら必要。それは拡張機能の導入権限

:i/ロールと権限の違い Edit

ロールは「→:権限セット」と呼ぶことにした。それを運用で「ロール」と呼んでもいい。

権限セット権限グループは用意しない Edit

権限をまとめたもの。権限と同じ使い方ができる。権限ページ/属性権限セットページ権限セットに書いた権限は、他の権限セット継承可能。

鍵と錠の対応を分かりやすくするため、「権限をまとめた権限」は用意しない。「書ける(錠)」に対応するのは「書ける(鍵)」だけ。

権限定義が単なるページでいいなら権限セットを作ってもいい。

ロール

:Done/権限の継承について再考 Edit