Daten mit vom Kunden verwalteten Verschlüsselungsschlüsseln verschlüsseln

Auf dieser Seite erfahren Sie, wie Sie die Daten auf Ihren Filestore-Instanzen und Sicherungen mit Ihren eigenen Verschlüsselungsschlüsseln verschlüsseln.

Standardmäßig verschlüsselt Google Cloud Daten automatisch, wenn sie Rest mithilfe von Verschlüsselungsschlüsseln die Google gehören und von Google verwaltet werden. Wenn Sie mehr Kontrolle über die zum Schutz Ihrer Daten verwenden, können Sie vom Kunden verwaltete Verschlüsselungsschlüssel Filestore

Optionen für vom Kunden verwaltete Verschlüsselungsschlüssel

Cloud Key Management Service unterstützt vom Kunden verwaltete Verschlüsselungsschlüssel (CMEKs), die als Softwareschlüssel gespeichert werden können, Hardwareschlüssel in einem HSM-Cluster oder extern in Cloud External Key Manager (Cloud EKM). Es gibt mehrere Möglichkeiten.

Weitere Informationen finden Sie unter Cloud Key Management Service.

Cloud External Key Manager

Die Unterstützung von Cloud EKM für Filestore ist jetzt allgemein verfügbar (GA). Weitere Informationen finden Sie unter Cloud External Key Manager.

Störungen des EKM-Dienstes

Externe Schlüssel werden standardmäßig von einem Drittanbieter verwaltet. unter diesen Umständen Google Cloud ist nicht für die Schlüsselverfügbarkeit verantwortlich.

Wenn der Cloud Key Management Service (Cloud KMS) vom External Key Manager (EKM) darüber informiert wird, dass ein externer Schlüssel nicht erreichbar ist, erhalten Nutzer eine ekm_key_unreachable_detected-Benachrichtigung. Bis zu einer Stunde haben Nutzer nur eingeschränkten Zugriff auf Vorgänge im Instanz. Wenn der Schlüsselstatus nach einer Stunde unverändert ist, werden folgende Aktionen ausgeführt: Anwenden:

  • Der Schlüssel ist deaktiviert.
  • Alle Verschlüsselungs- und Entschlüsselungsvorgänge schlagen fehl.
  • Die Filestore-Instanz ist ausgesetzt.

In einigen Fällen, z. B. bei einem ungeplanten Ereignis wie einem VM-Neustart, kann der Zugriff auf die Instanz schon vor Ablauf einer Stunde unterbrochen werden.

Nicht erreichbare Schlüsselbenachrichtigungen können von der Filestore-Instanz angesehen werden Detailseite:

Zur Seite mit den Filestore-Instanzen

Nutzer erhalten außerdem ekm_key_unreachable_detected-Benachrichtigungen zu den folgenden Vorgängen, wenn sie innerhalb einer Stunde nach der ersten gemeldeten Benachrichtigung ausgeführt werden:

Unterstützte Stufen

In der folgenden Tabelle sind die Filestore-Dienstebenen aufgeführt, die vom Kunden verwaltete Verschlüsselungsschlüssel unterstützen:

Stufe CMEK-Unterstützung
Basic HDD Nein
Basic SSD Nein
Zonal Ja
Regional Ja
Enterprise Ja

Schlüsselbund und Schlüssel zur Verwendung mit Ihrer Instanz erstellen

Der Schlüsselbund und der Schlüssel können sich in einem anderen Projekt als die Filestore-Instanz befinden, müssen sich aber am selben Standort befinden. Wenn Sie bereits einen Cloud KMS-Schlüsselbund und -Schlüssel haben, den Sie mit Filestore verwenden möchten, fahren Sie mit dem nächsten Abschnitt fort. Folgen Sie andernfalls der Anleitung unter Symmetrische Verschlüsselungsschlüssel erstellen, um einen Schlüsselbund und Schlüssel zu erstellen.

Schlüsselzugriffsberechtigung für das Filestore-Dienstkonto gewähren

