• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:[[:t/利用者]] [[:t/権限]] [[:t/拒否]] [[:t/属性]]

#contents

「できること」を表す権限と、「できるけどやらない」を表す拒否(ブロックとか)と。それと「拒否できる」拒否権と。

何かをするには権限が必要。権限のほかに「ブロックしていないこと」なども関わる。できない/できるけどやらない/できるしやるの3パターン。これらがどの処理にもつきまとう。
「できるけどやらない」は「自分でできなくする」でもいい。そうすれば、できる/できないの判定だけで済む。

-権限は主に利用者に与える機能/サービスを減らすもの。「権限」が無いことがデフォルトで、権限があると提供する機能/サービスが増える。
-拒否は主に''利用者が''自分に与えられる機能/サービスを減らすこと。「拒否」も無いことがデフォルトだけど、拒否するごとに提供される機能/サービスが減る。

権限も拒否も機能/サービスを減らすもの。

***拒否権 [#m1880870]
拒否する権限。
例えば「ページの更新情報をブロックすること」にも権限が必要。

拒否できるもの別に拒否権があるのでは。
拒否できるものごとに拒否権が必要では?

-「ちょっとした更新」を使う権限⇔更新日時更新と更新情報の生成を拒否
-更新情報をブロック⇔更新情報を閲覧する権限を捨てる
--≒''特定のページの''更新情報をブロック
ページごとに設定する点が異なる。

「与えられている権限を自ら捨てる」というのが拒否の実装になるのかも。
「権限を捨てる権限」が拒否権。

***権限は必ず拒否可能に [#o017338b]
与える側と受け入れる側を考慮。

権限は継承元にあるものだけ利用可能にするか、権限領域を変更できる権限でのみ変更可能にする必要がある。
拒否…つまり禁止事項を継承するようにすれば、自身の権限領域を書き換え可能になるし、継承元にある権限だけを使うことになるし、いろいろと解決できる。
***どこに記録するか [#j219e857]
権限の場合、鍵は利用者に。対象がどのページであっても同じ鍵。錠のほうは対象ページに。対象ページごとに持っている錠が異なる。
†[[:Done/ページの拒否]]

***仕組みではなく方針/考え方とする [#nd010fd9]
→拒否は仕組みではなく機能を考えるための方針。権限をヒントにして拒否機能を考える。更新日時の更新拒否→「ちょっとした更新」など。

実装するにしても、権限を使うときに拒否されているか考慮。それまでは許可も拒否も同一視。属性のひとつとして扱うだけ。
*** 権限か設定か [#hebefc8c]
権限で拒否するとなると、特別な権限が要る。通知の拒否などは権限というより個人的な設定のはず。両方必要か。