21 lines
690 B
Markdown
21 lines
690 B
Markdown
# ADR-005 — Versioned application-level encryption for integration secrets
|
|
|
|
## Status
|
|
|
|
Accepted
|
|
|
|
## Context
|
|
|
|
Gitea tokens must be stored for background synchronization but must not appear in prompts, logs or ordinary backups.
|
|
|
|
## Decision
|
|
|
|
Encrypt integration secrets with an externally supplied versioned master key. Store encrypted values and safe metadata in PostgreSQL. Return only write-only/rotatable secret controls to the UI.
|
|
|
|
## Consequences
|
|
|
|
- database compromise alone does not reveal tokens;
|
|
- key backup and rotation become operator responsibilities;
|
|
- losing the key makes stored tokens unrecoverable;
|
|
- future external secret-provider adapters can implement the same port.
|