Your IP : 3.140.195.8
Metadata-Version: 2.0
Name: python-pam
Version: 1.8.4
Summary: Python PAM module using ctypes, py3/py2
Home-page: https://github.com/FirefighterBlu3/python-pam
Author: David Ford
Author-email: david@blue-labs.org
Maintainer: David Ford
Maintainer-email: david@blue-labs.org
License: License :: OSI Approved :: MIT License
Download-URL: https://github.com/FirefighterBlu3/python-pam
Platform: i686
Platform: x86_64
Classifier: Development Status :: 6 - Mature
Classifier: Environment :: Plugins
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Security
Classifier: Topic :: System :: Systems Administration :: Authentication/Directory
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
>>>
```