pwd — 비밀번호 데이터베이스
pwd — 비밀번호 데이터베이스
pwd 모듈은 Unix 사용자 계정 및 비밀번호 데이터베이스에 대한 접근을 제공해요. 모든 Unix 버전에서 사용할 수 있어요. 가용성: Unix, WASI 아님, iOS 아님.
본문
비밀번호 데이터베이스 항목은 passwd 구조(<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 파생 알고리즘으로 암호화된 비밀번호를 담아요. 그러나 대부분의 현대 Unix 는 소위 섀도 비밀번호(shadow password) 시스템을 사용해요. 그런 Unix 에서 pw_passwd 필드는 암호화된 비밀번호가 세계에서 읽을 수 없는 /etc/shadow 파일에 저장되는 곳에 별표('*')나 문자 'x' 만 담아요. pw_passwd 필드가 유용한 내용을 담는지는 시스템에 따라 달라요.
모듈은 다음 항목들을 정의해요.
- pwd.getpwuid(uid) — 주어진 숫자 사용자 ID 에 대한 비밀번호 데이터베이스 항목을 반환해요.
- pwd.getpwnam(name) — 주어진 사용자 이름에 대한 비밀번호 데이터베이스 항목을 반환해요.
- pwd.getpwall() — 모든 사용 가능한 비밀번호 데이터베이스 항목의 목록을 임의의 순서로 반환해요.
비슷한 그룹 데이터베이스 인터페이스는 grp 모듈을 참고하세요.