Der AO führt Schlüsselverwaltungsoperationen über den kubectl
-Befehl aus, um auf den Management API-Server zuzugreifen.
Hinweise
Bevor Sie KMS-Vorgänge ausführen, konfigurieren Sie den kubectl
-Befehl für den Zugriff auf den Management API-Server. Dazu müssen Sie eine kubeconfig-Datei mit der gcloud-Befehlszeilenschnittstelle (CLI) abrufen.
Bitten Sie den IAM-Administrator Ihrer Organisation, Ihnen die Rolle „KMS Creator“ (kms-creator
) in Ihrem Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen von Schlüsseln benötigen. Wenn Sie zusätzliche Berechtigungen benötigen, z. B. zum Löschen von Schlüsseln, fordern Sie die Rolle „KMS-Administrator“ (kms-admin
) an.
Schlüssel erstellen
Gehen Sie folgendermaßen vor:
Erstellen Sie einen Schlüssel im Projekt-Namespace. Im folgenden Beispiel wird der Schlüssel
AEAD
erstellt:kubectl --kubeconfig MANAGEMENT_API_SERVER \ apply -f - << EOF apiVersion: "kms.gdc.goog/v1" kind: AEADKey metadata: name: KEY_NAME namespace: PROJECT spec: algorithm: AES_256_GCM EOF
Ersetzen Sie die folgenden Variablen:
- MANAGEMENT_API_SERVER: die kubeconfig-Datei des Management API-Servers. Melden Sie sich an und generieren Sie die kubeconfig-Datei, falls Sie noch keine haben.
- KEY_NAME: Ein Name für den Schlüssel, den Sie erstellen möchten, z. B.
key-1
. - PROJECT: der Name des Projekts, z. B.
kms-test1
.
Schlüsselgenerierung prüfen:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get aeadkey KEY_NAME \ --namespace=PROJECT -o yaml
Wenn die Schlüsselerstellung erfolgreich ist, sehen Sie den Wert
True
in der SpalteREADY
.
Schlüssel löschen
Gehen Sie folgendermaßen vor:
Löschen Sie den Schlüssel im Namespace des Projekts:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ delete KEY_PRIMITIVE KEY_NAME \ --namespace=PROJECT
Ersetzen Sie die folgenden Variablen:
- MANAGEMENT_API_SERVER: die kubeconfig-Datei des Management API-Servers. Melden Sie sich an und generieren Sie die kubeconfig-Datei, falls Sie noch keine haben.
- KEY_PRIMITIVE: Der Schlüssel, den Sie löschen möchten, z. B.
aeadkey
für den SchlüsselAEAD
. - KEY_NAME: Der Name des Schlüssels, den Sie löschen möchten, z. B.
key-1
. - PROJECT: der Name des Projekts, z. B.
kms-test1
.
Prüfen Sie, ob der Schlüssel gelöscht wurde und nicht mehr zurückgegeben wird:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get KEY_PRIMITIVE KEY_NAME \ --namespace=PROJECT