Auf dieser Seite wird die Verwendung von CMEK mit Apigee beschrieben. Best Practices finden Sie unter Best Practices für Apigee CMEK.
Übersicht
Standardmäßig verschlüsselt Google Cloud Daten im inaktiven Zustand automatisch mit von Google verwalteten Verschlüsselungsschlüsseln. Wenn Sie bestimmte Compliance- oder regulatorische Vorgaben in Bezug auf die Schlüssel zum Schutz Ihrer Daten haben, können Sie kundenverwaltete Verschlüsselungsschlüssel (Customer-Managed Encryption Keys, CMEK) verwenden.
Weitere Informationen zur Verwendung von CMEK für Apigee finden Sie unter CMEK mit Apigee verwenden. Weitere allgemeine Informationen zu CMEK einschließlich ihrer Aktivierung finden Sie in der Dokumentation zum Cloud Key Management Service.
Die Verwendung von vom Kunden verwalteten Verschlüsselungsschlüsseln (CMEK) bietet nicht unbedingt mehr Sicherheit als die standardmäßigen Verschlüsselungsmechanismen von Google. Sie haben jedoch mehr Kontrolle über den Lebenszyklus und die Verwaltung Ihrer Schlüssel, um Sicherheits- und Compliance-Anforderungen zu erfüllen.
Wenn Sie mehr Kontrolle über Schlüsselvorgänge benötigen, als die von Google verwalteten Verschlüsselungsschlüssel zulassen, können Sie vom Kunden verwaltete Verschlüsselungsschlüssel verwenden. Diese Schlüssel werden mit Cloud Key Management Service (Cloud KMS) erstellt und verwaltet und Sie speichern die Schlüssel als Softwareschlüssel in einem HSM-Cluster oder extern.
Die Schlüsselverwaltungsfunktionen werden vom Cloud KMS-Dienst bereitgestellt.
CMEK-Anwendungsfälle
In diesem Abschnitt werden typische Anwendungsfälle für die Verwendung von CMEK mit Apigee beschrieben.
Schlüsselrotation
Schlüssel automatisch oder manuell rotieren Beachten Sie, dass bei einer Rotation des Schlüssels zuvor in Apigee gespeicherte Daten nicht automatisch mit der neuen Schlüsselversion verschlüsselt werden, sondern weiterhin zugänglich sind, solange die vorher zum Verschlüsseln der Daten verwendete Schlüsselversion nicht deaktiviert oder gelöscht wird.
Der Hauptzweck der Schlüsselrotation besteht darin, die Datenexposition auf einen einzelnen Schlüssel zu beschränken, nicht darin, die alte Schlüsselversion vollständig zu ersetzen.
Apigee unterstützt derzeit keine Wiederverschlüsselung bei der Schlüsselrotation.
Wenn Sie einen Schlüssel für Apigee rotieren, wird nur eine begrenzte Anzahl neuer Daten (z. B. eine neue Proxy-Revision) mit der neuen Primärschlüsselversion verschlüsselt. Die meisten Daten, z. B. Analysedaten, Laufwerk für die Laufzeit und alte Proxy-Revisionen, verwenden weiterhin die alte Schlüsselversion.
Wenn Sie die vorherige Schlüsselversion vollständig entfernen möchten, müssen Sie die Organisation apigee neu erstellen. Wenn Sie die vorherige Schlüsselversion für Laufzeitverschlüsselungsschlüssel vollständig entfernen möchten, müssen Sie die Laufzeitinstanzen neu erstellen. Weitere Informationen finden Sie unter
Best Practices für Apigee CMEK.
Siehe auch: Schlüssel rotieren
Schlüssel löschen und deaktivieren
Wenn eine Schlüsselversion deaktiviert ist, kann nicht mehr auf Apigee-Daten zugegriffen werden, die mit dieser Schlüsselversion verschlüsselt sind. Um den Zugriff auf die Daten wiederherzustellen, kann der Schlüssel wieder aktiviert werden.
Wenn Sie Ihren CMEK-Schlüssel löschen oder deaktivieren, auch nur für frühere Versionen, funktioniert Ihre apigee-Organisation nicht mehr richtig, je nachdem, welche Schlüsselversion für die Verschlüsselung verwendet wird. Bestimmte APIs funktionieren sofort nicht mehr, da für diese APIs ein CMEK-Schlüssel zum Entschlüsseln von Daten erforderlich ist. Bestimmte Funktionen funktionieren erst dann nicht mehr, wenn eine Systemaktion ausgelöst wird, z. B. wenn nichtflüchtige Compute Engine-Speicher neu gemountet werden. Weitere Informationen finden Sie unter
Schlüssel deaktivieren.
Wenn eine Schlüsselversion gelöscht wird, werden alle Apigee-Daten, die mit dieser Schlüsselversion verschlüsselt sind, unlesbar und können nicht wiederhergestellt werden. Dieser Vorgang ist endgültig und kann nicht rückgängig gemacht werden.
Weitere Informationen
Schlüsselwiederherstellung
Wenn Sie versehentlich einen Schlüssel oder eine vorherige Schlüsselversion löschen oder deaktivieren, sollten Sie versuchen, sie so schnell wie möglich wiederherzustellen.
CMEK ist eine Funktion, die für Datenverlust vorgesehen ist, wenn der Schlüssel nicht verfügbar ist.
Nachdem Sie den Schlüssel wiederhergestellt haben, kann nicht garantiert werden, dass Ihre apigee-Organisation wiederhergestellt wird. Es kann zu Datenverlust kommen. Weitere Informationen finden Sie unter
Schlüssel reaktivieren.
Wenden Sie sich an Google Cloud Customer Care, um zu erfahren, was Sie als Nächstes tun sollten.
Siehe auch: Schlüsselversionen löschen und wiederherstellen
Schlüsselzugriff widerrufen
Wenn Sie den Zugriff des Apigee-Dienst-Agents auf den Schlüssel über IAM widerrufen, kann Apigee nicht auf Steuerungsebenendaten zugreifen, die mit einer Schlüsselversion verschlüsselt sind. Apigee API-Vorgänge, die vom Entschlüsseln der Daten abhängen, schlagen fehl. Der Zugriff auf die Daten kann wiederhergestellt werden, indem der Zugriff auf den Schlüssel und die Apigee API-Vorgänge, die die Daten entschlüsseln, wiederhergestellt wird.
Siehe auch: Zugriff auf Projekte, Ordner und Organisationen verwalten
EKM
Apigee unterstützt derzeit nicht Cloud External Key Manager (Cloud EKM). Wenn Sie Cloud EKM verwenden, gibt es einen bekannten Fehler, der dazu führt, dass Cloud EKM-Fehler nicht richtig weitergegeben und Ihnen angezeigt werden.
Schlüssel-Tracking
Apigee unterstützt die Schlüsselverfolgung nicht. Wenn Sie die Schlüsselnutzung ansehen und feststellen, dass eine bestimmte Schlüsselversion nicht verwendet wird, ist das nicht korrekt, da Apigee nicht in die Funktionen zur Schlüsselverfolgung integriert ist.
Kontingente
Die Verwendung von CMEK kann zur Nutzung des Cloud KMS-Kontingents führen. Die aktuellen Informationen zu Cloud KMS-Kontingenten finden Sie unter Kontingente.
Verschlüsselungsschlüssel widerrufen
Wenn Sie der Meinung sind, dass Ihre Daten in Apigee in Google Cloud gefährdet sind, können Sie Ihre Verschlüsselungsschlüssel widerrufen. Widerrufen Sie den Laufzeit-CMEK, damit die Laufzeitinstanz fehlschlägt und nicht auf Ihre Gateway-Daten zugreifen kann. Widerrufen Sie den CMEK der Steuerungsebene, damit Apigee keine Analysen ausführen oder neue Proxys bereitstellen kann.
CMEK mit Apigee verwenden
Apigee-Verschlüsselungsschlüssel werden für Laufzeitdaten und Daten der Steuerungsebene verwendet und während des Bereitstellungsvorgangs erstellt.
Apigee-Daten der Steuerungsebene werden mit einem anderen Verschlüsselungsschlüssel als Laufzeitdaten verschlüsselt und können in verschiedenen Regionen gespeichert werden. Gemäß der CMEK-Dokumentation gilt diese Verschlüsselung nur für inaktive Daten, d. h. Daten, die letztendlich auf der Festplatte gespeichert werden.
Zu den Daten der Apigee-Steuerungsebene gehören Proxy-Konfigurationen (Bundles), einige Konfigurationsdaten der Umgebung und Analysedaten. Zu den Apigee-Laufzeitdaten gehören Anwendungsdaten wie KVMs, Cache und Clientschlüssel, die dann in der Laufzeitdatenbank gespeichert werden.
Eine Beschreibung der Arten von Verschlüsselungsschlüsseln finden Sie unter Informationen zu den Apigee-Verschlüsselungsschlüsseln.
Sie können Verschlüsselungsschlüssel nur beim Erstellen der Apigee-Organisation hinzufügen. Nachdem ein CMEK zugewiesen wurde, können Sie nach dem Erstellen der Organisation nicht mehr zu einem anderen CMEK wechseln.
CMEK-Regionen für die Datenstandortsteuerungsebene
In der regionalisierten Apigee-Steuerungsebene wählen Sie zwei Verschlüsselungsschlüssel für Ihre Steuerungsebene aus. Das liegt daran, dass sich einige der Komponenten, die der Apigee-Steuerungsebene zugrunde liegen, immer in einer einzigen Region innerhalb des Standorts der Steuerungsebene befinden. Weitere Informationen finden Sie unter Regionen für den Datenstandort.
| Details | Erforderliche Schlüssel |
|---|---|
|
Die Region der Steuerungsebene ist die Region, in der die Steuerungsebene ausgeführt wird. Die Steuerungsebene in Apigee ist ein abstraktes Konzept, bei dem mehrere zugrunde liegende Komponenten zusammen die Apigee-Steuerungsebene bilden. Daten der Steuerungsebene sind Proxy-Konfiguration und Analysespeicher. Andere Daten der Steuerungsebene (z.B. Analyse- und Portalverarbeitung) befinden sich in einer Unterregion der Steuerungsebene. Alle Komponenten der Unterregionen befinden sich in derselben Region. |
Ein Schlüssel für Daten der Steuerungsebene. Ein Schlüssel für Daten der Steuerungsebene in einer Unterregion. |
Einschränkungen für Organisationsrichtlinien
Wenn Sie Einschränkungen der CMEK-Organisationsrichtlinie für Ihr Google Cloud-Projekt haben, erzwingt Apigee die Einhaltung dieser Einschränkungen. Wenn Sie Apigee über die Google Cloud Benutzeroberfläche, die CLI oder direkt über Apigee APIs verwenden, wird die Durchsetzung von CMEK-Richtlinien garantiert. Wenn Sie die Google Cloud Apigee-Benutzeroberfläche verwenden, werden CMEK-Organisationsrichtlinieneinschränkungen vorab validiert, damit Sie bei der Auswahl einer gültigen, konformen Konfiguration unterstützt werden.
Es können CMEK-Organisationsrichtlinieneinschränkungen erstellt werden, die Folgendes erfordern:
- Vom Kunden verwaltete Verschlüsselungsschlüssel werden immer verwendet
- Vom Kunden verwaltete Verschlüsselungsschlüssel sind nur für bestimmte Projekte zulässig, die in einer Zulassungsliste angegeben sind.
Nicht alle Funktionen in Apigee sind derzeit CMEK-kompatibel. Damit in Projekten, für die CMEK erforderlich ist, nicht unwissentlich Funktionen verwendet werden, die nicht CMEK-geschützt sind, werden diese Funktionen für Projekte mit CMEK-Einschränkungen deaktiviert, bis sie den Anforderungen entsprechen. Nur die neue Nutzung der Funktionen wird deaktiviert (Erstellen neuer Ressourcen oder Aktivieren eines Add-ons). Funktionen und Ressourcen, die bereits verwendet werden, bleiben verfügbar und können bearbeitet werden, sind aber nicht CMEK-konform. Die folgenden Features werden deaktiviert:
-
Apigee Shadow API Discovery unterliegt nicht der CMEK-Organisationsrichtlinie und ist nicht CMEK-kompatibel.
- Die Erstellung von Evaluierungsorganisationen wird sowohl durch die CreateOrganization-Evaluierungsorganisations-API als auch durch den Evaluierungsbereitstellungsassistenten blockiert.
-
Gemini Code Assist ist nicht verfügbar.
- Die Erstellung globaler Organisationen wird durch die CreateOrganization-API für Evaluierungsorganisationen und den Evaluierungsbereitstellungsassistenten blockiert.
- Die Erstellung von Hybrid-Instanzen ist für die Durchsetzung nicht verfügbar.
- Die Schaltfläche Looker Studio zum Öffnen von Looker Studio mit Daten aus Apigee ist deaktiviert, wenn CMEK erforderlich ist.
- Eine rückwirkende Durchsetzung der Compliance für vorhandene Ressourcen ist nicht möglich. Sie müssen Ressourcen löschen und neu erstellen, wenn eine vorhandene Ressource konform sein soll.
Weitere Informationen zur Verwendung von Organisationsrichtlinieneinschränkungen mit Apigee finden Sie unter Organisationsrichtlinieneinschränkungen in Apigee verwenden.
Verschlüsselungsschlüssel erstellen
Standardmäßig verwaltet Google die Erstellung von Verschlüsselungsschlüsseln während der Bereitstellung. Sie können sie jedoch auch selbst erstellen. Weitere Informationen finden Sie unter Apigee-Verschlüsselungsschlüssel.
Risiken und Risikominderungen
In diesem Abschnitt werden mögliche Bedrohungen beschrieben sowie Maßnahmen, die Sie vornehmen können.
- Risiken:
- Schlüssel-Hacking: Tritt auf, wenn ein Angreifer Zugriff auf den Verschlüsselungsschlüssel erhält, möglicherweise durch Sicherheitslücken im KMS oder durch Angriffe auf Schlüsseladministratoren.
- Denial of Service: Ein Angreifer könnte den Zugriff auf Verschlüsselungsschlüssel oder Daten durch Angriffe auf das KMS- oder Speichersystem stören.
- Verlust des Schlüssels: Versehentliches Löschen oder Verlieren von Schlüsseln kann zu Daten- oder Zugangsverlust führen.
- Risikominderungen:
- Strenge Richtlinien für die Zugriffssteuerung und die Schlüsselverwaltung implementieren.
- KMS-Logs und ‑Aktivitäten auf verdächtiges Verhalten überwachen.
Fehlerbehebung
In der folgenden Tabelle werden einige gängige Fehlerbedingungen, die bei CMEK-verschlüsselten Configstore-Daten auftreten können, die von der Apigee API zurückgegebene ungefähre Fehlermeldung und die empfohlenen Schritte zur Fehlerbehebung beschrieben.
| Fehlermeldung/Symptom | Ursache | Erforderliche Schritte |
|---|---|---|
Constraint constraints/gcp.restrictNonCmekServices violated for
projects/my-project attempting to create or enable trial org. CMEK is
not supported for trial orgs. To use trial orgs, adjust the
gcp.restrictNonCmekServices constraint for this project.
|
Sie haben versucht, eine Testorganisation bereitzustellen, für die eine Organisationsrichtlinien-Einschränkung für das Projekt gilt. |
CMEK wird für Test-/Evaluierungsorganisationen nicht unterstützt. Sie müssen die Einschränkung der Organisationsrichtlinie constraints/gcp.restrictNonCmekServices aktualisieren, um Apigee aus der Liste der abgelehnten Dienste zu entfernen, damit Sie eine Testorganisation bereitstellen können.
|
Constraint constraints/gcp.restrictCmekCryptoKeyProjects
violated for projects/my-project attempting to use
projects/my-project/locations/my-location/keyRings/kr-1/cryptoKeys/ck-1
key. Use a key from a project that is allowed by the
gcp.restrictCmekCryptoKeyProjects constraint.
|
Sie haben versucht, eine Organisation bereitzustellen, für die eine Organisationsrichtlinieneinschränkung für das Projekt gilt, und einen KMS-CryptoKey angegeben, der nicht auf der Zulassungsliste steht. |
Sie haben constraints/gcp.restrictCmekCryptoKeyProjects in Organisationsrichtlinien festgelegt, für die Sie einen CMEK-Schlüssel aus den von Ihnen angegebenen zulässigen Projekten angeben müssen. Sie müssen den CMEK aus einem zulässigen Projekt angeben, um eine Organisation oder Instanzen erstellen zu können.
Alternativ können Sie die Einschränkung der Organisationsrichtlinie constraints/gcp.restrictCmekCryptoKeyProjects aktualisieren, um Schlüssel aus dem gewünschten Google Cloud Projekt zuzulassen.
|
Apigee does not have permission to access key "..."
|
Ein Nutzer hat den Zugriff von Apigee auf den bereitgestellten KMS-Schlüssel widerrufen, z. B.
durch Entfernen der roles/cloudkms.cryptoKeyEncrypterDecrypter-Rolle.
|
Ein Nutzer sollte die konfigurierten Rollen für den KMS-Schlüssel prüfen und dafür sorgen, dass der Apigee-Dienst-Agent die erforderlichen Berechtigungen hat. |
Unable to encrypt/decrypt data. Cloud KMS Error: "..." is not
enabled, current state is: DESTROYED.
|
Ein Nutzer hat die Schlüsselversion, die zum Verschlüsseln/Entschlüsseln der angeforderten Daten verwendet wurde, deaktiviert oder gelöscht. | Ein Nutzer sollte die Schlüsselversion nach Möglichkeit wieder aktivieren. Wenn der Schlüssel oder die Schlüsselversion gelöscht wurde, können die Daten nicht wiederhergestellt werden. |
No new Analytics data for US/EU users
|
Eine mögliche Ursache für dieses Problem ist, dass ein Nutzer einen einzelnen regionalen Schlüssel widerrufen, deaktiviert oder gelöscht hat. | Ein Nutzer sollte den Zugriff auf den Schlüssel für eine einzelne Region wieder aktivieren/wiederherstellen. |
Control plane key "..." in region "..." is not valid for this
control plane instance. Supported region(s) are "…".
|
Ein Nutzer hat einen Schlüssel der Steuerungsebene einer einzigen Region in einer Region angegeben, die für die Region oder Multiregion, die von der Instanz der Steuerungsebene bereitgestellt wird, nicht gültig ist oder nicht unterstützt wird. | Ein Nutzer muss entweder einen Schlüssel in einer der unterstützten Regionen angeben oder eine andere Steuerungsebeneninstanz verwenden. |
Multi-region control plane key is not valid for this control
plane instance. Specify only the "apiConsumerDataEncryptionKeyName"
field.
|
Ein Nutzer hat einen Schlüssel für eine multiregionale Steuerungsebene in einer Steuerungsebene angegeben, die nur in einer einzelnen Region vorhanden ist (d.h. keine multiregionale Steuerungsebene ist). | Ein Nutzer muss entweder das Feld für den multiregionalen Schlüssel weglassen oder eine multiregionale Steuerungsebeneninstanz verwenden. |
Multi-region control plane key is not valid for this control
plane instance. Specify a multi-region key with region "..."
|
Ein Nutzer hat einen Schlüssel für eine multiregionale Steuerungsebene auf der falschen multiregionalen Steuerungsebeneninstanz angegeben (z. B. einen "us"-Schlüssel für die "eu"-Steuerungsebeneninstanz). | Ein Nutzer muss entweder einen multiregionalen Schlüssel in der richtigen Multiregion verwenden oder eine andere multiregionale Steuerungsebeneninstanz auswählen. |