• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:[[:t/利用者]] [[:t/Wiki]]



利用者(ユーザー)についての情報。データ。
ページの編集などを許可・制限するときに参照するデータの集合。

と、利用者の役に立つような機能のためのデータ集。















**要求権限の設定は複数 [#zc4dcb99]
ページの編集権限などは
(条件1 AND 条件2) OR (管理者向け条件)
のように複数条件をOR結合。
**いろいろな権限 [#qd0e5dac]

権限は基本は3つで十分。
-読み
-書き1(既存ページの編集だけ)
-書き2(ページの追加・削除・編集ほか)

ページの種類との組み合わせで…
-システムの一部になってるページの…読み、書き1、書き2

これらを特定ユーザー、特定ユーザーグループに与える。

※ページの種類というものは無くてあるページとその下位ページに読み書き条件を付けるということ。ページグループ×ユーザーグループ×3種の権限

**情報はページに [#b2f2c704]
利用者は独立したオブジェクト。でも関連する情報はページに記録。
自分のページにある情報がそのアカウントの情報。

エクスポート/インポートが容易になる。
**管理者定義 [#f37faea2]
-管理者OpenIDをプログラムに埋め込み。複数可。
そのOpenID所有者が管理権を持つ。
-Wiki上のページに書くようにしても良い。
両方できるように。

[[キーワード:OpenID]]
**高い依存性 [#ka3a7703]
ページや派閥と関係が深い。
利用者についてはこれらを考えてから。


**アカウント [#kc47cc40]
利用者ごとのアカウントを。
特定のページに記述することが利用者登録になるように。
さらにグループ名を表すページを使って、そのグループに属する利用者を登録できるように。

***定義の書き方 [#me40c4cb]
 文字列(利用者の属性名とその値に適合するRegExp)→アクセス権定義

アクセス権定義は定義の対象になるページ(ページ/属性)に書く?
RIGHT:[[:t/?]]

そのページのアクセス権を管理者だけ編集可能にすれば、管理者がアクセス権定義をすることになる。

もしアクセス権定義ページを分けてサブディレクトリごとに用意できるようにするなら、ページがあるディレクトリとサブディレクトリについてのみ定義できるように。
***有効期間 [#v1e01248]
有効であり続ける条件
-最終使用時刻(最後にアカウント情報が参照された時刻)からの時間が有効期限内
アカウント情報を使わないような操作が続くと無効になる?→別にいい?
-同一端末を使っている
同じIPアドレス。同じUAかどうかは不要。
はてなでもやっている?
これがあると不便?PCで編集しながら携帯での見え方をチェックすることができない。

無効になる条件
-ユーザーからのリクエスト
「ログアウト」した時。
-有効期限を過ぎた
-アカウントが削除された
***利用者の属性 [#l8a89c2d]
利用者に関する情報で文字列で表せるもの全て。
Googleさんだけ個別化して、特定のページを見せるなら属性「User-Agent」に/googlebot/があることを調べる。


RIGHT:[[:t/アカウント]] [[:t/継承]]
***非公開編集 [#w4cb2e9a]
アカウントを持っている人がゲストとして書き込むのもいい。
編集履歴に自分のアカウントが記録されないので、「隠れた編集」や「非公開編集」とも言える。



* [#ea7b3a6e]
利用者と権限を結び付ける際、引数の形式を考えるのが面倒なので、利用者をVisitorとしてページに渡す(コントロールクラスが)。
で、ページから利用者を参照、利用者をたらい回し。


**リクエスト、ログ読み(未読) [#ma8c158c]
人気ページは「充実させてほしい」というリクエストの表れ。
編集者が自分が編集するペースで(というか、前回アクセスから今までの期間で)人気のあるページを調べられれば、
「次に編集すべきページ」「期待されているページ」というものが分かる。

掲示板での「ログ読み」「未読」をWikiでやるならば、前回アクセス以降の差分(全ページ分)閲覧と、前回アクセス以降の人気ページを知ることになるのでは。

RIGHT:&tag(利用者,管理);

**利用者/ [#p8256d46]
#lsx(new=true)

**[[tag:利用者]] [#ca074b84]
#lsx(tag=利用者,new=true)