Schau mal, Mama, keine Geheimnisse in meinem Kubernetes-Cluster!

Video

Sehen Sie sich den Vortrag von Vijay Dharap auf den ContainerDays 2023 an

Kubernetes Secrets bereiten erhebliche Wartungs- und Sicherheitsprobleme.

Traditionell gibt es 3-4 Ansätze für die Verwaltung von Geheimnissen.

  1. Definieren Sie Geheimnisse in Git als Klartext und stellen Sie sie bereit. Schränken Sie den Zugang zum Git-Repository ein.
  2. Verwenden Sie Verschlüsselung auf Git-Ebene wie git-crypt oder Mozilla SOPS und verschlüsseln Sie die Dateien, die Geheimnisse enthalten
  3. Erstellen Sie verschlüsselte geheime Werte mit Sealed Secrets. Speichern Sie sie in Git. Verwenden Sie den Operator sealed-secrets im Cluster, der verschlüsselte CRD-Werte liest und entschlüsselt und k8s-Geheimnisse für Sie erstellt.
  4. Verwendung des Operators "Externe Geheimnisse" zur Verwaltung von Geheimnissen in Tools zur Verwaltung von Cloud-Geheimnissen

Alle 4 Ansätze haben Nachteile wie Probleme bei der Zugriffskontrolle, Bereinigung des Git-Verlaufs, keine Verschlüsselung zur Laufzeit,

Secret-Store-CSI verfolgt einen anderen Ansatz. Es ermöglicht Ihnen die Nutzung von standardmäßigen cloudbasierten Lösungen zur Verwaltung von Geheimnissen wie AWS Secrets Manager oder etablierten Anbietern wie Vault, um Geheimnisse und den Zugriff darauf zu verwalten. Secret-Store-CSI ist eine Container-Storage-Schnittstelle und bindet daher Geheimnisse direkt als Speichervolumen in den POD ein! Es wird keine eigentliche Kubernetes-Geheimnisressource erstellt. Es synchronisiert auch jede Änderung des Geheimnisses mit dem externen Geheimnismanager im Pod.

In der Demo -

  1. Secret-store-CSI wird auf einem k8s-Cluster in AWS bereitgestellt.
  2. AWS kube2iam beschränkt den Zugriff auf den aws secrets manager nur auf den Operator-Pod.
  3. Die Demo-App verwendet den vom Betreiber bereitgestellten geheimen Wert.
  4. Wir ändern das Geheimnis in der Geheimnisverwaltung und sehen, dass die Anwendung neu geladen wird (durch den Stakator-Reloader) und den neuen Wert verwendet

Sprecher: Vijay Dharap, Technischer Leiter bei Kubermatic

Führende Unternehmen wählen Kubermatic