pwd — База паролей


Модуль обеспечивает доступ к учетной записи пользователя Unix и базе данных паролей. Он доступен во всех версиях Unix.

Записи базы данных паролей возвращаются как объект, похожий на кортеж, атрибуты которого соответствуют членам структуры passwd (поле Attribute ниже, см. <pwd.h>):

Индекс Атрибут Смысл
0 pw_name Логин
1 pw_passwd Дополнительный зашифрованный пароль
2 pw_uid Числовой ID пользователя
3 pw_gid Числовой ID группы
4 pw_gecos Имя пользователя или поле комментария
5 pw_dir Домашний каталог пользователя
6 pw_shell Интерпретатор пользовательских команд

Элементы uid и gid - целые числа, все остальные - строки. Поднимается KeyError, если запрошенная запись не может быть найдена.

Примечание

В традиционной Unix поле pw_passwd обычно содержит пароль, зашифрованный алгоритмом DES (см. модуль crypt). Однако в большинстве современных unices используется так называемая система теневого пароля. На тех unices поле pw_passwd только содержит звездочку ('*') или символ 'x', где зашифрованный пароль сохранен в файле /etc/shadow, который не является удобочитаемым миром. Содержит ли поле pw_passwd что-либо полезное, зависит от системы. При наличии модуль spwd должен быть используемый, где доступ к зашифрованному паролю требуется.

Она определяет следующие элементы:

pwd.getpwuid(uid)

Возвращает запись базы данных паролей для данного цифрового идентификатора пользователя.

pwd.getpwnam(name)

Возвращает запись базы данных паролей для данного имени пользователя.

pwd.getpwall()

Возвращает список всех доступных записей базы данных паролей в произвольном порядке.

См.также

Модуль grp
Интерфейс с базой данных групп, подобный этой.
Модуль spwd
Интерфейс к теневой базе данных паролей, подобный этой.