Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Chiffrement au repos pour les OpenTelemetry métriques
Qu'est-ce qu'un CloudWatch ensemble de données
OpenTelemetry Les métriques (OTel) que vous envoyez à Amazon CloudWatch sont stockées dans une ressource appelée ensemble de données. Chacun Compte AWS possède un default ensemble de données dans chaque région où se trouvent toutes les métriques de l'OTel. Le default jeu de données est le seul jeu de données pris en charge. Vous ne pouvez pas créer de jeux de données supplémentaires.
Les ensembles de données peuvent être chiffrés et étiquetés comme les autres AWS ressources. L'ARN du jeu de données a le format suivant :
arn:{partition}:cloudwatch:{region}:{account-id}:dataset/default
Pour consulter la configuration de chiffrement actuelle de votre ensemble de données, utilisez l'GetDatasetAPI :
aws cloudwatch get-dataset \ --dataset-identifier default
Si une clé gérée par le client est associée à l'ensemble de données, la réponse inclut l'ARN de la clé. Si aucune clé gérée par le client n'est associée, l'ensemble de données est chiffré avec une clé AWS détenue.
Options de chiffrement au repos
CloudWatch chiffre toujours les données de l'ensemble de données au repos. Par défaut, CloudWatch chiffre toutes les données inactives à l'aide de clés AWS détenues. Il n'est pas nécessaire de prendre des mesures pour protéger vos données à l'aide de clés que vous AWS possédez. Pour plus d’informations, consultez AWS owned keys dans le Guide du développeur AWS Key Management Service .
Si vous souhaitez gérer les clés utilisées pour chiffrer les données de votre ensemble de données, vous pouvez utiliser une clé gérée par le client dans AWS Key Management Service (AWS KMS). Pour plus d'informations, consultez la section Clés gérées par le client dans le Guide du AWS Key Management Service développeur.
Lorsque vous utilisez une clé gérée par le client, AWS KMS des frais s'appliquent. Pour plus d’informations sur la tarification, consultez Tarification d’AWS Key Management Service
Comment CloudWatch utilise une clé gérée par le client pour le chiffrement des ensembles de données
Important
Le chiffrement par clé géré par le client s'applique à l'defaultensemble de données. Le default jeu de données est le seul jeu de données pris en charge. Vous ne pouvez pas créer de jeux de données supplémentaires.
Lorsque vous associez une clé gérée par le client à l'defaultensemble de données CloudWatch, utilisez la clé pour chiffrer toutes les données métriques OTel stockées dans cet ensemble de données.
CloudWatch utilise le principal de service (cloudwatch.amazonaws.com) directement avec les autorisations politiques clés. CloudWatch n'utilise pas de licences ou de rôles IAM pour accéder à votre AWS KMS
clé.
CloudWatch ne met pas en cache les clés de données. Toutefois, met en CloudWatch cache kms:Decrypt les réponses pendant 15 minutes maximum. Les modifications apportées à une politique clé peuvent prendre jusqu'à 15 minutes pour prendre effet.
CloudWatch utilise le contexte de chiffrement suivant pour toutes les opérations AWS KMS cryptographiques :
-
Clé :
aws:cloudwatch:arn -
Valeur :
arn:{partition}:cloudwatch:{region}:{account-id}:dataset/default
Configuration d'une clé gérée par le client pour Dataset
La AWS KMS clé que vous utilisez avec CloudWatch Dataset doit répondre aux exigences suivantes :
-
La clé doit être une clé de chiffrement symétrique (SYMMETRIC_DEFAULT) utilisant la clé ENCRYPT_DECRYPT. Les touches asymétriques ne sont pas prises en charge.
-
Multi-Region les touches ne sont pas prises en charge.
-
La clé doit être identique à l' Région AWS ensemble de données.
-
Vous devez spécifier la clé en tant qu'ARN de clé entièrement qualifié. Les alias et identifiants de clé ne sont pas pris en charge.
Configuration des autorisations stratégiques clés
Pour utiliser une clé gérée par le client avec CloudWatch Dataset, la politique en matière de clés doit CloudWatch autoriser l'utilisation de la clé. L'exemple de politique clé suivant accorde CloudWatch les autorisations nécessaires et inclut une protection adjointe confuse.
L'appelant qui associe ou utilise l'ensemble de données doit disposer d'une kms:Decrypt autorisation, limitée au contexte de chiffrement CloudWatch ViaService et de cryptage, comme indiqué dans la AllowCallerDecrypt déclaration ci-dessous. Remplacez YourApplicationRole par le rôle IAM utilisé pour appeler les API du CloudWatch jeu de données.
Exemple Politique clé pour le chiffrement des CloudWatch ensembles de données
{ "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" } } } ] }
Remplacez account-id et region par vos propres valeurs.
Pour plus d'informations sur les politiques clés, consultez la section Politiques clés du Guide du AWS Key Management Service développeur. AWS KMS
Pour associer une clé gérée par le client à un ensemble de données
Utilisez l'AssociateDatasetKmsKeyAPI pour associer une clé gérée par le client à un ensemble de données. Vous devez le spécifier default comme identifiant du jeu de données.
Pour associer une clé gérée par le client à l'aide de la AWS CLI, exécutez la commande suivante :
aws cloudwatch associate-dataset-kms-key \ --dataset-name default \ --kms-key-arn arn:aws:kms:region:account-id:key/key-id
Modification ou suppression de la configuration de chiffrement
Vous pouvez modifier ou supprimer la clé gérée par le client qui chiffre les données de votre ensemble de données.
Pour modifier la clé gérée par le client
Pour remplacer la clé gérée par le client, appelez AssociateDatasetKmsKey à nouveau avec une nouvelle clé ARN. L'appelant doit avoir l'kms:Decryptautorisation d'utiliser à la fois la clé actuelle et la nouvelle clé. CloudWatch commence à utiliser la nouvelle clé pour les opérations de chiffrement suivantes.
Pour supprimer la clé gérée par le client
Pour supprimer la clé gérée par le client et revenir au chiffrement AWS par clé détenue, appelezDisassociateDatasetKmsKey. L'appelant doit être kms:Decrypt autorisé à utiliser la clé actuellement associée.
aws cloudwatch disassociate-dataset-kms-key \ --dataset-name default
Important
Une fois que vous avez dissocié une clé gérée par le client, il reste un délai d'application de 3 heures pendant lequel vous devez CloudWatch toujours kms:Decrypt obtenir une autorisation sur la clé précédemment associée. Ne désactivez ni ne supprimez la clé pendant cette fenêtre.
Si votre clé est désactivée, vous devez la réactiver avant de pouvoir la dissocier du jeu de données.
Délimitation des principaux accès aux politiques
Vous pouvez utiliser les conditions de la politique relative aux clés pour limiter l'accès à votre AWS KMS clé.
- Condition du contexte de chiffrement
-
Utilisez la clé de
kms:EncryptionContext:aws:cloudwatch:arncondition pour limiter l'utilisation des clés à votredefaultensemble de données."Condition": { "StringEquals": { "kms:EncryptionContext:aws:cloudwatch:arn": "arn:aws:cloudwatch:region:account-id:dataset/default" } } - Protection adjointe confuse
-
Utilisez les
aws:SourceAccountconditionsaws:SourceArnet pour empêcher les attaques d'adjoints confus entre comptes multiples."Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:cloudwatch:region:account-id:dataset/default" } } - km : ViaService état
-
Utilisez la clé de
kms:ViaServicecondition pour limiter l'utilisation de la clé aux demandes provenant de CloudWatch."Condition": { "StringEquals": { "kms:ViaService": "cloudwatch.region.amazonaws.com" } }
Surveillance de CloudWatch l'interaction avec AWS KMS
Vous pouvez l' AWS CloudTrail utiliser pour suivre les demandes CloudWatch envoyées AWS KMS en votre nom. Les entrées du AWS CloudTrail journal utilisent le principal de service cloudwatch.amazonaws.com et une ViaService valeur decloudwatch..{region}.amazonaws.com
Les noms d' CloudTrail événements suivants apparaissent dans les entrées du journal pour les opérations CloudWatch de chiffrement des ensembles de données :
GenerateDataKeyEncryptDecryptDescribeKeyReEncrypt
Chaque entrée de journal inclut le contexte de chiffrement, que vous pouvez utiliser pour identifier l'ensemble de données spécifique auquel l'opération s'applique.
Pour plus d'informations sur la surveillance de l'utilisation des AWS KMS clés, consultez la section Surveillance AWS Key Management Service dans le guide du AWS Key Management Service développeur.