gate-user-db(5)

Date: $Date: 2012/08/03 07:39:16 $
Source: gate-toroku-system

名前

gate-user-db - ユーザ/ホストデータベースの構造とファイル書式

ディレクトリ構成

ユーザデータベースの実体は /home/gate/userdb/ 以下に置かれる ファイル群である。ホストデータベースの実態は /home/gate/ipdb/ 以下 に置かれる。

(なぜ /home かというと、/home を バックアップしているシステムは多いので、 gate-toroku-system 独自のバックアップを考察しなくて よいからである)

ファイル名は ログイン名 である。たとえば toyoda というログイン名を持つ ユーザに対応する情報は toyoda という名前のファイルに 書き込まれる。 ひとつひとつのファイルを ユーザ情報カード とよぶ。

データベースのユーザ情報カード置場は以下の 3 箇所とする:

/home/gate/userdb/pending
登録申請後、承認を経ていないユーザのカードが置かれる。
/home/gate/userdb/stable
承認されたユーザのカードが置かれる。
/home/gate/userdb/defunct
利用を廃止したユーザのカードが置かれる。

また、データベースのホスト情報カード置場は以下の 3 箇所である:

/home/gate/ipdb/pending
登録申請後、承認を経ていないホストのカードが置かれる。
/home/gate/ipdb/stable
承認されたホストのカードが置かれる。
/home/gate/ipdb/defunct
廃止されたホストのカードが置かれる。

userdb と ipdb はディレクトリは gate グループからのみ閲覧可能にする。

ユーザの分類

gate-toroku-system(1) では同じ名前の uid と gid が原則として一致するシステムを 考察しているので、 以下でのユーザに関する議論はグループにも準用される。 ユーザには以下の 3 種類がある。

-
個人ユーザ
-
グループユーザ
-
システムユーザ

個人ユーザは個人に対応する。

グループユーザは個人の集合または個人の活動を抽象化したもので、 ファイルやメールアドレスなどの資源を独立して持たしめたいものに 対応する。

システムユーザは Debian システムまたは debian パッケージによって 作られるユーザである。 これらの uid または gid は 1000 (未調査) より小さい。 gate-db-to-passwd(8), gate-db-to-shadow(8), gate-db-to-group(8) は、既存のシステムユーザを保存するように動作する。 データベースにシステムユーザのカードを手動で作成する意義は、 システムユーザと重複する名称のユーザを作らないようにすることにある。

ユーザ/ホスト情報カードの形式

個々のファイルの形式は電子メールのヘッダに似ている。 ファイルは改行文字によって行に区切られ、 各行は最初のコロン (:) によって フィールド名 と 値 に区切られる。 値 の最初または最後のスペースまたはタブは無視される。つまり


username: toyoda
username: toyoda
username:toyoda
は等価である。

フィールド (欄) は以下で規定するとおりである。 これらはどのような順番で記述されていてもよい。

フィールド名は大文字と小文字の区別をするものとする (電子メールとは違う)。 いまのところ、すべてのフィールド名は小文字である。

定義されていない名前のフィールドは将来の拡張のため予約されている。 処理系は未知の名前のフィールドを無視するものとする。

漢字コードは日本語 EUC とする。 外部からの入力によってデータベースを作成・変更するプログラム は漢字コードの変換を行う責任がある。

すべての情報カードに共通に必須のフィールド

type:
登録種別をあらわす。 現在のところ、ユーザデータベースの種別はすべて小文字、 DNS データベースの種別はすべて大文字である。
person		個人ユーザ
incorporation	法人ユーザ
system		システムユーザ
A		DNS の通常のホスト情報
CNAME		DNS の別名情報
MX		DNS のメール転送情報
A,MX		DNS の A と MX を同時設定

個人ユーザ登録申請時に入力するフィールド

loginname:
ログイン名
kname:
漢字または仮名の名前
name:
アルファベットの名前。 姓名の順、大文字と小文字の組み合わせはどのようでも可。 現状では英大文字・小文字、数字とハイフンだけが使える。
phone:
緊急連絡先電話番号
fax:
緊急連絡先 FAX 番号 (必須ではない)
syozoku:
所属
room
部屋番号、部屋がない場合は郵便の届く住所
status:
身分 (以下のリストから選択)
kyoukan		常勤教員
staff		その他職員
insei		大学院生
gakubu		学部学生
kenkyuusei	ポスドク・研究生・聴講生
visitor		その他教員・客員研究員・訪問者・共同研究者
others		その他 EP ネットワーク委員長が特に認める者
hosyounin:
保証人 login 名 (教員でなければならない) 教員は保証人を gate (gate.conf で変更可能) とする
email:
本人連絡先 email address 登録過程での連絡のため使用する (必須ではない)
shell:
ログインシェルのフルパス (/etc/shells のリストから選択)

グループユーザ登録申請時に入力するフィールド

loginname:
ログイン名
kname:
日本語名称
name: ASCII 文字で表現した名称
hosyounin:
責任者。存在する個人ユーザでなくてはならない
member:
スペースまたはタブで区切られた個人ユーザのリスト
uid:
ユーザ ID (本DB で作成されるユーザは グループID を uid と一致させるのでグループ ID 欄は不要)
date:
最後に内容が変更された日時 グリニジ時間で 1999-09-01T10:20:33+0000 のように 記入する。
password:
crypt(3) された仮パスワード (type: person だけ) (ユーザが passwd(1) で変更されるのには追随しない。 最初の変更までと、事故で復旧するときにしか使われない)

DNS 登録申請時に入力するフィールド

type:
登録種別 (内容は上記参照)
hostname:
ホスト名
root:
機器管理者(ルート)のログイン名
owner:
登録申請者(教官)のログイン名

(A レコードのとき必要なもの)

hardware:
ホスト機種名
ip:
IP アドレス
eth:
イーサネットアドレス
hubport:
大計ハブ番号とポート番号(.で区切る)
place:
設置場所

(CNAME レコードのために必要なもの)

cname:
CNAME の指示先

(MX レコードのために必要なもの)

mx:
MX の指示先

(あってもなくてもよいもの)

note:
備考

そのほかの情報

accepted:
承認日時 (内容は自由)

ユーザ関連ファイル

/home/gate/userdb/pending
保留領域。 登録申請後、認証を経ていないユーザのカードが置かれる。
/home/gate/userdb/pending/username
ユーザ username の登録申請カード
/home/gate/userdb/stable
承認済み領域。
/home/gate/userdb/stable/username
ユーザ username のユーザ情報カード
/home/gate/userdb/defunct
登録廃止済み領域。
/home/gate/userdb/defunct/username
登録抹消済みユーザ username のユーザ情報カード

ホスト関連ファイル

/home/gate/ipdb/pending
保留領域。 登録申請後、認証を経ていないホストのカードが置かれる。
/home/gate/ipdb/pending/hostname
ホスト hostname の登録申請カード
/home/gate/ipdb/stable
承認済み領域。
/home/gate/ipdb/stable/hostname
ホスト hostname のホスト情報カード
/home/gate/ipdb/defunct
登録廃止済み領域。
/home/gate/ipdb/defunct/hostname
登録廃止済みホスト hostname のホスト情報カード


HTML generated using htroff at 25 December 2017 16:59:5.