pwd — 비밀번호 데이터베이스
pwd — 비밀번호 데이터베이스
이 모듈은 유닉스 사용자 계정과 비밀번호 데이터베이스에 접근할 수 있게 해 줘요. 모든 유닉스 버전에서 사용 가능해요.
가용성: 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가 발생해요.
참고 — 전통적인 유닉스에서
pw_passwd필드에는 보통 DES 기반 알고리즘으로 암호화된 비밀번호가 들어 있어요. 그러나 대부분의 현대 유닉스는 이른바 섀도 비밀번호(shadow password) 시스템을 사용해요. 그런 시스템에서pw_passwd필드는 보통 별표('*')나'x'문자만 담고, 실제 암호화된 비밀번호는 전 세계적으로 읽을 수 없는/etc/shadow파일에 저장돼요.pw_passwd필드에 유용한 값이 들어 있는지는 시스템에 따라 달라요.
출처: Python 표준 라이브러리
본문
pwd 모듈은 다음 항목들을 정의해요.
pwd.getpwuid(uid)
주어진 숫자형 사용자 ID에 해당하는 비밀번호 데이터베이스 항목을 돌려줘요.
pwd.getpwnam(name)
주어진 사용자 이름에 해당하는 비밀번호 데이터베이스 항목을 돌려줘요.
pwd.getpwall()
사용 가능한 모든 비밀번호 데이터베이스 항목을 임의의 순서로 담은 리스트를 돌려줘요.
더 알아보기
grp모듈 — 이와 비슷한 방식으로 그룹 데이터베이스에 접근하는 인터페이스.