In diesem Dokument wird beschrieben, wie Sie einen Root-Schlüssel rotieren. Wenn Ihr Stammschlüssel manipuliert wurde oder Sie Stammschlüssel regelmäßig rotieren möchten, um die Sicherheit zu erhöhen, können Sie Ihre Schlüssel mithilfe der RotationJob-Ressource auf einen neuen Stammschlüssel rotieren.
Beim Rotieren eines Stammschlüssels wird ein neuer Stammschlüssel erstellt, der zum primären Schlüssel wird und alle Nicht-Stammschlüssel umschließt. Sie können keinen Stammschlüssel löschen. Er kann nur durch Rotation ersetzt werden. Weitere Informationen zu Stammschlüsseln finden Sie unter Stammschlüsseltypen.
Weitere Informationen zur KMS API finden Sie in der KMS API-Übersicht. Die vollständige API-Definition finden Sie in der Key Management Service KRM API.
Hinweise
Bevor Sie fortfahren, benötigen Sie Folgendes:
Der Befehl
kubectlist für den Zugriff auf den Management API-Server konfiguriert. Dazu müssen Sie eine kubeconfig-Datei mit der gcloud-Befehlszeile abrufen.Die Rolle „KMS Rotation Job Admin“. Bitten Sie Ihren Organisations-IAM-Administrator, Ihnen die Rolle „KMS Rotation Job Admin“ (
kms-rotationjob-admin) zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Rotieren von Schlüsseln benötigen.
Stammschlüssel rotieren
So erstellen Sie einen neuen Root-Schlüssel und rotieren Ihre Schlüssel:
Erstellen Sie eine YAML-Datei und fügen Sie die
RotationJob-Ressource und den folgenden Inhalt hinzu:apiVersion: "kms.gdc.goog/v1" kind: RotationJob metadata: name: ROTATION_NAME spec: rootKeyResourceName: ROOT_KEY_RESOURCE_NAMEErsetzen Sie ROTATION_NAME durch einen Namen für den Rotationsjob, z. B.
rotate-job1.Ersetzen Sie ROOT_KEY_RESOURCE_NAME durch den Namen des Stammschlüssels im Format
namespace/NAMESPACE/secrets/ROOT_KEY_NAME.Beispiel:
namespaces/kms-system/secrets/kms-key-ctm-root.Wenden Sie den Inhalt der YAML-Datei auf den KMS an:
kubectl apply -f FILENAME.yamlErsetzen Sie FILENAME durch den Namen der YAML-Datei.
Nachdem Sie den Befehl ausgeführt haben, erstellt KMS einen neuen Stammschlüssel und rotiert jeden Schlüssel mit dem neuen Stammschlüssel.
Führen Sie Folgendes aus, um zu prüfen, ob die Rotation des Root-Schlüssels abgeschlossen ist:
kubectl get rotationjobs ROTATION_NAMEErsetzen Sie ROTATION_NAME durch den Namen des Rotationsjobs.
Nach der Ausführung des Befehls wird der Status des Rotationsjobs als
Completedangezeigt, wenn er erfolgreich war.Entfernen Sie die Annotation
Doneaus dem Stammschlüssel. Wenn Sie den Hinweis entfernen, können Sie den Schlüssel mehrmals rotieren. Dieser Schritt muss von Ihrem Infrastrukturbetreiber (Infrastructure Operator, IO) ausgeführt werden. Bitten Sie Ihren IO, Folgendes auszuführen:kubectl annotate secret kms-key-ROOT_KEY_NAME -n kms-system gdch.cluster.gke.io/rotation-status-