Secrets-Verwaltung ist das geordnete Aufbewahren von Zugangsdaten, Schlüsseln und Token. Geordnet heißt: an einer Stelle, mit knappen Rechten, nachvollziehbar und mit einem Weg, sie zu wechseln.
- Secrets-Verwaltung
Das geordnete Aufbewahren von Zugangsdaten, Schlüsseln und Token.
Beispiel: „Nach dem Umbau der Secrets-Verwaltung kannte keine Datei im Repository mehr ein Passwort.“Englisch secrets management. Übliche Orte sind die Umgebung des Servers, die Geheimnisse des CI-Dienstes und ein Tresor wie Vault, 1Password oder der Dienst eines Cloud-Anbieters.
Abgrenzung zu den Umgebungsvariablen: Diese sind der Weg in die Anwendung. Die Verwaltung entscheidet, wo der Wert vorher liegt und wer ihn sehen darf.
Was eine Secrets-Verwaltung leisten muss
Vier Dinge: einen Ort außerhalb des Repositories, Rechte je Person und je Dienst, eine Spur darüber, wer wann gelesen hat, und einen Wechsel, der ohne Umbau funktioniert.
Für kleine Projekte reicht dafür die Umgebung des Servers plus ein geteilter Tresor im Team. Ein eigener Dienst lohnt sich, sobald mehrere Umgebungen und mehrere Menschen zusammenkommen.
Was zu tun ist, wenn ein Schlüssel im Repository gelandet ist
Den Schlüssel für ungültig erklären, nicht die Datei löschen. Ein Commit bleibt in der Geschichte und in jedem Klon, den jemand gezogen hat; entfernt ist der Wert erst, wenn er nirgends mehr gilt.
Danach folgen die Schritte in dieser Reihenfolge: neuen Schlüssel setzen, Protokolle auf fremde Zugriffe prüfen, die Datei aus dem Projekt nehmen und die Ausschlussliste ergänzen.
Warum Geheimnisse ein Ablaufdatum brauchen
Weil ein Schlüssel, der nie wechselt, irgendwann in einem Chatverlauf, einem Ticket oder auf einem alten Rechner liegt. Ein Wechsel im Jahr macht aus diesem Fundstück einen wertlosen Zettel.
Dazu gehört, dass der Wechsel geübt ist. Wer nicht weiß, welche vier Stellen einen Datenbankzugang kennen, kann ihn im Notfall auch nicht in zehn Minuten tauschen.