ユーザー識別子

ユーザー識別子の最新ニュースをまとめて検索!

ユーザー識別子(ユーザーしきべつし、User Identifier)とは、UNIX系システムでユーザーを表現(識別)する番号。UIDと略記される。

また、ユーザーはグループに属することができ、グループを識別するグループ識別子Group Identifier)という番号がある。これをGIDと略記する。

目次

[編集] ユーザー識別子

UIDの値の範囲はシステムによって異なるが、最低でも 0 から 32767 の値をとる。また、以下のような制限がある。

  • スーパーユーザーのUIDは常にゼロ(0)である。
  • "nobody" というユーザーは伝統的に最大UID 32767 に設定されてきた。最近では、nobody の UID をシステム範囲(後述)か 65530~65535 に設定することが多い。
  • 1~100 の UID はシステム用途に確保されている。システムによっては、499 までとか 511 までをシステム用途に推奨していることもある。

ユーザー毎のUID値は /etc/passwd ファイルで参照される。シャドウパスワードファイルやネットワーク・インフォメーション・サービス(NIS)も数値としてのUIDを参照する。ユーザー識別子はUNIXファイルシステムプロセスに(所有者を示す情報として)必須の情報である。OSによっては 16ビットのUIDをサポートして 65536 までの番号を使えるが、最近の 32ビット UID をサポートするシステムでは 4,294,967,295 までの値を使用できる。

[編集] グループ識別子

UNIX系システムでは、複数のユーザーを「グループ」に分類することができる。POSIXUNIX系のファイルパーミッションは3段階(ユーザー、グループ、その他)から構成されている。グループを用いることにより、ディスクやプリンターなどの周辺機器へのアクセスを正式な形で委任することが可能となる。同様の手法でスーパーユーザーが管理タスクを一般ユーザーに委任することも可能にする。これは、Windows NTやその後継OSでの Administrators グループに似ている。

グループ識別子Group Identifier)はグループを識別する番号である。GIDの値の範囲はシステムによって異なるが、最低でも 0 から 32767 の値をとる。また、以下のような制限がある。

この数値は /etc/passwd/etc/group (あるいはそれと同等のファイル)で参照される。シャドーパスワードファイルとNISも数値としてのGIDを参照する。グループ識別子はUNIXファイルシステムプロセスに(所有者を示す情報として)必須の情報である。

使用可能なグループ識別子の値の範囲は、それを格納するメモリ領域のサイズに規定される。従来、16ビットの符号付整数が使われていた。符号は必要ない(負の整数はGIDとして使用されない)ため、符号なしの整数が使われるようになっていった(0~65535)。最近のOSでは32ビットの整数が使われているため、その範囲は 0~4,294,967,295 である。

[編集] 一次GID と 補助GID

UNIXシステムでは、各ユーザーは少なくとも1つのグループに属し、そのグループは /etc/passwd内のそのユーザーのエントリ内にGIDの数値で指定される。これを一次グループID(primary group ID)と呼ぶ。ユーザーはそれ以外のグループにも属することができ、/etc/group ファイルでそれを設定する。そのようなグループのIDを補助グループID(supplementary group ID)とか二次グループID(secondary group ID)と呼ぶ。通常、補助グループIDに属しているだけではグループのパーミッションのアクセス権を獲得できない。

[編集] 実効グループIDと実グループID

UNIXプロセスは実効GIDと実GIDを持つ。通常これらは同一であるが、setgidプロセスでは異なったGIDとなる。setgidプロセスは特権を持つグループとなって特権の必要な機能を実行し、必要に応じて簡単に非特権グループに戻すことが出来る。

[編集] 関連項目

[編集] 外部リンク

最終更新 2008年9月25日 (木) 09:04 (日時は個人設定で未設定ならばUTC)。
【ユーザー識別子】変更履歴

ご利用上の注意