docs(custody): record attended KeyCape first-provision authority proof
Assistant: codex Assistant-Model: gpt-5.6-luna Assistant-Session: 01a07ff8-19d0-7820-b4d0-1353833cb7fc
This commit is contained in:
parent
a0bbae842c
commit
a94d06dbcf
5 changed files with 204 additions and 0 deletions
|
|
@ -156,3 +156,25 @@ platform side; the window needs roughly 60–90 minutes with both owners present
|
|||
(KEY-WP-0009-T04) or to RPF-WP-0035-T02's service-JWT lane.
|
||||
- No approval for `approval:consume` on the operator client, now or by later
|
||||
scope edit. Adding it is a new lane decision.
|
||||
|
||||
|
||||
## Attended authority return — 2026-09-08
|
||||
|
||||
The metadata-only first-provision preflight is now observed on the exact six
|
||||
policy/role/data paths: create/update capabilities are present. The successful
|
||||
session self-revoked and its helper was removed. This settles the availability
|
||||
of the named operator authority, not the CCR approvals or the upstream issuer
|
||||
precondition. See
|
||||
[the receipt](../evidence/2026-09-08-keycape-approval-custody-preflight.json).
|
||||
|
||||
For a repeat after a role/policy change, use the existing contained WSL wrapper:
|
||||
|
||||
```bash
|
||||
python3 scripts/openbao-attended-exec.py -- /usr/bin/python3 \
|
||||
scripts/keycape-approval-custody-preflight.py --receipt /tmp/<new-private-receipt>.json
|
||||
```
|
||||
|
||||
Use an absolute path to the owner command if invoking from another directory.
|
||||
It emits no output or values; inspect its allowlisted capability metadata only
|
||||
after Warden has completed revocation and cleanup. No custody activation or
|
||||
approval is performed by this preflight.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,86 @@
|
|||
{
|
||||
"observed_at": "2026-09-08T20:36:47.042499+00:00",
|
||||
"requests": [
|
||||
"CCR-2026-0017",
|
||||
"CCR-2026-0018"
|
||||
],
|
||||
"operation": "capabilities-self only",
|
||||
"credential_data_read": false,
|
||||
"metadata_applied": false,
|
||||
"custody_activated": false,
|
||||
"upstream_issuer_proven": false,
|
||||
"status": "observed",
|
||||
"capabilities": {
|
||||
"sys/policies/acl/workload-kv-read-keycape-secrets-engine-approval": [
|
||||
"create",
|
||||
"delete",
|
||||
"list",
|
||||
"read",
|
||||
"sudo",
|
||||
"update"
|
||||
],
|
||||
"sys/policies/acl/workload-kv-read-keycape-approval-engine-operator": [
|
||||
"create",
|
||||
"delete",
|
||||
"list",
|
||||
"read",
|
||||
"sudo",
|
||||
"update"
|
||||
],
|
||||
"auth/kubernetes/role/external-secrets-keycape-secrets-engine-approval": [
|
||||
"create",
|
||||
"delete",
|
||||
"list",
|
||||
"read",
|
||||
"sudo",
|
||||
"update"
|
||||
],
|
||||
"auth/kubernetes/role/external-secrets-keycape-approval-engine-operator": [
|
||||
"create",
|
||||
"delete",
|
||||
"list",
|
||||
"read",
|
||||
"sudo",
|
||||
"update"
|
||||
],
|
||||
"platform/data/workloads/secrets-engine/approval-client": [
|
||||
"create",
|
||||
"delete",
|
||||
"list",
|
||||
"read",
|
||||
"update"
|
||||
],
|
||||
"platform/data/workloads/approval-engine/operator-client": [
|
||||
"create",
|
||||
"delete",
|
||||
"list",
|
||||
"read",
|
||||
"update"
|
||||
]
|
||||
},
|
||||
"required_metadata_capabilities_present": true,
|
||||
"paths_verified": 6,
|
||||
"login_lane": "openbao-platform-admin-login",
|
||||
"launcher": "scripts/openbao-attended-exec.py",
|
||||
"command": "scripts/keycape-approval-custody-preflight.py --receipt <new-private-file>",
|
||||
"wrapper_exit": 0,
|
||||
"session_self_revoked": true,
|
||||
"helper_root_removed": true,
|
||||
"attempt_notes": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"result": "direct launcher unavailable; no child handoff; revocation unconfirmed",
|
||||
"credential_data_read": false
|
||||
},
|
||||
{
|
||||
"attempt": 2,
|
||||
"result": "owner wrapper login/self-revocation succeeded; capability command rejected unsupported multiple-path syntax",
|
||||
"credential_data_read": false
|
||||
},
|
||||
{
|
||||
"attempt": 3,
|
||||
"result": "six single-path capability queries succeeded; session self-revoked and helper removed",
|
||||
"credential_data_read": false
|
||||
}
|
||||
]
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue