Infrastruktur, Cloud & DevOps · Fortgeschritten

Geheimnisse und Schlüssel verwalten

In einem Satz: Ein Geheimnis im Code-Repository ist ein durchgesickertes Geheimnis — auch wenn das Repo privat ist und auch wenn Sie es danach löschten.

Wo man sie speichert

In einem verwalteten Geheimnisspeicher, der Werte zur Laufzeit einspeist, mit Berechtigungen je Dienst und je Umgebung und mit Zugriffsprotokollierung. Umgebungsvariablen sind ein Transportmechanismus, kein Speicherort.

Periodischer Wechsel

Jedes Geheimnis braucht einen Wechselprozess, den man in Minuten ausführen kann. Er wird gebraucht, wenn ein Mitarbeiter geht, bei einem vermuteten Leck und routinemäßig. Erfordert der Wechsel Ausfallzeit, wird er nicht bei Bedarf ausgeführt.

Unterstützen Sie kurzzeitig zwei aktive Schlüssel parallel, damit der Wechsel reibungslos ist.

Ein Leck im Voraus verhindern

Ein Geheimnisscanner im Bauprozess und ein Haken vor dem Speichern einer Änderung, damit ein Geheimnis blockiert wird, bevor es in die Historie gelangt. Ist es bereits eingetreten — nehmen Sie an, es sei durchgesickert, wechseln sofort und reinigen erst dann die Historie.

Im Detail

Trennen Sie Geheimnisse absolut nach Umgebung. Ein Produktionsschlüssel, der aus einer Entwicklungsumgebung zugänglich ist, hebt den Sinn der Trennung auf, und so geschehen die meisten internen Lecks — nicht böswillig, sondern durch ein versehentlich auf die falsche Adresse gerichtetes Skript.