Chiffrement au repos - Amazon Managed Service for Prometheus

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

Par défaut, Amazon Managed Service for Prometheus vous fournit automatiquement le chiffrement au repos, en AWS utilisant les clés de chiffrement que vous possédez.

  • AWS clés détenues : Amazon Managed Service for Prometheus utilise ces clés pour chiffrer automatiquement les données téléchargées sur votre espace de travail. Vous ne pouvez pas consulter, gérer ou utiliser AWS les clés que vous possédez, ni auditer leur utilisation. Toutefois, vous n'avez pas besoin de prendre de mesure ou de modifier les programmes pour protéger les clés qui chiffrent vos données. Pour plus d’informations, consultez Clés détenues par AWS dans le Guide du développeur AWS Key Management Service .

Le chiffrement au repos permet de réduire la charge opérationnelle et la complexité liées à la protection des données sensibles des clients, telles que les informations personnelles identifiables. Il vous permet de créer des applications sécurisées qui répondent aux exigences réglementaires et de conformité strictes en matière de chiffrement.

Vous pouvez également choisir d'utiliser une clé gérée par le client lorsque vous créez votre espace de travail :

  • Clés gérées par le client : Amazon Managed Service for Prometheus prend en charge l’utilisation d’une clé symétrique gérée par le client, que vous créez, détenez et gérez pour chiffrer les données de l’espace de travail. Étant donné que vous avez le contrôle total du chiffrement, vous pouvez effectuer les tâches suivantes :

    • Établissement et gestion des stratégies de clé

    • Établissement et gestion des politiques IAM et des octrois

    • Activation et désactivation des stratégies de clé

    • Rotation des matériaux de chiffrement de clé

    • Ajout de balises

    • Création d'alias de clé

    • Planification des clés pour la suppression

    Pour plus d'informations, consultez Clés gérées par le client dans le Manuel du développeur AWS Key Management Service .

Choisissez d'utiliser avec soin les clés gérées par le client ou les clés AWS détenues par le client. Les espaces de travail créés avec des clés gérées par le client ne peuvent pas être convertis ultérieurement pour utiliser des clés AWS détenues (et vice versa).

Note

Amazon Managed Service for Prometheus active automatiquement le chiffrement au repos à AWS l'aide de clés détenues afin de protéger gratuitement vos données.

Toutefois, AWS KMS des frais s'appliquent pour l'utilisation d'une clé gérée par le client. Pour de plus amples informations sur la tarification, veuillez consulter AWS Key Management Service Tarification.

Pour plus d'informations AWS KMS, voir Qu'est-ce que c'est AWS Key Management Service ?

Note

Les espaces de travail créés avec les clés gérées par le client ne peuvent pas utiliser les collecteurs gérés AWS pour l'ingestion.

Comment Amazon Managed Service for Prometheus utilise les subventions dans AWS KMS

Amazon Managed Service for Prometheus requiert trois attributions pour utiliser votre clé gérée par le client.

