पासवर्ड डेटाबेस तक पहुँचने के लिए, हमें 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') #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 ……. ……. …….