AWS KMS-Schlüssel erstellen

Übersicht

GKE on AWS verwendet vom Kunden verwaltete symmetrische Schlüssel (AWS Key Management Service (KMS) zum Verschlüsseln:

Für Produktionsumgebungen empfehlen wir die Verwendung unterschiedlicher Schlüssel für die Konfiguration und die Volume-Verschlüsselung. Um das Risiko weiter zu minimieren, wenn ein Schlüssel manipuliert ist, können Sie auch für jeden der folgenden Schlüssel unterschiedliche Schlüssel erstellen:

Für zusätzliche Sicherheit können Sie eine AWS-KMS-Schlüsselrichtlinie erstellen, die nur den minimal erforderlichen Satz von Berechtigungen zuweist. Weitere Informationen finden Sie unter KMS-Schlüssel mit bestimmten Berechtigungen erstellen.

AWS KMS-Schlüssel erstellen

Führen Sie den folgenden Befehl aus, um einen Schlüssel zu erstellen:

aws --region AWS_REGION kms create-key \
    --description "KEY_DESC"

Dabei gilt:

  • AWS_REGION ist der Name Ihrer AWS-Region.
  • KEY_DESC ist eine Textbeschreibung Ihres Schlüssels.

Speichern Sie für jeden erstellten Schlüssel den Wert KeyMetadata.Arn in der Ausgabe dieses Befehls zur späteren Verwendung.

KMS-Schlüssel mit bestimmten Berechtigungen erstellen

Wenn Sie separate Schlüssel für verschiedene Funktionen erstellen, müssen Sie für jeden Schlüssel, der die entsprechenden Berechtigungen gewährt, eine KMS-Schlüsselrichtlinie bereitstellen. Wenn Sie beim Erstellen eines Schlüssels keine Schlüsselrichtlinie angeben, erstellt AWS KMS eine Standardschlüsselrichtlinie, die allen Principals im zugehörigen Konto unbegrenzten Zugriff auf alle Vorgänge für den Schlüssel gewährt.

Wenn Sie eine Schlüsselrichtlinie erstellen, müssen Sie einer AWS IAM-Richtlinie Zugriff auf die Schlüsselrichtlinie gewähren. Die Schlüsselrichtlinie muss auch Ihrem Konto die Berechtigung zur Verwendung von IAM-Richtlinien erteilen. Ohne Berechtigung aus der Schlüsselrichtlinie haben IAM-Richtlinien, die Berechtigungen zulassen, keine Auswirkungen. Weitere Informationen finden Sie unter Schlüsselrichtlinien in AWS KMS.

In der folgenden Tabelle werden die Berechtigungen für jeden der von GKE on AWS verwendeten AWS-IAM-Rollen beschrieben.

Rolle „GKE Multi-Cloud API-Dienst-Agent“ Rolle der Steuerungsebene Knotenpoolrolle AWS-Dienstrolle für AutoScaling
Verschlüsselung der Konfiguration der Clustersteuerungsebene kms:Encrypt kms:Decrypt
Datenbankverschlüsselung der Cluster-Steuerungsebene kms:Encrypt
kms:Decrypt
Verschlüsselung des Haupt-Volumes der Cluster-Steuerungsebene kms:GenerateDataKeyWithoutPlaintext KMS:CreateGrant
Verschlüsselung des Root-Volumes der Cluster-Steuerungsebene Siehe Abschnitte zu den Schlüsselrichtlinien, die den Zugriff auf den vom Kunden verwalteten Schlüssel ermöglichen
Verschlüsselung des Knotenpools kms:Encrypt kms:Decrypt
Verschlüsselung von Root-Volume-Knotenpools Siehe Abschnitte zu den Schlüsselrichtlinien, die den Zugriff auf den vom Kunden verwalteten Schlüssel ermöglichen
Weitere Anforderungen kms:DescribeKey

Nächste Schritte