Bevor Sie eine Filestore-Instanz erstellen können, die einen vom Kunden verwalteter Verschlüsselungsschlüssel, das Filestore-Dienstkonto muss die Rolle „Cloud KMS CryptoKey Encrypter/Decrypter“ haben (roles/cloudkms.cryptoKeyEncrypterDecrypter).

  1. Ein Filestore-Dienstkonto wird bei der ersten Erstellung erstellt eine Filestore-Instanz im Projekt. Wenn Sie noch kein Filestore-Dienstkonto haben, führen Sie den folgenden services identity create-Befehl aus:

    gcloud beta services identity create --service=file.googleapis.com --project=INSTANCE_PROJECT_NUMBER_OR_ID
    

    Ersetzen Sie INSTANCE_PROJECT_NUMBER_OR_ID durch die Projektnummer oder ID des Projekts, in dem Sie die Filestore-Instanz erstellen möchten.

  2. Filestore-Dienstkonto den Cloud KMS CryptoKey zuweisen Verschlüsseler/Entschlüsseler-Rolle durch Ausführen des Befehls projects add-iam-policy-binding:

    gcloud projects add-iam-policy-binding KMS_PROJECT_NUMBER_OR_ID \
        --member serviceAccount:service-INSTANCE_PROJECT_NUMBER@cloud-filer.iam.gserviceaccount.com \
        --role roles/cloudkms.cryptoKeyEncrypterDecrypter
    

    Ersetzen Sie Folgendes:

    • KMS_PROJECT_NUMBER_OR_ID durch die Projektnummer oder ID des Projekts, das den zu verwendenden Cloud KMS-Schlüssel enthält.
    • INSTANCE_PROJECT_NUMBER durch die Projektnummer (nicht die Projekt-ID) des Projekts, in dem Sie die Filestore-Instanz erstellen möchten.

Instanz erstellen, die Ihren Cloud KMS-Schlüssel verwendet

Google Cloud Console

So erstellen Sie eine Instanz, die Ihren Cloud KMS-Schlüssel für die Datenverschlüsselung verwendet:

  1. Rufen Sie in der Google Cloud Console die Seite „Filestore-Instanzen“ auf.

    Zur Seite mit den Filestore-Instanzen

  2. Klicken Sie auf Instanz erstellen.

  3. Wählen Sie eine Instanzstufe aus, die CMEKs unterstützt, und füllen Sie alle Felder aus weitere erforderliche und optionale Felder wie gewohnt.

  4. Klicken Sie auf Erweiterte Optionen einblenden.

  5. Klicken Sie das Kästchen Vom Kunden verwalteten Verschlüsselungsschlüssel (CMEK) verwenden an.

  6. Wählen Sie den Cloud KMS-Schlüssel aus, den Sie für die Instanz verwenden möchten.

  7. Klicken Sie auf Erstellen.

gcloud-CLI

Geben Sie im Befehl filestore instances create das Flag --kms-key an, um eine Filestore-Instanz zu erstellen, die Ihren Cloud KMS-Schlüssel für die Datenverschlüsselung verwendet:

gcloud filestore instances create nfs-server \
    --tier=<var>TIER</var> \
    --location=us-central1 \
    --file-share=name="vol1",capacity=1TiB \
    --network=name="default" \
    --kms-key=KMS_KEY

Ersetzen Sie Folgendes:

  • TIER mit einer Filestore-Stufe, die vom Kunden verwaltete Verschlüsselungsschlüssel unterstützt.
  • KMS_KEY durch den voll qualifizierten Namen des Cloud KMS-Schlüssels, den Sie verwenden möchten. Alternativ können Sie jedes Argument separat im folgenden Format angeben:
--kms-key=KMS_KEY : --kms-keyring=KEY_RING --kms-location=KMS_REGION --kms-project=KMS_PROJECT_NUMBER_OR_ID

Ersetzen Sie Folgendes:

  • KMS_KEY durch den Namen des Cloud KMS-Schlüssels.
  • KMS_PROJECT_NUMBER_OR_ID durch die Projektnummer oder ID des Projekts, in dem der Schlüssel erstellt wird.
  • KMS_KEY_RING durch den Namen des Schlüsselbunds.
  • KMS_REGION durch die Region des Schlüsselbunds. Der Schlüsselbund und Instanz muss sich in derselben Region befinden.

Liste mit Schlüsseln abrufen

Mit dem Befehl kms keys list können Sie eine Liste der Schlüssel abrufen:

  gcloud kms keys list \
  --project=KMS_PROJECT_NUMBER_OR_ID \
  --keyring=KEY_RING \
  --location=KMS_REGION

Ersetzen Sie Folgendes:

  • KMS_PROJECT_NUMBER_OR_ID durch die Projektnummer oder ID des Projekts, in dem der Schlüssel erstellt wird.
  • KEY_RING durch den Namen des Schlüsselbunds.
  • KMS_REGION durch die Region des Schlüsselbunds.

In der Spalte Name der Ausgabe wird der voll qualifizierte Name der vorhandenen Schlüssel angegeben. Beispiel:

projects/example-project/locations/us-central1/keyRings/example-ring/cryptoKeys/example-key

Informationen zum Instanzschlüssel abrufen

In den folgenden Abschnitten erfahren Sie, wie Sie Informationen zu Instanzschlüsseln abrufen.

Instanzen auflisten, die einen bestimmten Cloud KMS-Schlüssel verwenden

Sie können Filestore-Instanzen, die einen bestimmten Schlüssel verwenden, mit dem Befehl instances list auflisten:

gcloud filestore instances list --filter="kmsKeyName=KMS_KEY"

Ersetzen Sie KMS_KEY durch den voll qualifizierten Namen des Schlüssels, den Sie verwenden möchten.

