keystoneauth1
Authentication Library for OpenStack Identity
What it is and what it does
keystoneauth1 is the authentication layer for OpenStack cloud clients. It abstracts the complexity of connecting to OpenStack Identity (Keystone) services by providing ready-made authentication plugins for common credential types—passwords, tokens, and federated identity—plus automatic API version discovery and a session wrapper around the requests library to manage credentials across multiple API calls.
Developers use keystoneauth1 when building tools that interact with OpenStack clouds: it handles credential exchange, token refresh, and endpoint discovery so that higher-level clients (like the OpenStack SDK or individual service clients) can focus on API logic rather than authentication plumbing. The package is maintained as part of the OpenStack project and is a foundational dependency for most OpenStack Python tooling.
Use it for:
- Authenticate to OpenStack clouds from Python scripts or applications using password, token, or federated credentials.
- Build custom OpenStack service clients that need automatic token refresh and endpoint discovery.
- Integrate OpenStack cloud access into CI/CD pipelines or infrastructure-as-code tools.
- Query OpenStack API version support and available endpoints before making service calls.
- Manage multi-cloud authentication when some clouds are OpenStack-based.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides authentication plugins, API discovery, and session management for OpenStack-based cloud services, supporting password, token, and federation-based authentication methods.
Yes, if you are building tools or applications that interact with OpenStack clouds. keystoneauth1 is the standard authentication library for the OpenStack ecosystem, actively maintained, well-integrated with the broader OpenStack Python tooling, and carries no known vulnerabilities. Install it as a dependency of higher-level OpenStack clients or directly if you are writing custom OpenStack integrations.
Install
keystoneauth1 on PyPI
pip
pip install keystoneauth1uv
uv add keystoneauth1poetry
poetry add keystoneauth1Installing keystoneauth1
Before you install
Active maintenance with a recent release (42 days ago). Low install friction with five runtime dependencies, all common libraries (iso8601, requests, stevedore, os-service-types, typing-extensions). Supports current Python versions (3.11–3.14).
License in practice
Apache-2.0 permissive license allows use in most commercial and open-source projects with minimal restrictions; attribution required.
Quickstart
pip install keystoneauth1
from keystoneauth1 import loading
loader = loading.get_plugin_loader('password')
auth = loader.load_from_options(
auth_url='https://keystone.example.com:5000/v3',
username='user', password='pass', project_name='project',
user_domain_name='Default', project_domain_name='Default'
)
session = loading.load_session_from_options(
conf={}, auth=auth, interface='public'
)
Requires Python 3.11 or later; OpenStack Keystone endpoint URL and valid credentials.
Verify before relying
- Whether the package's federation authentication methods cover all major OpenStack identity providers
- Performance characteristics under high-volume authentication scenarios
- Compatibility with non-standard or custom OpenStack deployments
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.11) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — iso8601, requests, stevedore, os-service-types, typing-extensions |
| Maintenance | actively maintained — 42 days since the last release |
| First released | |
| Downloads | 1,978,525/month — #3,389 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: keystoneauth1-5.15.0-py3-none-any.whl
Tags
More Internet packages
Botocore provides low-level, data-driven access…
permissive · top 100 on PyPI
aiobotocoreProvides an async client for AWS services using…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
filelockProvides a platform-independent file locking…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
googleapis-common-protosProvides common Protocol Buffer message…
permissive · top 100 on PyPI
keystoneOpenStack Keystone provides authentication,…
permissive · top 15,000 on PyPI
keystonemiddlewareProvides authentication and authorization…
permissive · top 15,000 on PyPI
pycadfPyCADF implements the Cloud Auditing Data…
permissive · top 15,000 on PyPI
python-keystoneclientPython client library for authenticating with…
permissive · top 5,000 on PyPI
cursiveCursive validates digital signatures using…
permissive · top 15,000 on PyPI
castellanCastellan provides a unified interface for…
permissive · top 15,000 on PyPI
os-brickManages discovery and removal of storage…
permissive · top 15,000 on PyPI
openstacksdkopenstacksdk is a client library for…
permissive · top 5,000 on PyPI
os-client-configCollects and manages OpenStack cloud client…
permissive · top 15,000 on PyPI
python-openstackclientA unified command-line client for OpenStack…
permissive · top 5,000 on PyPI