railiance-platform/manifests/factory-audit-senders.yaml
codex 80e053988f
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 4s
KeyCape factor custody acceptance / acceptance (push) Successful in 10s
fix(security): prevent ESO copying source annotations (CUST-WP-0073)
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e7fb-275d-7db0-b1df-39ed943427da
2026-09-28 15:56:50 +02:00

106 lines
2.8 KiB
YAML

# CCR-2026-0021/0022 approved 2026-09-11; no credentials or namespaces.
apiVersion: external-secrets.io/v1
kind: ClusterSecretStore
metadata:
name: openbao-approval-engine-audit
annotations:
railiance.io/credential-change: CCR-2026-0021
railiance.io/admission: approved
spec:
provider:
vault:
server: http://openbao.openbao.svc:8200
path: platform
version: v2
auth:
kubernetes:
mountPath: kubernetes
role: external-secrets-approval-engine-audit
serviceAccountRef:
name: external-secrets
namespace: external-secrets
conditions:
- namespaces:
- approval-engine
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: approval-engine-audit
namespace: approval-engine
annotations:
railiance.io/credential-change: CCR-2026-0021
railiance.io/admission: approved
spec:
refreshInterval: 5m
secretStoreRef:
kind: ClusterSecretStore
name: openbao-approval-engine-audit
target:
# Explicit target metadata prevents ESO copying source last-applied annotations.
template:
metadata:
annotations:
railiance.io/credential-change: CCR-2026-0021
railiance.io/admission: approved
name: approval-engine-audit
creationPolicy: Owner
deletionPolicy: Retain
data:
- secretKey: audit-token
remoteRef:
key: workloads/approval-engine/audit-sender
property: AUDIT_TOKEN
---
apiVersion: external-secrets.io/v1
kind: ClusterSecretStore
metadata:
name: openbao-informed-decision-audit
annotations:
railiance.io/credential-change: CCR-2026-0022
railiance.io/admission: approved
spec:
provider:
vault:
server: http://openbao.openbao.svc:8200
path: platform
version: v2
auth:
kubernetes:
mountPath: kubernetes
role: external-secrets-informed-decision-audit
serviceAccountRef:
name: external-secrets
namespace: external-secrets
conditions:
- namespaces:
- informed-decision
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: informed-decision-audit
namespace: informed-decision
annotations:
railiance.io/credential-change: CCR-2026-0022
railiance.io/admission: approved
spec:
refreshInterval: 5m
secretStoreRef:
kind: ClusterSecretStore
name: openbao-informed-decision-audit
target:
# Explicit target metadata prevents ESO copying source last-applied annotations.
template:
metadata:
annotations:
railiance.io/credential-change: CCR-2026-0022
railiance.io/admission: approved
name: informed-decision-audit
creationPolicy: Owner
deletionPolicy: Retain
data:
- secretKey: token
remoteRef:
key: workloads/informed-decision/audit-sender
property: AUDIT_TOKEN