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
()¶ Возвращает список всех доступных записей базы данных паролей в произвольном порядке.