pwd
— 密码数据库¶
此模块提供对 Unix 用户帐户和密码数据库的访问。它在所有 Unix 版本上都可用。
可用性: Unix,不适用于 Emscripten,不适用于 WASI。
密码数据库条目以类似元组的对象报告,其属性对应于 passwd
结构的成员(下面的属性字段,请参阅 <pwd.h>
)
索引 |
属性 |
含义 |
---|---|---|
0 |
|
登录名 |
1 |
|
可选的加密密码 |
2 |
|
数字用户 ID |
3 |
|
数字组 ID |
4 |
|
用户名或注释字段 |
5 |
|
用户主目录 |
6 |
|
用户命令解释器 |
uid 和 gid 项为整数,其他所有项均为字符串。如果找不到所请求的条目,则会引发 KeyError
。
注意
在传统的 Unix 中,字段 pw_passwd
通常包含使用 DES 派生算法加密的密码(请参阅模块 crypt
)。但是,大多数现代 Unix 使用所谓的影子密码系统。在那些 Unix 中,pw_passwd 字段仅包含星号 ('*'
) 或字母 'x'
,其中加密密码存储在文件 /etc/shadow
中,该文件不可世界读取。pw_passwd 字段是否包含任何有用的信息取决于系统。如果可用,则应使用 spwd
模块,其中需要访问加密密码。
它定义以下项
- pwd.getpwuid(uid)¶
返回给定数字用户 ID 的密码数据库条目。
- pwd.getpwnam(name)¶
返回给定用户名对应的密码数据库条目。
- pwd.getpwall()¶
返回所有可用密码数据库条目的列表,顺序任意。