Auf dieser Seite erfahren Sie, wie Sie verschlüsselte Storage-Buckets verwalten. Dabei liegt der Schwerpunkt auf dem Aktualisieren und Rotieren von AEADKeys für die v2-Verschlüsselung. Hier finden Sie die Voraussetzungen und Schritte für die Verwendung von kubectl-Befehlen zum Verwalten von AEADKeys und kekRef-Secrets. Mit diesen Informationen können Sie eine robuste Datensicherheit erzwingen und das Risiko einer Kompromittierung Ihrer Verschlüsselungsschlüssel durch effektives Lebenszyklusmanagement minimieren.
Diese Seite richtet sich an IT-Administratoren in der Gruppe der Infrastrukturbetreiber oder Entwickler in der Gruppe der Anwendungsbetreiber, die Verschlüsselungseinstellungen für Storage-Buckets in Google Distributed Cloud (GDC)-Umgebungen mit Air Gap verwalten. Weitere Informationen finden Sie unter Dokumentation zu Zielgruppen für GDC mit Air Gap.
Hinweis
Storage-Buckets sind Ressourcen, die auf ein bestimmtes Projekt beschränkt sind. Das Projekt fungiert als Container, in dem Ihre Buckets gruppiert sind und über den Management API-Server verwaltet werden können. Bevor Sie die Vorgänge auf dieser Seite ausführen können, müssen Sie entweder ein neues Projekt erstellen oder ein vorhandenes auswählen, für das Sie die erforderlichen Berechtigungen haben.
Erforderliche IAM-Rollen
Wenden Sie sich an Ihren IAM-Projektadministrator, um die folgenden Rollen in Ihrem Projektnamespace anzufordern:
- Projekt-Bucket-Administrator (
project-bucket-admin): Storage-Buckets erstellen, aktualisieren und löschen. - Projekt-Bucket-Objektbetrachter (
project-bucket-object-viewer): Details zu Storage-Buckets und -Objekten ansehen und prüfen.
Weitere Informationen finden Sie unter Bucket-Zugriff gewähren.
Umgebung vorbereiten
So führen Sie Befehle für den Management API-Server oder den globalen API-Server aus:
- Melden Sie sich an und generieren Sie die kubeconfig-Datei für den zonalen Management API-Server, falls Sie noch keine haben.
- Für Buckets mit zwei Zonen:
- Prüfen Sie mit Ihrem Infrastrukturbetreiber, ob die benutzerdefinierte Ressource
BucketLocationConfigfür Ihre gekoppelten Zonen erstellt wurde. - Generieren Sie die kubeconfig-Datei für den globalen API-Server.
- Prüfen Sie mit Ihrem Infrastrukturbetreiber, ob die benutzerdefinierte Ressource
Verschlüsselungsressourcen verwalten
Für Buckets mit v2-Verschlüsselung werden ein kekRef-Secret und mehrere AEADKeys erstellt. Dabei wird kekRef verwendet, um auf aktive Standard-AEADKeys zu verweisen, und AEADKeys umfassen aktive und archivierte AEADKeys, die zum Bucket gehören.
Aktive Standard-AEADKeys für einen Bucket aktualisieren
Wir empfehlen, die Standard-AEADKeys Ihres Buckets nach etwa 42 Milliarden Objektvorgängen zu aktualisieren. Dieser proaktive Schritt erhöht die Sicherheit und verhindert die Erschöpfung von Schlüsseln. Beim Aktualisieren wird ein neues kekRef erstellt und die vorherigen AEADKeys werden deaktiviert. Löschen Sie das mit dem Bucket verknüpfte kekRef-Secret, um den Aktualisierungsvorgang zu starten.
Das vorherige kekRef kann mit dem folgenden Befehl abgerufen werden:
kubectl get secrets -n NAMESPACE_NAME -l object.gdc.goog/bucket-name=BUCKET_NAME
Anschließend können Sie das vorhandene kekRef mit dem folgenden Befehl löschen:
kubectl delete secrets OLD_KEKREF_NAME -n NAMESPACE_NAME
Nach dem Löschen können Sie mit dem folgenden Befehl prüfen, ob ein neues kekRef auf Grundlage von AGE erstellt wurde:
kubectl get secrets -n NAMESPACE_NAME -l object.gdc.goog/bucket-name=BUCKET_NAME
Prüfen Sie, ob neue Standard-AEADKeys auf Grundlage von AGE erstellt wurden:
kubectl get aeadkeys -n NAMESPACE_NAME -l cmek.security.gdc.goog/resource-name=BUCKET_NAME
Standard-AEADKeys für einen Bucket rotieren
Wenn ein AEADKey für Ihren Bucket kompromittiert wird, müssen Sie die mit dem Bucket verknüpften Schlüsselverschlüsselungsschlüssel manuell rotieren.
Dazu müssen Sie zuerst die aktiven Standardschlüssel aktualisieren. Dadurch werden neue aktive Standard-AEADKeys erstellt und die vorherigen Schlüsselverschlüsselungsschlüssel werden als deaktiviert markiert. Nach der Aktualisierung der Standardschlüssel werden bei nachfolgenden Objekt-Uploads die neuen AEADKeys als Schlüsselverschlüsselungsschlüssel verwendet. Die vorherigen AEADKeys werden nicht gelöscht, sodass Sie weiterhin vorhandene Objekte entschlüsseln können, die zuvor mit diesen Schlüsseln verschlüsselt wurden.
Folgen Sie der Anleitung, um die Objekte in Ihrem Bucket herunterzuladen und erneut hochzuladen und die alten Objekte zu löschen.
Nachdem Sie alle Objekte in Ihrem Bucket erneut hochgeladen haben, können Sie die inaktiven AEADKeys und alten Objekte bereinigen. Ermitteln Sie die deaktivierten AEADKeys anhand von AGE:
kubectl get aeadkeys -n NAMESPACE_NAME -l cmek.security.gdc.goog/resource-name=BUCKET_NAME
Folgen Sie der Anleitung, um die AEADKeys zu löschen.