पासवर्ड डेटाबेस तक पहुंचने के लिए, हमें pwd मॉड्यूल का उपयोग करना चाहिए। इस मॉड्यूल का उपयोग करके, हम यूजर्स अकाउंट और पासवर्ड डेटाबेस तक पहुंच सकते हैं। पासवर्ड डेटाबेस एंट्रीज टपल-जैसे ऑब्जेक्ट की तरह हैं।
pwd मॉड्यूल का उपयोग करने के लिए, हमें इसे आयात करना चाहिए।
import pwd
पासवर्ड डेटाबेस के एट्रिब्यूट्स हैं:
| इंडेक्स | एट्रिब्यूट और विवरण |
|---|---|
| 0 | pw_name उपयोगकर्ता का लॉगिन नाम या यूजरनेम |
| 1 | pw_passwd एन्क्रिप्टेड पासवर्ड |
| 2 | pw_uid उपयोगकर्ता के लिए न्यूमेरिक आईडी |
| 3 | pw_gid उपयोगकर्ता के ग्रुप के लिए न्यूमेरिक आईडी |
| 4 | pw_gecos उपयोगकर्ता का नाम और कमेंट फील्ड |
| 5 | pw_dir उपयोगकर्ता का होम डायरेक्टरी |
| 6 | pw_shell उपयोगकर्ता का कमांड इंटरप्रेटर। |
नोट - आमतौर पर, pw_passwd एन्क्रिप्टेड पासवर्ड रखता है। लेकिन नए सिस्टम्स में, वे शैडो पासवर्ड सिस्टम का उपयोग करते हैं। इसलिए अब, pw_passwd में, हम केवल '*' या 'x' सिंबल पा सकते हैं।
इस मॉड्यूल के कुछ मेथड्स हैं:
मेथड pwd.getpwuid(uid)
यह मेथड दिए गए न्यूमेरिक यूजर आईडी के लिए पासवर्ड डेटाबेस एंट्री लौटाएगा।
मेथड pwd.getpwnam(name)
यह मेथड दिए गए यूजर नेम के लिए पासवर्ड डेटाबेस एंट्री लौटाएगा।
मेथड pwd.getpwall()
यह मेथड सभी पासवर्ड डेटाबेस एंट्री लौटाएगा।
उदाहरण कोड
import pwd
print("Root: " + str(pwd.getpwnam('root')) + '\n') # रूट के लिए पासवर्ड डिटेल
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 ………. ………. ……….