GH GambleHub

Management von Geheimnissen

Verwaltung von Geheimnissen

1) Warum und was wir als „Geheimnis“ betrachten

Secret - jedes Material, dessen Offenlegung zu einer Kompromittierung des Systems oder der Daten führt: Passwörter, API-Token, OAuth/JWT private Keys, SSH-Schlüssel, Zertifikate, Verschlüsselungsschlüssel (KEK/DEK), Webhook-Signaturschlüssel, DSN-Datenbanken/Caches, Lieferantenschlüssel (Payments, Mail/SMS-Anbieter), Cookie-Salze/pepper, Bot/Chat-Token, Lizenzen.
Die Geheimnisse leben im Kode, konfige, die Umgebung, die Containergestalten, CI/CD, Terraform/Ansible, die Hohlwege/Dumpe - die Aufgabe des Managements der Geheimnisse: die Berücksichtigung → die Aufbewahrung → die Zustellung → die Nutzung → die Rotation → die Rezension → das Audit → die Verwertung.

2) Prinzipien der Architektur

Zentralisierung. Eine vertrauenswürdige Schicht (Vault/Cloud Secret Manager/KMS) zum Speichern, Ausgeben und Prüfen.
Kleinste Privilegien (PoLP). Zugriff nur auf die gewünschten Dienste/Rollen, für einen Mindestzeitraum.
Ein kurzes Leben. Dynamische/temporäre Geheimnisse mit TTL/lease werden bevorzugt.
Crypto-agility. Möglichkeit, Algorithmen/Schlüssellängen ohne Ausfallzeiten zu ändern.
Trennen Sie Geheimnisse von Code/Bildern. Keine Passwörter in Repositories, keine Docker-Images.
Beobachtbarkeit und Audit. Jeder Vorgang zum Ausgeben/Lesen von Geheimnissen wird protokolliert und benachrichtigt.
Automatische Rotation. Rotation ist ein Prozess in der Pipeline, keine manuelle Aktion.

3) Typische Lösungen und Komponentenrollen

KMS/HSM. Das wurzelständige Vertrauen, der Operation der Chiffrierung/Umschlages der Schlüssel (envelope).
Secret Manager/Vault. Secret Version Storage, ACL, Audit, Dynamic Secrets (DB, Cloud-IAM, PKI), Rotationsmuster.
PKI/CA. Ausstellung von kurzlebigen mTLS/SSH/JWT Signaturzertifikaten.
Agent/sidecar. Rantime-Lieferung von Geheimnissen (tmpfs-Dateien, In-Memory k/v, Hot-Reload).
CSI-Treiber/Operatoren. Integration mit Kubernetes (Secret Store CSI Driver, cert-manager).
Verschlüsselungsschicht in Git. SOPS/age, git-crypt (für Infrastrukturcode).

4) Klassifizierung und Politik

Teilen Sie Geheimnisse nach Kritikalität (P0/P1/P2) und Schadensvolumen (tenant-scoped, environment-scoped, org-wide). Geben Sie für jede Klasse Folgendes ein:
  • TTL/Lease und Rotationsfrequenz;
  • Ausgabemethode (Dynamik vs Statik), Format, Medium;
  • Zugriffspolitik (wer/wo/wann/warum), Anforderungen an mTLS und gegenseitige Authentifizierung;
  • Audit (was wir protokollieren, wie viel wir speichern, wer Revuit ist);
  • break-glass Verfahren und Rückruf.

5) Lebenszyklus des Geheimnisses

1. Erstellung: über die Secret Manager API mit Metadaten (Eigentümer, Tags, Umfang).
2. Speicherung: in verschlüsselter Form (envelope: DEK wrapped by KEK from KMS/HSM).
3. Lieferung: auf Antrag eines autorisierten Subjekts (OIDC/JWT, SPIFFE/SVID, mTLS).
4. Verwendung: ausschließlich im Speicher/in tmpfs; Verbot von Protokollierung/Dumps.
5. Rotation: durch TTL oder Ereignis (Kompromittierung); Unterstützung für parallele Versionen (N-1).
6. Rückruf/Sperrung: Sofortiger Ablauf der Lease, Disable des Accounts/Schlüssels im Zielsystem.
7. Entsorgung: Vernichtung von Versionen/Material, klare Audit-Kette.

