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

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

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

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

ページ以外が持つ錠 Edit


錠はページのもの。ページ以外のものに錠をかけることもできる。クラス別ページ属性領域に権限(錠)を書いておいてユースケースのコードで判定。

権限名はユースケース名。フレームワーク/WikiEngineが定義する。再定義可能にはしないので、権限定義はページにはしない。

運用中に新しいユースケースを導入するには、新しい権限錠と鍵)をしかるべきページに書かなければならない。

:i/クラスごとにページを

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

ユースケースから錠を参照するときは必ずそのクラスを介す必要がある??

各クラスはそこ以外は読まない。


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

錠はページのもの Edit


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

:i/クラスごとにページを

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

ページ名を見る権限 Edit

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

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

:i/権限が影響するもの[?] Edit

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

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


:/自動生成ページにアクセス権は引き継がれる

自動更新するなら権限不要にしないとおかしい。

自動更新にするための権限なら必要。それは拡張機能の導入権限

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


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

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


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

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

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

ロール

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