Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verschlüsselung im Ruhezustand für OpenTelemetry Metriken
Was ist ein CloudWatch Datensatz
OpenTelemetry (OTel) -Metriken, die Sie an Amazon senden, CloudWatch werden in einer Ressource gespeichert, die als Datensatz bezeichnet wird. Jeder AWS-Konto hat einen default Datensatz in jeder Region, in der sich alle OTel-Metriken befinden. Der default Datensatz ist der einzige unterstützte Datensatz — Sie können keine zusätzlichen Datensätze erstellen.
Datensätze können wie andere AWS Ressourcen verschlüsselt und mit Tags versehen werden. Die ARN des Datensatzes hat das folgende Format:
arn:{partition}:cloudwatch:{region}:{account-id}:dataset/default
Verwenden Sie die GetDataset API, um die aktuelle Verschlüsselungskonfiguration Ihres Datensatzes anzuzeigen:
aws cloudwatch get-dataset \ --dataset-identifier default
Wenn dem Datensatz ein vom Kunden verwalteter Schlüssel zugeordnet ist, enthält die Antwort den Schlüssel-ARN. Wenn kein vom Kunden verwalteter Schlüssel verknüpft ist, wird der Datensatz mit einem AWS eigenen Schlüssel verschlüsselt.
Optionen für die Verschlüsselung im Ruhezustand
CloudWatch verschlüsselt Datensatzdaten immer im Ruhezustand. CloudWatch Verschlüsselt standardmäßig alle ruhenden Daten mit AWS eigenen Schlüsseln. Sie müssen keine Maßnahmen ergreifen, um Ihre Daten mit AWS eigenen Schlüsseln zu schützen. Weitere Informationen finden Sie unter AWS -eigene Schlüssel im AWS Key Management Service -Entwicklerhandbuch.
Wenn Sie die Schlüssel verwalten möchten, die zum Verschlüsseln Ihrer Datensatzdaten verwendet werden, können Sie einen vom Kunden verwalteten Schlüssel in AWS Key Management Service (AWS KMS) verwenden. Weitere Informationen finden Sie im AWS Key Management Service Entwicklerhandbuch unter Vom Kunden verwaltete Schlüssel.
Wenn Sie einen vom Kunden verwalteten Schlüssel verwenden, AWS KMS fallen Gebühren an. Weitere Informationen zur Preisgestaltung finden Sie unter AWS Key Management Service – Preise
Wie CloudWatch verwendet ein vom Kunden verwalteter Schlüssel für die Datensatzverschlüsselung
Wichtig
Die vom Kunden verwaltete Schlüsselverschlüsselung gilt für den default Datensatz. Der default Datensatz ist der einzige unterstützte Datensatz — Sie können keine zusätzlichen Datensätze erstellen.
Wenn Sie dem Datensatz einen vom Kunden verwalteten Schlüssel zuordnen, CloudWatch verwendet es den Schlüssel, um alle in diesem default Datensatz gespeicherten OTel-Metrikdaten zu verschlüsseln.
CloudWatch verwendet den Service Principal (cloudwatch.amazonaws.com) direkt mit wichtigen Richtlinienberechtigungen. CloudWatch verwendet keine Grants oder IAM-Rollen, um auf Ihren AWS KMS
Schlüssel zuzugreifen.
CloudWatch speichert keine Datenschlüssel im Cache. Speichert kms:Decrypt Antworten jedoch für bis zu 15 Minuten im CloudWatch Cache. Es kann bis zu 15 Minuten dauern, bis Änderungen an einer wichtigen Richtlinie wirksam werden.
CloudWatch verwendet den folgenden Verschlüsselungskontext für alle AWS KMS kryptografischen Operationen:
-
Schlüssel:
aws:cloudwatch:arn -
Wert:
arn:{partition}:cloudwatch:{region}:{account-id}:dataset/default
Konfiguration eines vom Kunden verwalteten Schlüssels für Dataset
Der AWS KMS Schlüssel, den Sie mit CloudWatch Dataset verwenden, muss die folgenden Anforderungen erfüllen:
-
Der Schlüssel muss ein symmetrischer Verschlüsselungsschlüssel (SYMMETRIC_DEFAULT) mit der Schlüsselverwendung ENCRYPT_DECRYPT sein. Asymmetrische Schlüssel werden nicht unterstützt.
-
Multi-Region Schlüssel werden nicht unterstützt.
-
Der Schlüssel muss sich im selben AWS-Region wie der Datensatz befinden.
-
Sie müssen den Schlüssel als vollqualifizierten Schlüssel-ARN angeben. Schlüsselaliase und Schlüssel-IDs werden nicht unterstützt.
Konfiguration wichtiger Richtlinienberechtigungen
Um einen vom Kunden verwalteten Schlüssel mit CloudWatch Dataset verwenden zu können, muss die Schlüsselrichtlinie die CloudWatch Erlaubnis zur Verwendung des Schlüssels gewähren. Das folgende Beispiel für eine Schlüsselrichtlinie gewährt CloudWatch die erforderlichen Berechtigungen und beinhaltet einen verwirrenden stellvertretenden Schutz.
Der Aufrufer, der den Datensatz verknüpft oder verwendet, muss über eine kms:Decrypt entsprechende Zugriffsberechtigung verfügen, die auf den Verschlüsselungskontext CloudWatch ViaService beschränkt ist, wie in der AllowCallerDecrypt folgenden Anweisung dargestellt. YourApplicationRoleErsetzen Sie es durch die IAM-Rolle, die zum Aufrufen der Dataset-APIs verwendet wird. CloudWatch
Beispiel Wichtige Richtlinie für die Verschlüsselung von CloudWatch Datensätzen
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCloudWatchDatasetDescribeKey", "Effect": "Allow", "Principal": { "Service": "cloudwatch.amazonaws.com" }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:cloudwatch:region:account-id:dataset/default" } } }, { "Sid": "AllowCloudWatchDatasetEncryption", "Effect": "Allow", "Principal": { "Service": "cloudwatch.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "account-id", "kms:EncryptionContext:aws:cloudwatch:arn": "arn:aws:cloudwatch:region:account-id:dataset/default" }, "ArnLike": { "aws:SourceArn": "arn:aws:cloudwatch:region:account-id:dataset/default" } } }, { "Sid": "AllowCallerDecrypt", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id:role/YourApplicationRole" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "cloudwatch.region.amazonaws.com", "kms:EncryptionContext:aws:cloudwatch:arn": "arn:aws:cloudwatch:region:account-id:dataset/default" } } } ] }
Ersetzen Sie account-id und region durch Ihre eigenen Werte.
Weitere Informationen zu wichtigen Richtlinien finden Sie AWS KMS im AWS Key Management Service Entwicklerhandbuch unter Wichtige Richtlinien.
Um einen vom Kunden verwalteten Schlüssel einem Datensatz zuzuordnen
Verwenden Sie die AssociateDatasetKmsKey API, um einen vom Kunden verwalteten Schlüssel mit einem Datensatz zu verknüpfen. Sie müssen default als Datensatz-ID angeben.
Führen Sie den folgenden Befehl aus, um einen vom Kunden verwalteten Schlüssel mithilfe der AWS CLI zuzuordnen:
aws cloudwatch associate-dataset-kms-key \ --dataset-name default \ --kms-key-arn arn:aws:kms:region:account-id:key/key-id
Ändern oder Entfernen der Verschlüsselungskonfiguration
Sie können den vom Kunden verwalteten Schlüssel, der Ihre Datensatzdaten verschlüsselt, ändern oder entfernen.
Um den vom Kunden verwalteten Schlüssel zu ändern
Um den vom Kunden verwalteten Schlüssel zu ersetzen, rufen Sie AssociateDatasetKmsKey erneut mit einem neuen Schlüssel-ARN auf. Der Anrufer muss sowohl für den aktuellen als auch für den neuen Schlüssel kms:Decrypt berechtigt sein. CloudWatch beginnt, den neuen Schlüssel für nachfolgende Verschlüsselungsvorgänge zu verwenden.
Anmerkung
Wenn der aktuell zugeordnete Schlüssel gelöscht wurde, zum Löschen geplant ist, der Import aussteht, nicht verfügbar ist oder deaktiviert wurde, CloudWatch keine kms:Decrypt Genehmigung für den aktuellen Schlüssel erforderlich ist und die Rotation fortgesetzt wird. Wenn der Schlüssel nur deaktiviert war, sollten Sie erwägen, ihn erneut zu aktivieren, anstatt ihn CloudWatch zu rotieren, da bei erneuter Aktivierung die Entschlüsselung vorhandener Metrikdaten, die mit diesem Schlüssel verschlüsselt wurden, wieder aufgenommen werden kann.
Um den vom Kunden verwalteten Schlüssel zu entfernen
Rufen DisassociateDatasetKmsKey Sie an, um den vom Kunden verwalteten Schlüssel zu entfernen und AWS zur eigenen Schlüsselverschlüsselung zurückzukehren. Der Anrufer muss über die kms:Decrypt Zugriffsrechte für den aktuell verknüpften Schlüssel verfügen.
aws cloudwatch disassociate-dataset-kms-key \ --dataset-name default
Anmerkung
Wenn der aktuell zugeordnete Schlüssel gelöscht wurde, zum Löschen geplant ist, der Import aussteht, nicht verfügbar ist oder deaktiviert wurde, CloudWatch keine kms:Decrypt Genehmigung für diesen Schlüssel erforderlich ist und die Trennung fortgesetzt wird. Wenn der Schlüssel nur deaktiviert war, sollten Sie erwägen, ihn erneut zu aktivieren, anstatt die Verknüpfung zu trennen, da Sie bei erneuter Aktivierung die Entschlüsselung Ihrer vorhandenen CloudWatch Metrikdaten fortsetzen können.
Wichtig
Nachdem Sie die Verknüpfung eines vom Kunden verwalteten Schlüssels aufgehoben haben, gibt es ein 3-stündiges Durchsetzungsfenster, in dem CloudWatch immer noch die Genehmigung des zuvor verknüpften Schlüssels erforderlich kms:Decrypt ist. Deaktivieren oder löschen Sie den Schlüssel in diesem Fenster nicht.
Wiederherstellung nach einem gelöschten oder unbrauchbaren KMS-Schlüssel
Wenn der mit Ihrem Datensatz verknüpfte, vom Kunden verwaltete KMS-Schlüssel gelöscht wird, zur Löschung geplant ist oder nicht mehr verfügbar ist, wechselt Ihr Datensatz in einen heruntergekommenen Zustand:
-
CloudWatch kann neue Metrikdaten, die Sie im Datensatz veröffentlichen, nicht verschlüsseln, und die Aufnahme schlägt fehl.
-
CloudWatch kann vorhandene Daten, die mit dem unbrauchbaren Schlüssel verschlüsselt wurden, nicht entschlüsseln, sodass Abfragevorgänge fehlschlagen.
Ihre Wiederherstellungsoptionen hängen vom Status des Schlüssels ab:
-
Der Schlüssel ist deaktiviert — Re-enable der Schlüssel rein AWS KMS. Dies ist der bevorzugte Wiederherstellungspfad, da CloudWatch Sie die Entschlüsselung Ihrer vorhandenen Metrikdaten fortsetzen können, nachdem der Schlüssel wieder aktiv ist.
-
Der Schlüssel muss noch gelöscht werden — Brechen Sie das Löschen des Schlüssels ab, AWS KMS bevor die Wartezeit abläuft. Wenn der Schlüssel wieder aktiviert ist, CloudWatch wird der normale Betrieb wieder aufgenommen.
-
Der Schlüssel wurde dauerhaft gelöscht oder kann aus anderen Gründen nicht wiederhergestellt werden — Entfernen Sie die veraltete Verknüpfung oder wechseln Sie zu einem neuen Schlüssel (siehe unten). Beachten Sie, dass vorhandene Daten, die mit dem gelöschten Schlüssel verschlüsselt wurden, dauerhaft nicht lesbar sind.
Wenn der Schlüssel dauerhaft gelöscht wird oder auf andere Weise nicht wiederhergestellt werden kann, können Sie die Verknüpfung aufheben oder zu einem neuen Schlüssel wechseln, ohne Zugriff auf den alten Schlüssel zu benötigen:
Entfernen Sie die veraltete Schlüsselzuordnung
Rufen Sie DisassociateDatasetKmsKey auf, um die Verknüpfung mit dem unbrauchbaren Schlüssel zu entfernen. CloudWatch kehrt für neue Daten zur AWS Verschlüsselung mit eigenem Schlüssel zurück. Bestehende Daten, die mit dem gelöschten Schlüssel verschlüsselt wurden, sind nicht mehr lesbar.
aws cloudwatch disassociate-dataset-kms-key \ --dataset-name default
Zu einem neuen Schlüssel wechseln
Rufen Sie AssociateDatasetKmsKey mit einem neuen, gültigen KMS-Schlüssel-ARN an. CloudWatchvalidiert den neuen Schlüssel und ordnet ihn Ihrem Datensatz zu. Der Zugriff auf den zuvor verknüpften Schlüssel ist nicht erforderlich. Bestehende Daten, die mit dem gelöschten Schlüssel verschlüsselt wurden, sind nicht mehr lesbar, aber neue Daten werden mit dem neuen Schlüssel verschlüsselt.
aws cloudwatch associate-dataset-kms-key \ --dataset-name default \ --kms-key-arn arn:aws:kms:region:account-id:key/new-key-id
Fehlerantworten für unbrauchbare Schlüssel
Wenn Sie DisassociateDatasetKmsKey oder AssociateDatasetKmsKey (Rotationspfad) aufrufen und auf den aktuell zugehörigen Schlüssel nicht zugegriffen werden kann, ist CloudWatch kein Zugriff auf diesen Schlüssel erforderlich und der Vorgang läuft normal ab. Dies gilt, wenn:
-
Der Schlüssel wurde gelöscht (KMS kehrt zurück
NotFoundException). -
Der Schlüssel befindet sich im
UnavailableStatusPendingDeletionPendingImport,, oder. -
Der Schlüssel wurde deaktiviert.
Wenn Sie diese Operationen aufrufen, obwohl auf den Schlüssel zugegriffen werden kann, der Aufrufer jedoch keine kms:Decrypt Berechtigung hat, schlägt der Vorgang mit einem der folgenden Fehler fehl. Jede Fehlermeldung enthält die KMS-Anforderungs-ID zur Problembehandlung.
ResourceNotFoundException-
Der angegebene KMS-Schlüssel ist nicht vorhanden. Format der Nachricht:
KMS keykey-arndoes not exist. KMS request id:request-id. ValidationException-
Der angegebene KMS-Schlüssel befindet sich in einem unbrauchbaren Zustand, der auf diesem Codepfad nicht toleriert wird. Nachrichtenformat:
KMS keykey-arnis in an unusable state:state-description. KMS request id:request-id. AccessDeniedException-
Der angegebene KMS-Schlüssel ist deaktiviert, oder der Anrufer hat keine Berechtigung. Format der Nachricht:
KMS keykey-arnis disabled. KMS request id:request-id.
Weitere Informationen zu KMS-Schlüsselzuständen finden Sie im AWS Key Management Service Entwicklerhandbuch unter Schlüsselstatus von AWS KMS Schlüsseln.
Einschränkung des Zugriffs auf wichtige Richtlinien
Sie können die Bedingungen in der Schlüsselrichtlinie verwenden, um den Zugriff auf Ihren AWS KMS Schlüssel einzuschränken.
- Bedingung für die Verschlüsselung, Kontext
-
Verwenden Sie den
kms:EncryptionContext:aws:cloudwatch:arnBedingungsschlüssel, um die Verwendung von Schlüsseln auf IhrendefaultDatensatz zu beschränken."Condition": { "StringEquals": { "kms:EncryptionContext:aws:cloudwatch:arn": "arn:aws:cloudwatch:region:account-id:dataset/default" } } - Verwirrter stellvertretender Schutz
-
Verwenden Sie die
aws:SourceAccountBedingungenaws:SourceArnund, um kontoübergreifende Angriffe verwirrter Stellvertreter zu verhindern."Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:cloudwatch:region:account-id:dataset/default" } } - kms: Zustand ViaService
-
Verwenden Sie den
kms:ViaServiceBedingungsschlüssel, um die Verwendung des Schlüssels auf Anfragen zu beschränken, die von CloudWatch."Condition": { "StringEquals": { "kms:ViaService": "cloudwatch.region.amazonaws.com" } }
Überwachung der CloudWatch Interaktion mit AWS KMS
Sie können AWS CloudTrail es verwenden, um die Anfragen zu verfolgen, die in Ihrem Namen AWS KMS an Sie CloudWatch gesendet werden. Die AWS CloudTrail Protokolleinträge verwenden den Dienstprinzipal cloudwatch.amazonaws.com und ViaService den Wertcloudwatch..{region}.amazonaws.com
Die folgenden CloudTrail Ereignisnamen erscheinen in Protokolleinträgen für CloudWatch Dataset-Verschlüsselungsvorgänge:
GenerateDataKeyEncryptDecryptDescribeKeyReEncrypt
Jeder Protokolleintrag enthält den Verschlüsselungskontext, den Sie verwenden können, um den spezifischen Datensatz zu identifizieren, für den der Vorgang gilt.
Weitere Informationen zur Überwachung der AWS KMS Schlüsselnutzung finden Sie unter Überwachung AWS Key Management Service im AWS Key Management Service Entwicklerhandbuch.