6) Dynamische Geheimnisse (standardmäßig empfohlen)

Die Idee: Das Geheimnis wird kurzfristig ausgegeben und läuft automatisch ab. Beispiele:
  • DB-Anmeldeinformationen (Postgres/MySQL) mit TTL 15-60 min.
  • Temporäre Cloud-Schlüssel (AWS/GCP/Azure) nach Service-Rolle.
  • SSH-Zertifikate (Laufzeit 5-30 min), X.509-Zertifikate (Stunde/Tag).
  • Temporäre JWTs zum Signieren von Anfragen, Session-Tickets von Brokern.
  • Vorteile: minimaler Blast-Radius, vereinfachter Rückruf (nichts wird auf der Welt „bleiben“).

7) Lieferung von Geheimnissen an die Rantime

Kubernetes:
  • Secret Store CSI Driver → das Einhängen von Geheimnissen von einem externen Manager in einen Pod als Dateien (tmpfs).
  • Vermeiden Sie Kubernetes Secret als einzige Quelle (base64 ≠ Verschlüsselung); Aktivieren Sie bei Bedarf den KMS-Anbieter für etcd.
  • Sidecar-Agent (Vault Agent/Secrets Store) mit Auto-Reneval-Lease und Hot-Reload.
  • VM/Bare-metal: Systemagent + mTLS zum Vault/Secret Manager, Cache im Speicher, minimale TCB.
  • Serverless: Integration der Cloud mit transparenter Substitution von Geheimnissen als Umgebungsvariablen/Dateien, aber Vermeidung von langlebigen envvars - vorzugsweise Dateien/im Speicher.

Beispiel (Kubernetes + CSI, konzeptionell)

yaml apiVersion: v1 kind: Pod metadata: { name: app }
spec:
serviceAccountName: app-sa # is associated with a role in Secret Manager volumes:
- name: secrets csi:
driver: secrets-store. csi. k8s. io readOnly: true volumeAttributes:
secretProviderClass: app-spc containers:
- name: app volumeMounts:
- mountPath: /run/secrets name: secrets readOnly: true

8) CI/CD und IaC Integrationen

CI: Worker erhalten kurzlebige Token von OIDC (Workload Identity). Verbot von „maskierten“ Geheimnissen, die in die Protokolle fallen; Schritt „Scan von Lecks“ (trufflehog/gitleaks).
CD: deploy nimmt Geheimnisse zum Zeitpunkt des Layouts, schreibt sie nicht in Artefakte.
IaC: Terraform speichert Variablen im Secret Manager; Zustand (state) ist verschlüsselt und zugriffsbeschränkt.
SOPS/Alter: für Repos - verschlüsselte Manifeste speichern, Schlüssel - unter KMS.

Beispiel (SOPS-Fragment)

yaml apiVersion: v1 kind: Secret metadata: { name: app }
data:
PASSWORD: ENC[AES256_GCM,data:...,sops:...]
sops:
kms:
- arn: arn:aws:kms:...
encrypted_regex: '^(data    stringData)$'
version: '3. 8. 0'

9) Zugriffsrichtlinien und Authentifizierung von Arbeitslasten

Workload identity: SPIFFE/SPIRE, Kubernetes SA→OIDC→IAM-роль, mTLS.
Temporäre Token: kurze TTL, schmaler Umfang.
ABAC/RBAC im Secret Manager: „wer das Geheimnis von X in der Umgebung von Y lesen kann“ ist getrennt von „wer erstellen/rotieren kann“.
Multi-Leasing: separate Namespaces/Schlüsselringe pro Mieter; Einzelrichtlinien und Berichterstattung.

10) Rotation, Versionen und Kompatibilität

Trennen Sie die ID des Geheimnisses und seiner Version ('secret/app/db # v17').
Unterstützen Sie zwei aktive Versionen (N und N-1) für nonstop Rotation.
Rotation ist ereignisbezogen: bei Kündigung, Kompromittierung, Anbieterwechsel, Algorithmenmigration.
Automatisieren: cron/Rotations-Backend im Vault/Secret Manager + Webhook-Trigger für App-Relaunch/Reneval.

Mini-Rezept „zwei Schlüssel“ Rotation Webhook

