Python 中訪問密碼資料庫
要訪問密碼資料庫,我們應該使用 pwd 模組。使用此模組,我們可以訪問使用者的帳戶和密碼資料庫。密碼資料庫條目類似於元組物件。
要使用 pwd 模組,我們應該使用以下方法匯入它。
import pwd
密碼資料庫的屬性如下:
| 索引 | 屬性及描述 |
|---|---|
| 0 | pw_name 使用者的登入名或使用者名稱 |
| 1 | pw_passwd 加密的密碼 |
| 2 | pw_uid 使用者的數字 ID |
| 3 | pw_gid 使用者所屬組的數字 ID |
| 4 | pw_gecos 使用者名稱和註釋欄位 |
| 5 | pw_dir 使用者的 home 目錄 |
| 6 | pw_shell 使用者的命令直譯器。 |
注意 - 通常,pw_passwd 儲存加密的密碼。但在新系統中,它們使用 shadow 密碼系統。因此,現在在 pw_passwd 中,我們只能找到“*”或“x”符號。
此模組的一些方法如下:
方法 pwd.getpwuid(uid)
此方法將返回給定數字使用者 ID 的密碼資料庫條目。
方法 pwd.getpwnam(name)
此方法將返回給定使用者名稱的密碼資料庫條目。
方法 pwd.getpwall()
此方法將返回所有密碼資料庫條目。
示例程式碼
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)輸出
$ 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 ……. ……. …….
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP