The factotum module implements a plan9port's auth(3) library.
Project description
py9pfactotum
py9pfactotum is Python's plan9port Factotum client. It also provides the following extras:
- Helper functions that mirror plan9port's auth(3) library
- A Keyring backend to connect to your running factotum server.
Usage
In the current (alpha) state of maturity, the implementation is incomplete. Currently enough is implemented to support the Keyring backend (i.e., to read passwords from the running server).
When using the FactotumClient directly, arguments are passed as keyword arguments, which are built into a key template internally:
from py9pfactotum import FactotumClient
c = FactotumClient()
c.getpass(server='mail.example.org', user='johndoe')
{ 'user': 'johndoe', 'passwd': 'insecure' }
As with the example above, the client provides high-level methods that supply the correct 'proto' and 'role' attributes to the key template. See factotum(4) for more information.
When using the auth(3) functions, the function signatures mirror their plan9port counterparts, except that structures are replaced with dictionaries.
from py9pfactotum import auth_getuserpasswd
c = auth_getuserpasswd(server='mail.example.org')
{ 'user': 'johndoe', 'passwd': 'insecure' }
Keyring
The Keyring user interface is transparent, but that library must be explicitly installed on the system (it is not a hard dependency of py9pfactotum). Because factotum is not able to persist passwords (or password deletions), attempts to use the Keyring to do so will throw an error.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for py9pfactotum-0.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b70dad7fb4f46bf850ac0b8bfd4abef9fe4259f326a001434aefd594e9dc6dc |
|
MD5 | 546a20bec16035c0b42b065f82cf1714 |
|
BLAKE2b-256 | 729caefe86ead06f75c4c5b75cbba365275daa7ab470ea266ea24bcc9356186b |