text
T0: we publish two secrets in the provider: current, next
T1: the application starts accepting signatures by both current and next
T2: external system switches signature to next
T3: we do next -> current, re-release new next

11) Speicherung außerhalb des Rantimes: Backups und Artefakte

Niemals in Artefakte (Bilder, Logarchive, Dumps) geraten.
Secret Manager Backups - Verschlüsselung, Speicherschlüssel außerhalb der gleichen Kontur (Trennung von Pflichten).
Tags und DLP-Scans: Entdecken Sie Geheimnisse in S3/Blob/GCS, Git, CI-Artefakten.

12) Beobachtbarkeit, Audit und SLO

Metriken: Anzahl der Ausgaben/Geheimnis/Service, Anteil der abgelaufenen Lease, durchschnittliche TTL, Rotationszeit, Konvergenzzeit (Sekunden/Minuten vor der „Annahme“ einer neuen Version).
Audit-Protokolle: wer/was/wann/woher/warum; Speicherung separat, auch verschlüsselt.
SLO: 99% der Ausgaben <200 ms; 0 Lecks in den Protokollen; 100% der Geheimnisse besitzen/TTL/Tags; 100% kritische Geheimnisse - dynamisch oder Rotation ≤ 30 Tage.
Alerts: Secret erlischt <7 Tage (für Statiker), Anstieg der Authentifizierungsfehler zum Tresor, keine Geheimlesungen> N Tage (tot), unerwartete Geo-/ASN-Quellen.

13) Häufige Fehler und wie man sie vermeidet

Geheimnisse in Git/Bildern. Verwenden Sie SOPS/age und Scanner; Politik verbieten „nackte“ Zeilen.
Envvars als Langzeitträger. Bevorzugen Sie tmpfs/in-memory-Dateien; Reinigen Sie die Umgebung mit Gabeln/Dumps.
Die gleichen Geheimnisse für dev/stage/prod. Nach Umgebung aufteilen.
Langlebige statische Passwörter. Wechseln Sie zu Dynamic/Short Living.
Ein einziger Generalschlüssel „für alles“. Teilen Sie nach Mietern/Projekten/Dienstleistungen.
Kein Hot-Reload. Die Anwendung erfordert einen Neustart → das Fenster der Sicherheitsanfälligkeit während der Rotation.

14) Beispiele für Integrationen (schematisch)

Vault dynamischer Zugriff auf Postgres

hcl
Vault: role -> issues the user to the database with TTL 30m and privileges only to the app path "database/creds/app-role" {
capabilities = ["read"]
}
Application requests/database/creds/app-role -> receives (user, pass, ttl)

JWT-Signatur von Anforderungen (kurze Laufzeit)

Der private Schlüssel wird im Secret Manager gespeichert; Der Dienst fordert ein kurzlebiges Signing-Token an und der lokale Agent signiert Payload (der Schlüssel wird nicht als String an die Anwendung übergeben).

SSH-Zertifikate für Administratoren

Ausgabe von SSH-cert für 10 Minuten über SSO (OIDC), ohne Verteilung persistenter Schlüssel.

15) Sicherheit an den Rändern

Logs/Traces/Metriken: Desinfektionsmittel, Filter für bekannte Schlüssel/Muster; „geheime“ Felder - Maskierung im APM.
Dumps/Crash-Berichte: Standardmäßig ausschneiden; bei Bedarf verschlüsseln und reinigen.
Client-Anwendungen/Mobile: Offline-Geheimnisse minimieren, Plattformspeicher (Keychain/Keystore) verwenden, an das Gerät binden, TLS-Pinning mit Notausrollen.

16) Compliance

PCI DSS: Verbot der Speicherung von PAN/Geheimnissen ohne Verschlüsselung; strenge Zugangskontrolle und Rotation.
ISO 27001/SOC 2: Anforderungen an Asset Management, Logging, Zugriffskontrolle, Konfigurationsänderungen.
DSGVO/lokale Regulierungsbehörden: Minimierung, Zugriff bei Bedarf, Audit.

17) Prozesse und Runbook

Inbetriebnahme

