spwd —— shadow 密码库
spwd —— shadow 密码库
从 3.11 版起不建议使用,将在 3.13 版中移除: spwd 模块已被弃用(请参阅 PEP 594 了解详情及其替代品)。
该模块提供对 Unix shadow 密码库的访问能力。可用于各种 Unix 版本。
可用性: 非 Emscripten,非 WASI。
此模块在 WebAssembly 平台 wasm32-emscripten 和 wasm32-wasi 上不适用或不可用。 请参阅 WebAssembly 平台 了解详情。
访问 shadow 密码数据库须拥有足够的权限(通常意味着必须采用 root 账户)。
shadow 密码库中的每条记录均表示为一个类似元组的对象,其属性对应着 spwd 结构的成员(下面列出了各属性字段,参见 <shadow.h>`)。
| 索引 | 属性 | 含意 |
|---|---|---|
| 0 | sp_namp |
登录名 |
| 1 | sp_pwdp |
加密后的密码 |
| 2 | sp_lstchg |
最后修改日期 |
| 3 | sp_min |
两次修改间隔的最小天数 |
| 4 | sp_max |
两次修改间隔的最大天数 |
| 5 | sp_warn |
提前警告用户密码过期的天数 |
| 6 | sp_inact |
密码过期至账户禁用之间的天数 |
| 7 | sp_expire |
账户过期的天数,自 1970-01-01 算起 |
| 8 | sp_flag |
保留字段 |
sp_namp 和 sp_pwdp 条目是字符串,其他的均为整数。 如果未找到所需条目则会触发 KeyError。
定义了以下函数:
spwd.getspnam(name)
返回指定用户名的 shadow 密码库记录。
在 3.6 版更改: 如果当前用户权限不足,会触发 PermissionError,而非 KeyError。
spwd.getspall()
返回所有可用的 shadow 密码库记录列表,顺序随机。
参见
模块 grp
针对用户组数据库的接口,与本模块类似。
模块 pwd
访问普通密码库的接口,与本模块类似。