Lorsque vous créez un espace de travail Amazon Managed Service for Prometheus chiffré à l'aide d'une clé gérée par le client, Amazon Managed Service for Prometheus crée les trois subventions en votre nom en envoyant des demandes à. CreateGrant AWS KMS Les subventions AWS KMS sont utilisées pour permettre à Amazon Managed Service for Prometheus d'accéder à la clé KMS de votre compte, même si vous n'êtes pas appelé directement en votre nom (par exemple, lorsque vous stockez des données de métriques extraites d'un cluster Amazon EKS).

Amazon Managed Service for Prometheus nécessite que les attributions utilisent la clé gérée par le client pour les opérations internes suivantes :

  • Envoyez DescribeKeydes demandes AWS KMS à pour vérifier que la clé KMS symétrique gérée par le client fournie lors de la création d'un espace de travail est valide.

  • Envoyez GenerateDataKeydes demandes AWS KMS à pour générer des clés de données chiffrées par votre clé gérée par le client.

  • Envoyez des demandes de déchiffrement AWS KMS à pour déchiffrer les clés de données chiffrées afin qu'elles puissent être utilisées pour chiffrer vos données.

Amazon Managed Service for Prometheus octroie trois autorisations à AWS KMS la clé, ce qui permet à Amazon Managed Service for Prometheus d'utiliser la clé en votre nom. Vous pouvez supprimer l'accès à la clé en modifiant la politique relative aux clés, en désactivant la clé ou en révoquant l'attribution. Vous devez comprendre les conséquences de ces actions avant de les exécuter. Cela peut entraîner une perte de données dans votre espace de travail.

Si vous supprimez de quelque façon que ce soit l’accès à l’une des attributions, Amazon Managed Service for Prometheus ne pourra accéder à aucune des données chiffrées par la clé gérée par le client, ni stocker les nouvelles données envoyées à l’espace de travail, ce qui affecte les opérations dépendant de ces données. Les nouvelles données envoyées à l'espace de travail ne seront pas accessibles et risquent d'être définitivement perdues.

Avertissement
  • Si vous désactivez la clé ou si vous supprimez l'accès à Amazon Managed Service for Prometheus dans la politique relative aux clés, les données de l'espace de travail ne sont plus accessibles. Les nouvelles données envoyées à l'espace de travail ne seront pas accessibles et risquent d'être définitivement perdues.

    Vous pouvez accéder aux données de l'espace de travail et recommencer à recevoir de nouvelles données en rétablissant l'accès d’Amazon Managed Service for Prometheus à la clé.

  • Si vous révoquez une attribution, elle ne peut pas être recréée et les données de l'espace de travail sont définitivement perdues.

Étape 1 : Créer une clé gérée par le client

Vous pouvez créer une clé symétrique gérée par le client à l'aide de AWS Management Console, ou des AWS KMS API. Il n'est pas nécessaire que la clé se trouve sur le même compte que l'espace de travail Amazon Managed Service for Prometheus, sous réserve que vous fournissiez l'accès correct via la politique, comme décrit ci-dessous.

Pour créer une clé symétrique gérée par le client

Suivez les étapes de la rubrique Création d'une clé symétrique gérée par le client dans le Guide du développeur AWS Key Management Service .

Stratégie de clé

Les politiques de clés contrôlent l’accès à votre clé gérée par le client. Chaque clé gérée par le client doit avoir exactement une stratégie de clé, qui contient des instructions qui déterminent les personnes pouvant utiliser la clé et comment elles peuvent l’utiliser. Lorsque vous créez votre clé gérée par le client, vous pouvez spécifier une stratégie de clé. Pour plus d'informations, consultez Gestion de l'accès aux clés gérées par le client dans le Guide du développeur AWS Key Management Service .

Pour utiliser votre clé gérée par le client avec les espaces de travail Amazon Managed Service for Prometheus, les opérations d'API suivantes doivent être autorisées dans la politique des clés :

  • kms:CreateGrant : ajoute une attribution à une clé gérée par le client. Octroie un accès de contrôle à une clé KMS spécifiée, ce qui permet d'accéder aux opérations d'attribution requises par Amazon Managed Service for Prometheus. Pour plus d'informations, consultez Utilisation des attributions dans le Guide du développeur AWS Key Management Service .

    Amazon Managed Service for Prometheus peut ainsi exécuter les tâches suivantes :

    • Appelez GenerateDataKey pour générer une clé de données chiffrée et la stocker, car la clé de données n'est pas immédiatement utilisée pour chiffrer.

    • Appelez Decrypt pour utiliser la clé de données chiffrée stockée afin d'accéder aux données chiffrées.

  • kms:DescribeKey : fournit les détails des clés gérées par le client pour permettre à Amazon Managed Service for Prometheus de valider la clé.

Voici quelques exemples de déclarations de politique pour Amazon Managed Service for Prometheus :

"Statement" : [ { "Sid" : "Allow access to Amazon Managed Service for Prometheus principal within your account", "Effect" : "Allow", "Principal" : { "AWS" : "*" }, "Action" : [ "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource" : "*", "Condition" : { "StringEquals" : { "kms:ViaService" : "aps.region.amazonaws.com", "kms:CallerAccount" : "111122223333" } }, { "Sid": "Allow access for key administrators - not required for Amazon Managed Service for Prometheus", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:*" ], "Resource": "arn:aws:kms:region:111122223333:key/key_ID" }, <other statements needed for other non-Amazon Managed Service for Prometheus scenarios> ]

Étape 2 : Spécification d'une clé gérée par le client pour Amazon Managed Service for Prometheus

Lorsque vous créez un espace de travail, vous pouvez spécifier la clé gérée par le client en saisissant un ARN de clé KMS, qu'Amazon Managed Service for Prometheus utilise pour chiffrer les données stockées dans l'espace de travail.

Étape 3 : Accès aux données depuis d'autres services, tels qu'Amazon Managed Grafana

Cette étape est facultative. Elle n'est requise que si vous devez accéder à vos données Amazon Managed Service for Prometheus depuis un autre service.

Vos données cryptées ne sont pas accessibles depuis d'autres services, à moins qu'ils n'aient également accès à la AWS KMS clé. Par exemple, si vous souhaitez utiliser Amazon Managed Grafana pour créer un tableau de bord ou une alerte concernant vos données, vous devez autoriser Amazon Managed Grafana à accéder à la clé.

Pour donner à Amazon Managed Grafana l'accès à votre clé gérée par le client
  1. Dans votre liste d'espaces de travail Amazon Managed Grafana, sélectionnez le nom de l'espace de travail auquel vous souhaitez avoir accès à Amazon Managed Service for Prometheus. Cela vous montre des informations récapitulatives sur votre espace de travail Amazon Managed Grafana.

  2. Notez le nom du rôle IAM utilisé par votre espace de travail. Le nom est au formatAmazonGrafanaServiceRole-<unique-id>. La console affiche l'ARN complet du rôle. Vous spécifierez ce nom dans la AWS KMS console lors d'une étape ultérieure.

  3. Dans votre liste de clés gérées par le AWS KMS client, choisissez la clé gérée par le client que vous avez utilisée lors de la création de votre espace de travail Amazon Managed Service for Prometheus. Cela ouvre la page des principaux détails de configuration.

  4. À côté de Utilisateurs clés, sélectionnez le bouton Ajouter.

  5. Dans la liste des noms, choisissez le rôle Amazon Managed Grafana IAM indiqué ci-dessus. Pour faciliter la recherche, vous pouvez également effectuer une recherche par nom.

  6. Choisissez Ajouter pour ajouter le rôle IAM à la liste des utilisateurs clés.

Votre espace de travail Amazon Managed Grafana peut désormais accéder aux données de votre espace de travail Amazon Managed Service for Prometheus. Vous pouvez ajouter d'autres utilisateurs ou rôles aux utilisateurs principaux pour permettre à d'autres services d'accéder à votre espace de travail.

Contexte de chiffrement Amazon Managed Service for Prometheus

Un contexte de chiffrement est un ensemble facultatif de paires clé-valeur qui contient des informations contextuelles supplémentaires sur les données.

AWS KMS utilise le contexte de chiffrement comme données authentifiées supplémentaires pour prendre en charge le chiffrement authentifié. Lorsque vous incluez un contexte de chiffrement dans une demande de chiffrement de données, AWS KMS lie le contexte de chiffrement aux données chiffrées. Pour déchiffrer les données, vous devez inclure le même contexte de chiffrement dans la demande.

Contexte de chiffrement Amazon Managed Service for Prometheus

Amazon Managed Service for Prometheus utilise le même contexte de chiffrement dans AWS KMS toutes les opérations cryptographiques, où la clé et la valeur aws:amp:arn sont le nom de ressource Amazon (ARN) de l'espace de travail.

"encryptionContext": { "aws:aps:arn": "arn:aws:aps:us-west-2:111122223333:workspace/ws-sample-1234-abcd-56ef-7890abcd12ef" }

Utilisation du contexte de chiffrement pour la surveillance

Lorsque vous utilisez une clé symétrique gérée par le client pour chiffrer les données de votre espace de travail, vous pouvez également utiliser le contexte de chiffrement dans les enregistrements et les journaux d'audit pour identifier la manière dont la clé gérée par le client est utilisée. Le contexte de chiffrement apparaît également dans les journaux générés par Amazon Logs AWS CloudTrail ou Amazon CloudWatch Logs.

Utilisation du contexte de chiffrement pour contrôler l'accès à votre clé gérée par le client

Vous pouvez utiliser le contexte de chiffrement dans les stratégies de clé et les politiques IAM comme conditions pour contrôler l'accès à votre clé symétrique gérée par le client. Vous pouvez également utiliser des contraintes de contexte de chiffrement dans un octroi.

Amazon Managed Service for Prometheus utilise une contrainte de contexte de chiffrement dans les octrois pour contrôler l'accès à la clé gérée par le client dans votre compte ou région. La contrainte d'octroi exige que les opérations autorisées par l'octroi utilisent le contexte de chiffrement spécifié.

Vous trouverez ci-dessous des exemples de déclarations de stratégie de clé permettant d'accorder l'accès à une clé gérée par le client dans un contexte de chiffrement spécifique. La condition énoncée dans cette déclaration de stratégie exige que les octrois comportent une contrainte de contexte de chiffrement qui spécifie le contexte de chiffrement.

{ "Sid": "Enable DescribeKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": "kms:DescribeKey", "Resource": "*" }, { "Sid": "Enable CreateGrant", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:aps:arn": "arn:aws:aps:us-west-2:111122223333:workspace/ws-sample-1234-abcd-56ef-7890abcd12ef" } } }

Surveillance des clés de chiffrement pour Amazon Managed Service for Prometheus

Lorsque vous utilisez une clé gérée par le AWS KMS client avec vos espaces de travail Amazon Managed Service for Prometheus, vous pouvez utiliser AWS CloudTrailAmazon Logs pour suivre les demandes CloudWatch auxquelles Amazon Managed Service for Prometheus envoie. AWS KMS

Les exemples suivants sont AWS CloudTrail des événements pourCreateGrant, GenerateDataKeyDecrypt, et DescribeKey pour surveiller les opérations KMS appelées par Amazon Managed Service pour Prometheus afin d'accéder aux données chiffrées par votre clé gérée par le client :

CreateGrant

Lorsque vous utilisez une clé gérée par le AWS KMS client pour chiffrer votre espace de travail, Amazon Managed Service for Prometheus envoie CreateGrant trois demandes en votre nom pour accéder à la clé KMS que vous avez spécifiée. Les attributions créées par Amazon Managed Service for Prometheus sont spécifiques à la ressource associée à la clé AWS KMS gérée par le client.

L'exemple d'événement suivant enregistre une opération CreateGrant :

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "TESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "accessKeyId": "EXAMPLE-KEY-ID1", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "TESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-04-22T17:02:00Z" } }, "invokedBy": "aps.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "retiringPrincipal": "aps.region.amazonaws.com", "operations": [ "GenerateDataKey", "Decrypt", "DescribeKey" ], "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "granteePrincipal": "aps.region.amazonaws.com" }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": false, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333" }
GenerateDataKey

Lorsque vous activez une clé gérée par le AWS KMS client pour votre espace de travail, Amazon Managed Service for Prometheus crée une clé unique. Il envoie une GenerateDataKey demande AWS KMS qui spécifie la clé gérée par le AWS KMS client pour la ressource.

L'exemple d'événement suivant enregistre l'opération GenerateDataKey :

{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "aps.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "encryptionContext": { "aws:aps:arn": "arn:aws:aps:us-west-2:111122223333:workspace/ws-sample-1234-abcd-56ef-7890abcd12ef" }, "keySpec": "AES_256", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333", "sharedEventID": "57f5dbee-16da-413e-979f-2c4c6663475e" }
Decrypt

Lorsqu'une requête est générée sur un espace de travail chiffré, Amazon Managed Service for Prometheus appelle l’opération Decrypt pour utiliser la clé de données chiffrée stockée afin d'accéder aux données chiffrées.

L'exemple d'événement suivant enregistre l'opération Decrypt :

{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "aps.amazonaws.com" }, "eventTime": "2021-04-22T17:10:51Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "encryptionContext": { "aws:aps:arn": "arn:aws:aps:us-west-2:111122223333:workspace/ws-sample-1234-abcd-56ef-7890abcd12ef" }, "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333", "sharedEventID": "dc129381-1d94-49bd-b522-f56a3482d088" }
DescribeKey

Amazon Managed Service for Prometheus utilise l’opération DescribeKey pour vérifier si la clé AWS KMS gérée par le client associée à votre espace de travail existe dans le compte et dans la région.

L'exemple d'événement suivant enregistre l'opération DescribeKey :

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "TESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "accessKeyId": "EXAMPLE-KEY-ID1", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "TESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-04-22T17:02:00Z" } }, "invokedBy": "aps.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "DescribeKey", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "keyId": "00dd0db0-0000-0000-ac00-b0c000SAMPLE" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333" }

En savoir plus

Les ressources suivantes fournissent plus d'informations sur le chiffrement des données au repos.