1. Inventarisierung von Secrets (Repositories, CIs, Images, Runtime, Backups).
2. Klassifizierung und Tags (Owner, Environment, Tenant, Rotation-Policy).
3. Speicherauswahl (Vault/Cloud SM) + Integration mit KMS/HSM.
4. Einrichten der Ausgabe durch Workload Identity (OIDC/SPIRE).
5. Aktivieren Sie dynamische Geheimnisse für DB/Cloud/PKI.
6. Auto-Rotation und Hot-Reload; Alerts auf Auslöschung.
7. Aufbau von Leck-Scannern und Data Catalog/DS.

Notfallszenarien

Verdacht auf Leck: Zugangsstoppliste, sofortige Rotation, Widerruf von Zertifikaten/Schlüsseln, Neuausstellung von Token, Aktivierung eines erweiterten Audits, RCA.
Secret Manager nicht verfügbar: lokaler Cache im Speicher mit kleiner TTL, Funktionsdegradation, Einschränkung neuer Verbindungen, manuelle Break-Glass-Schritte.
Root-Key-Kompromittierung: Key-Hierarchie-Regeneration, Rewrap aller DEKs, Überprüfung aller Ausgaben über das Risikofenster hinaus.

18) Checklisten

Vor dem Verkauf

  • Geheimnisse aus Code/Images entfernt; Leckage-Scanner sind enthalten.
  • Für kritische Geheimnisse sind dynamische Mechanismen aktiviert.
  • Lieferung über sidecar/CSI/tmpfs mit Hot-Reload, ohne langlebige Envvars.
  • IAM/ABAC-Richtlinien konfiguriert, Bindung an Workload-Identität.
  • Auto-Rotation und Doppelversionen (N, N-1) für Kompatibilität.
  • Metriken/Warnungen/Audit enthalten; Die Degradationstests sind bestanden.

Betrieb

  • Monatsbericht: Eigentümer, TTL, abgelaufene Geheimnisse, ungenutzt.
  • Periodische Rotationen und Pentests von Kriechwegen (Protokolle, Dumps, Artefakte).
  • Crypto-Agility-Plan und Notfall-CA/root-Ersatz.

19) FAQ

F: Ist Secret Manager ohne KMS ausreichend?
A: Für die Basisebene - ja, aber es ist besser, Envelope-Verschlüsselung zu verwenden: KEK in KMS/HSM, Geheimnisse - verpackt. Dies vereinfacht den Rückruf und die Compliance.

F: Was soll ich wählen - Statik oder Dynamik?
A: Die Standardeinstellung ist Dynamik. Lassen Sie Statik nur dort, wo es keine unterstützten Anbieter gibt, und brennen Sie TTL auf Tage/Stunden + automatische Rotation.

Q: Wie man sicher Geheimnisse in Microservice wirft?
О: Workload identity → mTLS к Secret Manager → sidecar/CSI → файлы в tmpfs + hot-reload. Keine Protokolle, keine envvars „für immer“.

F: Ist es möglich, Geheimnisse in Kubernetes Secret zu bewahren?
A: Nur bei aktivierter etcd-Verschlüsselung mit KMS-Provider und strengen Richtlinien. Bevorzugen Sie externen Speicher und CSI.

F: Wie kann man den Zugang eines Mieters „Krypto-löschen“?
A: Seine Richtlinien in Secret Manager zurückziehen/blockieren, alle Leases deaktivieren, Schlüssel rotieren/regenerieren; Bei Verwendung von KMS - Deaktivieren Sie die entsprechenden KEK-Wraps.

Verwandte Materialien:
  • „At Rest Verschlüsselung“
  • „Verschlüsselung im Transit“
  • „Schlüsselmanagement und Rotation“
  • „S2S-Authentifizierung“
  • „Signieren und Verifizieren von Anfragen“
Contact

Kontakt aufnehmen

Kontaktieren Sie uns bei Fragen oder Support.Wir helfen Ihnen jederzeit gerne!

Telegram
@Gamble_GC
Integration starten

Email ist erforderlich. Telegram oder WhatsApp – optional.

Ihr Name optional
Email optional
Betreff optional
Nachricht optional
Telegram optional
@
Wenn Sie Telegram angeben – antworten wir zusätzlich dort.
WhatsApp optional
Format: +Ländercode und Nummer (z. B. +49XXXXXXXXX).

Mit dem Klicken des Buttons stimmen Sie der Datenverarbeitung zu.