python-barbicanclient
Client Library for OpenStack Barbican Key Management API
What it is and what it does
python-barbicanclient is the official Python client for OpenStack Barbican, a key management service that encrypts and securely stores sensitive data in the cloud. It provides both a Python library (barbicanclient module) and a command-line tool (barbican command) for programmatic and interactive access to Barbican's API. The library handles authentication via Keystone, allowing you to create secrets, store them encrypted on the Barbican server, retrieve them later, and manage access control lists—all without handling raw encryption yourself.
The package is built on OpenStack's standard authentication and utility stack (keystoneauth1, oslo.* libraries, cliff for CLI scaffolding) and is designed for operators and developers working within OpenStack environments. It supports Python 3.10, 3.11, and 3.12, and is actively maintained as part of the broader OpenStack ecosystem.
Use it for:
- Store API keys, database passwords, and certificates in Barbican from a Python application using Keystone authentication.
- Retrieve encrypted secrets programmatically at runtime without embedding credentials in code or configuration files.
- Manage secret access control and audit trails through the command-line tool in OpenStack deployment scripts.
- Integrate secret management into OpenStack-based infrastructure automation and orchestration workflows.
- Protect sensitive data in multi-tenant cloud environments where encryption and access isolation are required.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python client library and command-line tool for interacting with OpenStack Barbican's Key Management API to store, retrieve, and manage encrypted secrets.
Yes, if you are working with OpenStack Barbican. The package is actively maintained, has low install friction, carries a permissive license, and provides the standard client interface for Barbican's key management API. Install it only if you have a Barbican server running and need to manage encrypted secrets from Python; it is not useful outside an OpenStack environment.
Install
python-barbicanclient on PyPI
pip
pip install python-barbicanclientuv
uv add python-barbicanclientpoetry
poetry add python-barbicanclientInstalling python-barbicanclient
Before you install
Low install friction with a pure Python wheel distribution. Active maintenance status with a release within the last 36 days. Depends on well-established OpenStack libraries (keystoneauth1, cliff, oslo.* packages) and common utilities (pbr, requests).
License in practice
Licensed under Apache Software License (permissive), meaning you can use, modify, and distribute this package freely with minimal restrictions, provided you include the license notice.
Quickstart
pip install python-barbicanclient
from keystoneauth1 import session
from keystoneauth1.identity import v3
from barbicanclient import client
auth = v3.Password(auth_url='http://localhost:5000/v3',
username='user', password='pass',
project_name='demo', user_domain_name='Default',
project_domain_name='Default')
sess = session.Session(auth=auth)
barbican = client.Client(session=sess)
secret = barbican.secrets.create(name='test', payload='data')
secret.store()
Requires a running Barbican server configured with Keystone middleware and valid OpenStack credentials (auth_url, username, password, project details).
Verify before relying
- Whether the package supports Python 3.13+ beyond the stated 3.10, 3.11, 3.12 classifiers.
- Current state of the upstream Barbican project and whether this client is actively maintained alongside it.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 7 — pbr, requests, cliff, keystoneauth1, oslo.i18n, oslo.serialization, oslo.utils |
| Maintenance | actively maintained — 36 days since the last release |
| First released | |
| Downloads | 322,412/month — #7,611 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: python_barbicanclient-7.5.0-py3-none-any.whl
Tags
More Cryptography packages
Certifi provides Mozilla's curated collection…
copyleft · top 100 on PyPI
cryptographycryptography provides cryptographic recipes and…
permissive · top 100 on PyPI
rsaPure-Python RSA encryption, decryption,…
permissive · top 1,000 on PyPI
pyOpenSSLpyOpenSSL wraps OpenSSL's SSL/TLS functionality…
permissive · top 1,000 on PyPI
azure-identityProvides Microsoft Entra ID token-based…
unclear · top 1,000 on PyPI
PyNaClPyNaCl provides Python bindings to libsodium…
permissive · top 1,000 on PyPI
python-keystoneclientPython client library for authenticating with…
permissive · top 5,000 on PyPI
python-cinderclientPython bindings and command-line interface to…
permissive · top 15,000 on PyPI
castellanCastellan provides a unified interface for…
permissive · top 15,000 on PyPI
python-troveclientPython client library and command-line tool for…
permissive · top 15,000 on PyPI
python-swiftclientPython client library for OpenStack Object…
permissive · top 15,000 on PyPI
python-designateclientPython client library and command-line tool for…
permissive · top 15,000 on PyPI
python-heatclientPython client library and command-line tool for…
permissive · top 15,000 on PyPI
python-glanceclientPython client library and command-line tool for…
permissive · top 15,000 on PyPI
cerberus-python-clientA Python client library for reading and writing…
permissive · top 5,000 on PyPI
py-consulPython client library for HashiCorp Consul that…
permissive · top 5,000 on PyPI