requests-negotiate-sspi
This package allows for Single-Sign On HTTP Negotiate authentication using the requests library on Windows.
Decision gist · record as of 2026-08-14
No. The package is abandoned (last release 2018-10-10, last commit 2023-03-31) and targets Python versions up to 3.5. While it has low install friction and permissive licensing, the lack of maintenance means no fixes for modern Python or requests versions, and no support for security issues. Use only if you are locked into legacy Python 2.7 or early Python 3 on Windows; otherwise, evaluate modern alternatives or native requests authentication methods.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Windows-only: requires pypiwin32 and Windows SSPI support; not usable on Linux or macOS.
- Low install friction, but maintenance is abandoned: last release was 2018-10-10 and last commit 2023-03-31.
- The package depends on pypiwin32 and requests, both common dependencies.
License · maintenance · safety
permissive license (permissive) — Licensed under Apache Software License (permissive), which allows commercial and private use with minimal restrictions.
last release 2018-10-10 (2865 days) · last repo commit 2023-03-31 · 141 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 111,377 downloads/mo, #12,419 on PyPI
Alternatives
Verify before relying
pip install requests-negotiate-sspi
import requests
from requests_negotiate_sspi import HttpNegotiateAuth
response = requests.get('http://example.com', auth=HttpNegotiateAuth())- Whether the package works reliably with modern Python versions (classifiers list only up to 3.5).
- Current compatibility with recent requests library versions.
- Whether Extended Protection for Authentication (Channel Binding) works with current Active Directory Federation Services deployments.
What it is and what it does
requests-negotiate-sspi extends the requests library to support HTTP Negotiate authentication on Windows, enabling single-sign-on via Kerberos or NTLM using the Windows SSPI interface. It integrates with Active Directory and supports Extended Protection for Authentication (Channel Binding Hash), making it suitable for enterprise environments that require this security feature.
The package is a thin wrapper around Windows authentication mechanisms, designed for developers building HTTP clients that need to authenticate against Windows-protected resources without prompting for credentials. It works by plugging into requests' auth handler system, allowing transparent SSO when the user is already authenticated to the Windows domain.
Use it for
- Authenticate HTTP requests to Active Directory Federation Services (ADFS) endpoints using domain credentials.
- Build Windows service applications that make HTTP calls to internal APIs without storing passwords.
- Access Kerberos-protected resources on corporate networks using implicit Windows authentication.
- Implement Channel Binding Hash authentication for services that require Extended Protection for Authentication.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No.
The package is abandoned (last release 2018-10-10, last commit 2023-03-31) and targets Python versions up to 3.5. While it has low install friction and permissive licensing, the lack of maintenance means no fixes for modern Python or requests versions, and no support for security issues. Use only if you are locked into legacy Python 2.7 or early Python 3 on Windows; otherwise, evaluate modern alternatives or native requests authentication methods.
Install
requests-negotiate-sspi on PyPI
Before you install
Low install friction, but maintenance is abandoned: last release was 2018-10-10 and last commit 2023-03-31. The package depends on pypiwin32 and requests, both common dependencies. No recent updates or bug fixes should be expected.
Windows-only: requires pypiwin32 and Windows SSPI support; not usable on Linux or macOS.
License in practice
Licensed under Apache Software License (permissive), which allows commercial and private use with minimal restrictions.
Quickstart
pip install requests-negotiate-sspi
import requests
from requests_negotiate_sspi import HttpNegotiateAuth
response = requests.get('http://example.com', auth=HttpNegotiateAuth())
Verify before relying
- Whether the package works reliably with modern Python versions (classifiers list only up to 3.5).
- Current compatibility with recent requests library versions.
- Whether Extended Protection for Authentication (Channel Binding) works with current Active Directory Federation Services deployments.
Package facts
| License | permissive license permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagespypiwin32requests |
| Maintenance | Abandoned 2,865 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 111,377 / month, #12,419 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaEnvironment :: Win32 (MS Windows)Intended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5 |
Evidence: requests_negotiate_sspi-0.5.2-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “windows negotiate authentication requests”
- requests-negotiate-sspiAdds HTTP Negotiate authentication (Kerberos/NTLM single-sign-on) to…
- requests-gssapiAdds GSSAPI/Kerberos authentication support to the requests HTTP…
- requests-credsspAdds CredSSP authentication support to the requests library, enabling…
Give your agent the search over MCP, or paste the wish link into any chat.
More WWW/HTTP packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.
Install it if you are building new projects or modernizing existing ones that rely on HTTP.
A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.
aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.
Install it if you need async HTTP client or server capabilities in asyncio-based applications.
See also msldap · requests-credssp · sspilib · requests-kerberos · requests-gssapi · pyspnego · ntlm-auth · aws-sso-util · pamela · pywinrm