Secret version history and rollback
Changing a secret should never mean losing the value it replaced. Keel records each change as a numbered version and lets authorised people restore an earlier one.
Why version history matters
A bad value in production is one of the faster ways to cause an outage. When a credential is changed by mistake, or a new key turns out to be wrong, the quickest fix is to put the previous value back. Without history that value is gone, or lives in someone's terminal scrollback.
What is recorded
- Each create, update, and restore produces a new version number.
- Versions store the encrypted value, never plain text.
- Writes are guarded so two people changing the same secret at once cannot silently overwrite each other.
- Viewing an old value is recorded in the audit log.
Restoring a value
Restoring version 3 does not rewind history. It creates a new latest version containing the value from version 3, and every earlier version stays in place. The audit log records the restore and which version it came from.
A note on secrets that leaked
History helps you recover from mistakes. It does not make a leaked credential safe. If a secret has been exposed, change it at the provider that issued it, then update Keel. See how to keep secrets out of Git repositories for the full cleanup order.
Frequently asked questions
- Can I see the old values?
- Yes, if your role allows reading secrets in that environment. Viewing an earlier version is recorded in the audit log.
- Does restoring delete the newer versions?
- No. A restore adds a new version with the older value. Nothing is removed.
- What about secrets created before versioning existed?
- Their current value becomes version 1. No earlier history is invented.
Keep reading
- How to store API keys securely in a web applicationWhere API keys should and should not live in a web application: server-side storage, browser limits, build-time pitfalls, and what to do when a key is exposed.
- Common secrets management mistakes in software developmentThe mistakes that most often lead to leaked credentials, from committed .env files to shared production keys, and what to do instead.
- Audit loggingAn append-only record of secret changes, reveals, exports, and access decisions.
- Secrets managementOne encrypted place for API keys, tokens, and credentials, organised by project and environment.