Ying Chen 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前
..
LICENSE 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前
MANIFEST.in 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前
PKG-INFO 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前
README.md 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前
README.rst 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前
pam.py 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前
setup.cfg 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前
setup.py 884b58b065 HUE-8682 [backend] Change PAM lib to python-pam-1.8.4 6 年之前

README.md

python-pam

Python pam module supporting py3 (and py2)

Commandline example:

[david@Scott python-pam]$ python pam.py
Username: david
Password: 
0 Success

[david@Scott python-pam]$ python2 pam.py
Username: david
Password: 
0 Success

Inline examples:

[david@Scott python-pam]$ python
Python 3.4.1 (default, May 19 2014, 17:23:49)
[GCC 4.9.0 20140507 (prerelease)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pam
>>> p = pam.pam()
>>> p.authenticate('david', 'correctpassword')
True
>>> p.authenticate('david', 'badpassword')
False
>>> p.authenticate('david', 'correctpassword', service='login')
True
>>> p.authenticate('david', 'correctpassword', service='unknownservice')
False
>>> p.authenticate('david', 'correctpassword', service='login', resetcreds=True)
True
>>> p.authenticate('david', 'correctpassword', encoding='latin-1')
True
>>> print('{} {}'.format(p.code, p.reason))
0 Success
>>> p.authenticate('david', 'badpassword')
False
>>> print('{} {}'.format(p.code, p.reason))
7 Authentication failure
>>>