Để truy cập cơ sở dữ liệu mật khẩu, chúng ta nên sử dụng mô-đun pwd. Sử dụng mô-đun này, chúng tôi có thể truy cập tài khoản người dùng và cơ sở dữ liệu mật khẩu. Các mục nhập cơ sở dữ liệu mật khẩu giống như đối tượng tuple like.
Để sử dụng mô-đun pwd, chúng ta nên nhập nó bằng cách sử dụng.
import pwd
Các thuộc tính của cơ sở dữ liệu mật khẩu là -
Chỉ mục | Thuộc tính &Mô tả |
---|---|
0 | pw_name Tên đăng nhập hoặc tên người dùng của người dùng |
1 | pw_passwd Mật khẩu được mã hóa |
2 | pw_uid ID số cho người dùng |
3 | pw_gid ID số cho nhóm của người dùng |
4 | pw_gecos Tên của người dùng và trường nhận xét |
5 | pw_dir Thư mục chính của người dùng |
6 | pw_shell Trình thông dịch lệnh của người dùng. |
Lưu ý - Nói chung, pw_passwd lưu giữ các mật khẩu đã được mã hóa. Nhưng trong các hệ thống mới, họ sử dụng hệ thống mật khẩu bóng. Vì vậy, bây giờ, trong pw_passwd, chúng ta chỉ có thể tìm thấy ký hiệu ‘*’ hoặc ‘x’.
Một số phương pháp của mô-đun này là -
Phương thức pwd.getpwuid (uid)
Phương thức này sẽ trả về mục nhập cơ sở dữ liệu mật khẩu cho ID người dùng số đã cho.
Phương thức pwd.getpwnam (tên)
Phương thức này sẽ trả về mục nhập cơ sở dữ liệu mật khẩu cho tên người dùng đã cho.
Phương thức pwd.getpwall ()
Phương thức này sẽ trả về tất cả mục nhập cơ sở dữ liệu mật khẩu.
Mã mẫu
import pwd print("Root: " + str(pwd.getpwnam('root')) + '\n') #Password detail for root for entry in pwd.getpwall(): print("Name: " + entry[0] + "\t\tShell: " + entry.pw_shell)
Đầu ra
$ python3 example.py Root: pwd.struct_passwd(pw_name='root', pw_passwd='x', pw_uid=0, pw_gid=0, pw_gecos='root', pw_dir='/root', pw_shell='/bin/bash') Name: root Shell: /bin/bash Name: daemon Shell: /usr/sbin/nologin Name: bin Shell: /usr/sbin/nologin Name: sys Shell: /usr/sbin/nologin Name: sync Shell: /bin/sync Name: games Shell: /usr/sbin/nologin Name: man Shell: /usr/sbin/nologin ……. ……. …….