在linux中, 有一个通常称为阴影口令(shadow password)的文件, 这个文件中包含这用户名和加密口令以及其他信息. 注意: 是加密口令, 没有哪个系统会随便到将密码明文存储.
以下是shadow文件各个字段的内容:
说明 | struct spwd 成员 |
登录名 | char *sp_name |
口令 | char* sp_pwdp |
最后一次修改时间 | int sp_lstchg |
最小时间间隔 | int sp_min |
最大时间间隔 | int sp_max |
警告时间 | int sp_warn |
不活动时间 | int sp_inact |
失效时间 | int sp_expire |
保留字段 | unsigned int sp_flag |
以下函数用来访问阴影口令文件
#include <shadow.h>
struct spwd *getspnam(const char *name);
struct spwd *getspent(void);
//以上两个函数成功则返回指针,失败返回NULL
void setspent(void);
void endspent(void);
Linux系统中shadow文件和passwd文件的区别:
linux 用户管理之 passwd和shadow 文件的区别 -- 详细说明(跪谢原文作者)
以上内容来源于网络,仅作本人学习笔记使用,关于本书请参考APUE