pyspnego
Windows Negotiate Authentication Client and Server
Install
pyspnego on PyPI
pip
pip install pyspnegouv
uv add pyspnegopoetry
poetry add pyspnegoPackage facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — cryptography, sspilib |
| Maintenance | actively maintained — 164 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: pyspnego-0.12.1-py3-none-any.whl
Keywords: windows, spnego, negotiate, ntlm, kerberos, sspi, gssapi, auth
About pyspnego
from the package's own PyPI description — quoted content, verbatim
Python SPNEGO Library
Test workflow (image) codecov (image) PyPI version (image) License (image)
Library to handle SPNEGO (Negotiate, NTLM, Kerberos) and CredSSP authentication. Also includes a packet parser that can be used to decode raw NTLM/SPNEGO/Kerberos tokens into a human readable format.
Requirements
See How to Install for more details
- CPython 3.9+
- cryptography
- sspilib - Windows only
Optional Requirements
The following Python libraries can be installed to add extra features that do not come with the base package:
- python-gssapi and pykrb5 for...
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Implements SPNEGO/Negotiate, NTLM, Kerberos, and CredSSP authentication protocols for Python, with packet parsing for raw tokens and support for both client and server authentication modes.
Low friction installation with pure-wheel distribution. Actively maintained (164 days since last release) with recent commits. Two runtime dependencies: cryptography (widely used) and sspilib (Windows-only). Kerberos support requires optional system packages on Linux.
MIT license permits unrestricted commercial and private use with minimal obligations—only attribution required.
Usage
pip install pyspnego
from pyspnego.client import Client
client = Client(username='user', password='pass', hostname='server')
token = client.step()
CPython 3.9+ required; sspilib dependency is Windows-only; Kerberos on Linux requires system packages (libkrb5-dev or equivalent) and optional python-gssapi/pykrb5.
Verdict: Actively maintained authentication library with low install friction and no known vulnerabilities. Covers enterprise auth protocols (SPNEGO, NTLM, Kerberos, CredSSP) with both client and server support. MIT license is permissive. Primary consideration: platform-specific dependencies (Windows for SSPI, optional system packages for Kerberos on Linux) and Beta maturity status.
Needs verification
- Whether acceptor (server-side) authentication is production-ready given the caveat about NTLM acceptor testing coverage
- Real-world adoption rate beyond the top-1000 tier indicator
- Whether optional Kerberos extras (python-gssapi, pykrb5) are reliably maintained
Similar packages
permissive · top 1,000 on PyPI
trinopermissive · top 1,000 on PyPI
pyperclippermissive · top 1,000 on PyPI
ruamel.yamlpermissive · top 1,000 on PyPI
smart-openpermissive · top 1,000 on PyPI
ruamel.yaml.clibpermissive · top 1,000 on PyPI
google-auth-httplib2permissive · top 1,000 on PyPI
databricks-sql-connectorpermissive · top 1,000 on PyPI
cryptographypermissive · top 100 on PyPI
apache-airflow-providers-fabpermissive · top 1,000 on PyPI