Introduction
plone.keyring contains a Zope utility that facilitates handling of secrets in an application. Secrets are very important in modern applications, which is why a shared tool to manage them is useful.
plone.keyring contains two basic components:
a keyring: a data structures which contains one or more secrets.
a key manager: a utility which contains the available keyrings and provides some convenience methods to manage them
Keyrings
The keyring is the workhorse: it contains a set of secrets for a specific purpose. A ring has room for a fixed number of secrets which is set at creation time. The most recently added secret is considered to be the current secret and the one that should be used. Older secrets in the ring can be used to keep data generated with older secrets valid for a period of time.
Key manager
The key manager is a container for the available keyrings. It always contains a default system keyring which is used when no other ring is explicitly requested.
Installation
You’ll need to register a KeyManager as a persistent utility. On Zope2 with GenericSetup, this can be done by loading the included profile.
Changelog
5.0.0 (2026-05-16)
Internal:
Update configuration files. [plone devs]
5.0.0a1 (2025-11-19)
Breaking changes:
Replace pkg_resources namespace with PEP 420 native namespace. Support only Plone 6.2 and Python 3.10+. (#3928)
4.0.3 (2025-09-10)
Internal:
Move distribution to src layout [gforcada] (#4217)
4.0.2 (2024-11-30)
Tests
Fix removed unittest.makeSuite in python 3.13. [petschki] (#33)
4.0.1 (2024-01-22)
Internal:
Update configuration files. [plone devs] (6e36bcc4, 7723aeaf)
4.0.0 (2023-04-26)
Breaking changes:
Drop python 2.7 support. [gforcada] (#1)
Internal:
Update configuration files. [plone devs] (2ed8f544)
3.2.1 (2023-03-21)
Bug fixes:
Use ZODB as dependency rather than the deprecated ZODB3. [gforcada] (#1)
3.2.0 (2023-02-08)
Bug fixes:
Update to Zope4 only including troove classifiers. [jensens] (#7)
3.1.3 (2020-09-07)
Bug fixes:
Fixed deprecation warning for zope.component.interfaces.IComponentRegistry. [maurits] (#3130)
3.1.2 (2020-04-20)
Bug fixes:
Minor packaging updates. (#1)
3.1.1 (2019-02-13)
Bug fixes:
Avoid deprecation warnings. [gforcada] (#5)
Initialize towncrier. [gforcada] (#2548)
3.1.0 (2018-06-20)
Bug fixes:
Fix the tests on Python 3 [ale-rt]
Python 2.6 is no longer supported, use a 3.0.x release if needed [gforcada]
3.0.2 (2017-08-27)
Fixes:
Use zope.interface decorator. [gforcada]
3.0.1 (2015-05-11)
Minor cleanup: whitespace, git ignores. [gforcada, rnix]
3.0.0 (2014-04-13)
use more default keyrings and be able to select random key from ring [vangheem]
2.0.1 (2012-12-15)
Use system random when available. This is part of the fix for https://plone.org/products/plone/security/advisories/20121106/24 [davisagli]
Add MANIFEST.in. [WouterVH]
2.0 - 2010-07-18
Update package information. [hannosch]
2.0b1 - 2010-06-13
Added a meta.zcml to load the GenericSetup ZCML if installed. [hannosch]
Update license to BSD following board decision. Cfr. http://lists.plone.org/pipermail/membership/2009-August/001038.html [elro]
2.0a1 - 2009-11-13
Updated to use zope.container instead of zope.app.container. [hannosch]
Specify package dependencies. [hannosch]
1.2 - 2008-05-08
Fix registration of the GenericSetup profile. [witsch]
1.1 - 2008-05-02
Add an optional GenericSetup profile to register the KeyManager as utility. Required for plone.keyring on Plone 3.0. [mj]
1.0 - 2008-04-21
No changes. [wichert]
1.0b1 - 2008-03-07
Tweak the tests to better test the API. [witsch]
1.0a1 - 2008-01-22
Initial release. [wichert]
Release files for plone.keyring 5.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| plone_keyring-5.0.0.tar.gz | 12.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| plone_keyring-5.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.6 kB
Release files / plone_keyring-5.0.0.tar.gz
| Download URL | plone_keyring-5.0.0.tar.gz |
|---|---|
| Size | 12.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
44660f04d58ddb461e0c84cf553fc3843e370dbf40e51acd175691d32c6b87a1
|
|
BLAKE2b-256 checksum How to use checksums |
1eb01f3941ddc292bc50fd10fc6d1cdc605008a3c00ae831bee078c665a51bf4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|
Release files / plone_keyring-5.0.0-py3-none-any.whl
| Download URL | plone_keyring-5.0.0-py3-none-any.whl |
|---|---|
| Size | 10.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b957d103b039732c4bbe1c93d49ff2072c1a5c6a7aeed6a7aa27c8696a61e538
|
|
BLAKE2b-256 checksum How to use checksums |
ecad94bd2d63d91633976cd0a66fb70cabbce5d46b483dd888d0f300959f0418
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|