36.2. pwd
— パスワードデータベースへのアクセスを提供する¶
このモジュールは Unix のユーザアカウントとパスワードのデータベースへのアクセスを提供します。全ての Unix 系 OS で利用できます。
パスワードデータベースの各エントリはタプルのようなオブジェクトで提供され、それぞれの属性は passwd
構造体のメンバに対応しています(下の属性欄については、<pwd.h>
を見てください):
インデックス | 属性 | 意味 |
---|---|---|
0 | pw_name |
ログイン名 |
1 | pw_passwd |
暗号化されたパスワード(optional)) |
2 | pw_uid |
ユーザID(UID) |
3 | pw_gid |
グループID(GID) |
4 | pw_gecos |
実名またはコメント |
5 | pw_dir |
ホームディレクトリ |
6 | pw_shell |
シェル |
UIDとGIDは整数で、それ以外は全て文字列です。検索したエントリが見つからないと KeyError
が発生します。
注釈
伝統的なUnixでは、 pw_passwd
フィールドはDES由来のアルゴリズムで暗号化されたパスワード(crypt
モジュールをごらんください)が含まれています。しかし、近代的なUNIX系OSでは シャドウパスワード とよばれる仕組みを利用しています。この場合には pw_passwd フィールドにはアスタリスク('*'
)か、 'x'
という一文字だけが含まれており、暗号化されたパスワードは、一般には見えない /etc/shadow
というファイルに入っています。 pw_passwd フィールドに有用な値が入っているかはシステムに依存します。利用可能なら、暗号化されたパスワードへのアクセスが必要なときには spwd
モジュールを利用してください。
このモジュールでは以下の内容を定義しています:
-
pwd.
getpwuid
(uid)¶ 与えられたUIDに対応するパスワードデータベースのエントリを返します。
-
pwd.
getpwnam
(name)¶ 与えられたユーザ名に対応するパスワードデータベースのエントリを返します。
-
pwd.
getpwall
()¶ パスワードデータベースの全てのエントリを、任意の順番で並べたリストを返します。