AWS Secrets Manager — av-production

Alle Secrets liegen in av-production (425924867359) / eu-central-1. Default-Encryption per AWS-managed Key (aws/secretsmanager).

Regel: Vor neuem Secret hier nachsehen ob es das schon gibt. Naming-Konvention strikt einhalten (siehe unten).

Inventar (Stand 2026-05-15)

Secret-NameZweckVerwendet vonNotiz
cloudflare/api-tokenCloudflare API Token (Account:Tunnel:Edit + Zone:DNS:Edit fuer agenticventures.de)Alle Tunnel-Setup-Skripte (Tunnel-Create + DNS-Record)Token-Prefix cfut_...
mcp-vf-hosted/cloudflared-tokenCF Tunnel Connector Token fuer mcp-vf-hostedFargate-Sidecar cloudflaredTunnel-Migration 2026-05-11
mcp-whatsapp-hosted/cloudflared-tokenCF Tunnel Connector Token fuer mcp-whatsappFargate-Sidecar cloudflaredTunnel-ID a3af8b46-0236-4dd4-93da-e83f66c56f1b
mcp-calcom-hosted/cloudflared-tokenCF Tunnel Connector Token fuer mcp-calcomFargate-Sidecar cloudflaredTunnel-ID 89246607-54de-493b-8556-15a33aeb1415
open-webui-vf/cloudflared-tokenCF Tunnel Connector Token fuer Open WebUI VFFargate-Sidecar cloudflared
stirling-pdf-vf/cloudflared-tokenCF Tunnel Connector Token fuer Stirling-PDFHetzner-VM cloudflared (nicht Fargate)Pattern interne-tools-hetzner-cf-tunnel
presenton-vf/cloudflared-tokenCF Tunnel Connector Token fuer PresentonFargate-Sidecar cloudflaredwird in Unit 5 gesetzt
inference-service-prod/cloudflared-tunnel-tokenCF Tunnel Connector Token fuer Icking-Inference-ServiceFargate-Sidecar cloudflaredAnlage 2026-05-15, Tunnel-Name inference-prod, Tunnel-ID 560d3307-9e34-4878-bf1a-117a12f9cbd1, Domain leistungen.agenticventures.de

Weitere Secret-Klassen (API-Keys fuer eigene MCPs, Bearer-Tokens, RDS-Credentials etc.) entstehen pro Service durch CDK/Terraform — die werden hier nicht inventarisiert sondern leben im jeweiligen Stack.

Naming-Konvention

<service-slug>/<credential-typ>
SlugTypBeispiel
<service>-<kunde> oder nur <service>cloudflared-tokenmcp-whatsapp-hosted/cloudflared-token
api-key (Bearer/Two-Key-Rotation als JSON)inference-service-prod/api-key
db-credentials (RDS Master)inference-service-prod/db-credentials
Cross-cutting<provider>/<token-typ>cloudflare/api-token
Per-Project Provider-Token<provider>/<project>/<purpose>hetzner/<project>/api-token-operations (Beispiel-Schema)

Slash als Separator. Kein Punkt, kein Underscore (AWS erlaubt es, aber unser Standard ist Slash fuer Pfad-Optik in der Console).

Konventionen

  • AWS-managed KMS Key. Eigene CMKs nur wenn ein konkreter Grund vorliegt (Compliance-Anforderung, KMS-Key-Sharing zwischen Accounts).
  • Description Pflicht. Mindestens: was ist drin + welcher Service nutzt es + ggf. Tunnel-ID/Provider-Hinweis.
  • AWSCURRENT / AWSPREVIOUS Two-Stage ist Default — Rotation via update-secret-version-stage. Bei API-Keys mit Two-Key-Rotation steckt die Logik im JSON-Body (api_key_v1 + api_key_v2), nicht in Stages.
  • Zugriff via IAM-Task-Role. Fargate-Tasks bekommen secretsmanager:GetSecretValue nur auf den ARN-Prefix des eigenen Service.
  • Befuellung manuell. Terraform/CDK legt das Secret-Object an (leer/Placeholder), der echte Wert kommt via aws secretsmanager put-secret-value rein — Terraform-State soll nie den realen Wert sehen.

Cost

0.40 USD/Secret/Monat + Per-API-Call (vernachlaessigbar). Aktuell ~8 Secrets → ~3.20 USD/Monat.