Example:

gcloud filestore instances list \
    --filter="kmsKeyName=projects/example-project/locations/us-central1/keyRings/example-ring/cryptoKeys/example-key"

Die Ausgabe sieht so aus:

INSTANCE_NAME LOCATION    TIER       CAPACITY_GB FILE_SHARE_NAME IP_ADDRESS   STATE CREATE_TIME
nfs-server    us-central1 ENTERPRISE 1024        vol1            10.166.108.2 READY 2021-08-12T11:38:56

Cloud KMS-Schlüsselinformationen für eine Instanz abrufen

Verwenden Sie eine der folgenden Methoden, um Cloud KMS-Schlüsselinformationen für eine Filestore-Instanz:

Google Cloud Console

  1. Zur Seite mit den Filestore-Instanzen

    Zur Seite mit den Filestore-Instanzen

  2. Klicken Sie auf die Instanz-ID, um die Detailseite der Instanz zu öffnen.

  3. Klicken Sie auf den Tab Übersicht.

Wenn die Instanz Daten mit einem Cloud KMS-Schlüssel anstelle eines von Google gehört und von Google verwaltet wird, wird der Schlüsselname im Verschlüsselungsschlüssel.

gcloud-CLI

Führen Sie dazu den Befehl instances describe aus.

gcloud filestore instances describe INSTANCE_ID \
   --location=INSTANCE_LOCATION

Ersetzen Sie Folgendes:

  • INSTANCE_ID durch die Instanz-ID der Filestore-Instanz, zu der Sie Informationen abrufen möchten.
  • INSTANCE_LOCATION durch die Region oder Zone, in der sich die Instanz befindet. befindet.

Die Ausgabe sieht so aus:

createTime: '2021-08-12T11:38:56.851157387Z'
fileShares:
- capacityGb: '1024'
  name: vol1
kmsKeyName: projects/example-project/locations/us-central1/keyRings/example-ring/cryptoKeys/example-key
labels:
  key: val
name: projects/consumer-project/locations/us-central1/instances/nfs-server
networks:
- ipAddresses:
  - 10.0.100.2
  modes:
  - MODE_IPV4
  network: network
  reservedIpRange: 10.166.108.0/23
state: READY
tier: ENTERPRISE

Von einer Instanz verwendeten Cloud KMS-Schlüssel deaktivieren oder löschen

Wenn eine Änderung am Status des Cloud KMS-Schlüssels erkannt wird, stellt die Instanz automatisch die Bereitstellung von Daten ein. Einige Beispiele:

  • Deaktivierung eines Schlüssels oder einer Schlüsselversion
  • Löschen eines Schlüssels oder einer Schlüsselversion
  • Berechtigungen eines Schlüssels ändern

Diese Erkennung erfolgt normalerweise innerhalb weniger Minuten nach der Änderung des Schlüsselstatus. Vereinzelt kann der Vorgang jedoch bis zu einer Stunde dauern.

Sobald eine Instanz beendet ist, wird der Zugriff auf Dateifreigabedaten und alle Snapshots blockiert. Beendete Instanzen werden weiterhin in Rechnung gestellt, bis sie gelöscht werden.

Beendete Instanz starten

Wenn eine angehaltene Filestore-Instanz einen Cloud KMS-Schlüssel für die Datenverschlüsselung verwendet, müssen alle Schlüsselversionen des Schlüssels aktiviert oder wiederhergestellt werden, bevor die Instanz neu gestartet werden kann.

Sobald der Cloud KMS-Schlüsselstatus aktiviert ist, werden wichtige Änderungen automatisch erkannt und ohne weitere Aktionen neu gestartet. in der Regel innerhalb von 20 Minuten.

CMEK-Unterstützung für Sicherungsketten

Sie können CMEKs nicht nur zum Verschlüsseln Ihrer Filestore-Instanzen, sondern auch Ihrer Sicherungsketten verwenden.

Sicherungsketten befinden sich in einem einzelnen Bucket und einer einzelnen Region. Zum Speichern und Verschlüsseln der Sicherung in einer Region außerhalb der Quellinstanz befinden, müssen Nutzer zwei separate CMEKs: einer für die Instanz und einer für die Sicherungskette. Es gelten einige Anforderungen:

  • Ein CMEK muss sich in derselben Region befinden wie die von ihm verschlüsselte Sicherungskette.

  • Auf den Bucket, in dem die Sicherungskette gespeichert ist, wird ein einzelner CMEK angewendet. Dieser kann nicht kombiniert oder ersetzt werden.

  • Zum Erstellen einer Sicherung mit einem neuen CMEK muss die gesamte vorhandene Sicherungskette müssen zuerst gelöscht werden.

Für Sicherungen der Basis-Stufe wird CMEK nicht unterstützt.

Weitere Informationen finden Sie unter Sicherungen.

Nächste Schritte