{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/12"},{"label":"Authentication/Directory","url":"https://skillfed.io/packages/category/system-systems-administration-authentication-directory"}],"enrichment":{"capability":"Pamela provides a Python interface to the Linux/Unix PAM (Pluggable Authentication Modules) system, enabling authentication, session management, and credential handling through ctypes bindings.","skillfed_tags":["authentication","system-integration","unix-linux"],"use_cases":["Authenticate users against the system PAM database in web applications or services that need OS-level user validation.","Manage user sessions in multi-user server environments like JupyterHub where credential handling must integrate with system authentication.","Implement Kerberos or other PAM-backed authentication mechanisms by resetting credentials after authentication.","Build system administration tools that need to verify user credentials programmatically without spawning external processes."],"what_it_does":"Pamela is a ctypes-based wrapper around the PAM (Pluggable Authentication Modules) system, allowing Python code to authenticate users, open sessions, and manage credentials on Linux and Unix systems. It consolidates functionality from two abandoned projects, adding Python 3 support and more comprehensive PAM call coverage, including session management and informative error handling via PamError exceptions.\n\nThe package is used primarily in server contexts where system-level authentication is needed\u2014notably in JupyterHub for user login. It has no external Python dependencies, making it lightweight to install, though it requires the PAM development libraries present on the host system.","worth_installing":"Yes, if you need PAM authentication in a Python application on Linux/Unix and accept dormant maintenance. The package is stable (no known vulnerabilities, low install friction, permissive license), but the 735-day gap since last commit means security or compatibility fixes are unlikely to arrive quickly. Suitable for production use in established deployments; less suitable if you anticipate needing active upstream support."},"id":"pamela","links":{"html":"https://skillfed.io/packages/pamela","md":"https://skillfed.io/packages/pamela.md","pypi":"https://pypi.org/project/pamela/"},"maintenance":{"status":"dormant"},"meta":{"latest_release":"2024-08-09","license_spdx":null,"license_treatment":"permissive","name":"pamela","python_support":"unspecified","summary":"PAM interface using ctypes"},"popularity":{"monthly_downloads":380725,"position":7102,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.2.0"}
