Establish railiance backup credentials in OpenBao (CCR-2026-0004).
Add workload KV lane for Nextcloud WebDAV token, URL, and age recovery escrow at platform/workloads/railiance/backup/offsite-lane. Apply read policy and OIDC role railiance-backup-workload-kv-read; wire forgejo-backup to load credentials from OpenBao when env is unset.
This commit is contained in:
parent
f428940da8
commit
0055e8f3f7
8 changed files with 430 additions and 1 deletions
|
|
@ -228,3 +228,44 @@ runbook: docs/workload-kv-access-lanes.md
|
|||
Until positive and negative caller verification are complete, ops-warden should
|
||||
keep the catalog entry in `applied-pending-verify`/non-active state with
|
||||
`resolvable=false`.
|
||||
|
||||
## Railiance offsite backup lane (`CCR-2026-0004`)
|
||||
|
||||
Workstation and platform backup tools (`railiance-backup`, `forgejo-backup`) upload
|
||||
age-encrypted artifacts to the Nextcloud file drop (Option A, 2026-07-09).
|
||||
|
||||
| Item | Value |
|
||||
| --- | --- |
|
||||
| CCR | `CCR-2026-0004-railiance-backup-offsite-lane` |
|
||||
| KV mount | `platform` |
|
||||
| OpenBao CLI path | `platform/workloads/railiance/backup/offsite-lane` |
|
||||
| Fields | `NC_WEBDAV_TOKEN`, `NC_WEBDAV_URL`, `AGE_PRIVATE_KEY` |
|
||||
| Read policy | `workload-kv-read-railiance-backup-offsite-lane` |
|
||||
| Policy file | `openbao/policies/workload-kv-read-railiance-backup-offsite-lane.hcl` |
|
||||
| OIDC auth mount | `netkingdom` |
|
||||
| OIDC role | `railiance-backup-workload-kv-read` |
|
||||
| Bound claim | `groups=net-kingdom-admins` (confirmed via live `platform-admin` role) |
|
||||
| ops-warden catalog id | `railiance-backup-offsite-lane` (draft until front door verified) |
|
||||
|
||||
Caller login:
|
||||
|
||||
```bash
|
||||
bao login -method=oidc -path=netkingdom role=railiance-backup-workload-kv-read
|
||||
```
|
||||
|
||||
Fetch upload token for a backup run (do not log the value):
|
||||
|
||||
```bash
|
||||
export RAILIANCE_BACKUP_NC_TOKEN=$(
|
||||
bao kv get -field=NC_WEBDAV_TOKEN platform/workloads/railiance/backup/offsite-lane
|
||||
)
|
||||
export RAILIANCE_BACKUP_NC_WEBDAV_URL=$(
|
||||
bao kv get -field=NC_WEBDAV_URL platform/workloads/railiance/backup/offsite-lane
|
||||
)
|
||||
```
|
||||
|
||||
Or let `lib/railiance-backup-common.sh` load from OpenBao after login when env is unset.
|
||||
|
||||
Recovery escrow (`AGE_PRIVATE_KEY`) is stored in the same path for disaster
|
||||
recovery; prefer the password-manager copy on restore drills per
|
||||
`railiance-cluster/docs/backup-restore.md`. Fetch only in attended sessions.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue