View a markdown version of this page

Chiffrement au repos pour AWS DevOps l'agent - AWS DevOps Agent

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 AWS DevOps l'agent

AWS DevOps L'agent chiffre toutes les données clients au repos. Par défaut, AWS DevOps l'Agent AWS utilise ses propres clés pour chiffrer automatiquement vos données sans frais supplémentaires. Vous ne pouvez pas consulter, gérer ou auditer l'utilisation des clés AWS détenues. Cependant, vous n'avez aucune action à effectuer pour protéger ces clés. Vos données sont automatiquement sécurisées.

Vous pouvez choisir de chiffrer vos données à l'aide d'une clé symétrique gérée par le client que vous créez, détenez et gérez dans AWS Key Management Service (AWS KMS). Comme vous avez le contrôle total de cette couche de chiffrement, vous pouvez effectuer des tâches telles que les suivantes :

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

  • 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 la section Clés gérées par le client dans le Guide du développeur du service de gestion des AWS clés.

Note

AWS DevOps L'agent active automatiquement le chiffrement au repos à l'aide de clés AWS détenues pour protéger gratuitement les données des clients. Les frais AWS KMS standard s'appliquent lorsque vous utilisez une clé gérée par le client. Pour plus d'informations sur la tarification, consultez la section Tarification du service de gestion des AWS clés.

Clés gérées par le client

Les clés gérées par le client sont des clés KMS de votre AWS compte que vous créez, détenez et gérez. Vous avez le contrôle total de ces clés KMS, y compris l'établissement et la mise à jour de leurs politiques clés.

Lorsque vous configurez une clé gérée par le client, AWS DevOps l'agent l'utilise pour protéger les données de ressources sensibles. AWS DevOps L'agent utilise le chiffrement des enveloppes avec le jeu de clés hiérarchique du SDK de AWS chiffrement. Votre clé KMS est utilisée pour générer des clés de branche qui, à leur tour, protègent vos données.

Vous pouvez spécifier une clé gérée par le client lorsque vous créez les ressources suivantes :

  • Espace agent : chiffre les détails de l'espace agent et le contenu créés à partir de l'application Web de l' DevOps agent en rapport avec les enquêtes, les compétences et le chat.

  • Service : chiffre les informations d'identification des services tiers au repos.

Pour configurer une clé gérée par le client dans AWS DevOps l'Agent, procédez comme suit.

É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 la console AWS KMS ou de l'API AWS KMS. La clé doit répondre aux exigences suivantes :

Propriété Exigence
Type de clé Symétrique
Spécifications de la clé SYMMETRIC_DEFAULT
Utilisation de la clé ENCRYPT_DECRYPT
Note

AWS DevOps L'agent ne prend en charge que les clés KMS de chiffrement symétriques avec la spécification de la SYMMETRIC_DEFAULT clé et l'utilisation de la ENCRYPT_DECRYPT clé. Les clés multirégionales et les clés asymétriques ne sont actuellement pas prises en charge.

Pour plus d'informations, consultez la section Création d'une clé symétrique gérée par le client dans le Guide du développeur du service de gestion des AWS clés.

Étape 2 : définir la politique clé

Les stratégies 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.

Votre politique clé doit accorder des autorisations à la fois au principal appelant (votre identité IAM) et au service de l' AWS DevOps agent. AWS DevOps L'agent accède à votre clé à l'aide de deux ensembles d'informations d'identification :

  1. Vos informations d'identification de l'appelant : utilisées pour toutes les opérations synchrones, y compris la validation des clés, le chiffrement au moment de la création des ressources et tout appel d'API renvoyant une réponse directe à l'appelant.

  2. AWS DevOps Agent de service principal : utilisé pour les opérations asynchrones exécutées en arrière-plan, telles que les enquêtes opérationnelles, l'analyse des incidents, la corrélation des événements et la génération d'analyses des causes premières.

Le tableau suivant répertorie les actions KMS requises :

Action KMS Description
kms:DescribeKey Valider la configuration des clés au moment de la création de la ressource
kms:GenerateDataKey Génération de clés de chiffrement des données pour le chiffrement des enveloppes
kms:Decrypt Déchiffrer des données
kms:Encrypt Chiffrer des données
kms:ReEncrypt Chiffrez à nouveau les données sous la même clé ou une clé différente

AWS DevOps L'agent valide toutes ces autorisations au moment de la configuration à l'aide d'opérations d'exécution à sec. Si une autorisation est manquante, la demande échoue avec une exception.

Voici un exemple de stratégie de clé. Remplacez les valeurs de l'espace réservé par les vôtres.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCallerAccessViaService", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/DevOpsAgentUserRole" }, "Action": [ "kms:DescribeKey", "kms:GenerateDataKey*", "kms:Decrypt", "kms:Encrypt", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "aidevops.us-east-1.amazonaws.com" } } }, { "Sid": "AllowDevOpsAgentServiceDescribeKeyAccess", "Effect": "Allow", "Principal": { "Service": "aidevops.amazonaws.com" }, "Action": [ "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "AllowDevOpsAgentAccessForAgentSpace", "Effect": "Allow", "Principal": { "Service": "aidevops.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt", "kms:Encrypt", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:aidevops:us-east-1:111122223333:agentspace/*" }, "StringLike": { "kms:EncryptionContext:aws-crypto-ec:aws:aidevops:arn": "arn:aws:aidevops:us-east-1:111122223333:agentspace/*" } } }, { "Sid": "AllowDevOpsAgentAccessForService", "Effect": "Allow", "Principal": { "Service": "aidevops.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt", "kms:Encrypt", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:aidevops:us-east-1:111122223333:service/*" }, "StringLike": { "kms:EncryptionContext:aws-crypto-ec:aws:aidevops:arn": "arn:aws:aidevops:us-east-1:111122223333:service/*" } } } ] }

La politique contient les déclarations suivantes :

  • AllowKeyAdministration— Accorde au root du compte un accès administratif complet à la clé. Remplacez 111122223333 par votre identifiant de AWS compte.

  • AllowCallerAccessViaService— Accorde à vos principaux IAM les autorisations KMS requises pour toutes les opérations synchrones AWS DevOps de l'agent. Cela inclut la validation des clés au moment de la création de la ressource, ainsi que les opérations de chiffrement et de déchiffrement pour tout appel d'API renvoyant une réponse directe à l'appelant. Cette kms:ViaService condition garantit que vous ne pouvez utiliser la clé que via le service AWS DevOps Agent. 111122223333Remplacez-le par votre numéro de AWS compte et us-east-1 par votre AWS région.

  • AllowDevOpsAgentServiceAccessForAgentSpace/AllowDevOpsAgentServiceAccessForService— Accorde au principal du aidevops.amazonaws.com service les autorisations KMS requises pour les opérations asynchrones. AWS DevOps L'agent utilise ce principe de service pour chiffrer et déchiffrer vos données lorsqu'il effectue des opérations en arrière-plan, telles que des enquêtes opérationnelles, l'analyse d'incidents, la corrélation d'événements entre les services et la génération d'analyses des causes premières. Sans cet accès, AWS DevOps l'agent ne peut pas lire les données chiffrées nécessaires pour mener des enquêtes en votre nom. La aws:SourceArn condition restreint l'accès aux demandes provenant des ressources de votre AWS DevOps agent et garantit que le kms:EncryptionContext contexte de chiffrement correspond à votre ressource ARNs. 111122223333Remplacez-le par votre numéro de AWS compte et us-east-1 par votre AWS région.

Pour plus d'informations sur les politiques clés, consultez la section Politiques clés dans AWS KMS dans le Guide du développeur du service de gestion des AWS clés.

Étape 3 : Spécifier la clé lors de la création d'une ressource

Après avoir créé votre clé et configuré la politique des clés, vous pouvez spécifier la clé lors de la création des ressources de AWS DevOps l'agent.

Console

Pour configurer une clé gérée par le client lors de la création d'un espace agent dans la console :

  1. Ouvrez la console de AWS DevOps l'agent.

  2. Choisissez Create Agent Space ou Register Service.

  3. Entrez les détails de l'espace de l'agent (nom, description et rôle IAM).

  4. Développez la section Configuration avancée.

  5. Sous Type de clé de chiffrement, sélectionnez Clé gérée par le client.

  6. Choisissez une clé KMS dans la liste déroulante ou entrez un ARN de clé KMS.

  7. Passez en revue la politique clé affichée dans la section extensible Politique clé. Assurez-vous d'avoir joint cette politique à votre clé KMS. Vous pouvez utiliser le bouton de copie pour copier la politique.

  8. Terminez la configuration restante et choisissez Create.

Note

Si votre clé KMS ne figure pas dans la liste déroulante, vérifiez qu'elle répond aux exigences de l'étape 1 et que vous disposez des kms:ListKeys kms:DescribeKey autorisations nécessaires.

API

Création d'un espace d'agent avec une clé gérée par le client

Spécifiez le kmsKeyArn paramètre lors de la création d'un espace d'agent. La valeur doit être l'ARN complet de la clé KMS.

{ "name": "my-agent-space", "description": "An encrypted agent space", "kmsKeyArn": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }
Enregistrement d'un service avec une clé gérée par le client

Spécifiez le kmsKeyArn paramètre lors de l'enregistrement d'un service. La valeur doit être l'ARN complet de la clé KMS. Ce paramètre est pris en charge par tous les types de services, y compris les serveurs Dynatrace, ServiceNow, PagerDuty, GitLab GitHub, et MCP.

{ "service": "dynatrace", "kmsKeyArn": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "serviceDetails": { ... } }
Note

Vous devez spécifier la clé gérée par le client au moment de la création de la ressource. Vous ne pouvez pas ajouter ou modifier la clé gérée par le client pour une ressource existante.

AWS DevOps Contexte de chiffrement de l'agent

Un contexte de chiffrement est un ensemble de paires clé-valeur non secrètes qui contiennent 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.

AWS DevOps L'agent utilise le contexte de chiffrement suivant pour toutes les opérations cryptographiques :

{ "aws-crypto-ec:aws:aidevops:arn": "arn:aws:aidevops:{region}:{accountId}:{resourceType}/{resourceId}" }

La valeur du contexte de chiffrement est l'ARN de la ressource de l' AWS DevOps agent cryptée. Vous pouvez utiliser ce contexte de chiffrement dans les conditions de votre politique de clé et dans AWS CloudTrail les journaux pour vérifier la manière dont votre clé est utilisée.

Gestion des clés

Si vous désactivez ou planifiez la suppression de votre clé KMS, AWS DevOps l'agent ne peut pas déchiffrer vos données. Cela entraîne AccessDeniedException des erreurs lors des opérations de lecture de données cryptées.

Important

Si vous choisissez d'utiliser une clé gérée par le client, vous êtes responsable de la gestion de la clé et de ses autorisations. Si la clé est désactivée ou supprimée, ou si AWS DevOps l'agent perd l'autorisation d'utiliser la clé, vous perdez l'accès aux données chiffrées.

Le tableau suivant décrit les scénarios de défaillance courants :

Action Impact
Principales autorisations politiques révoquées AccessDeniedExceptionsur les opérations de chiffrement et de déchiffrement
La clé KMS est désactivée DisabledExceptionsur les opérations de chiffrement et de déchiffrement
La suppression de la clé KMS est planifiée KMSInvalidStateExceptionsur les opérations de chiffrement et de déchiffrement
La clé KMS est supprimée Perte de données permanente : les données cryptées ne peuvent pas être récupérées

Avant de désactiver ou de supprimer une clé :

  1. Vérifiez qu'aucune ressource active de AWS DevOps l'agent ne dépend de la clé.

  2. Envisagez de désactiver d'abord la clé pour tester l'impact avant de planifier la suppression.

  3. AWS KMS impose une période d'attente minimale avant la suppression de la clé, ce qui vous laisse le temps d'annuler si nécessaire.

Surveillance de vos clés de chiffrement

Lorsque vous utilisez une clé gérée par le client avec AWS DevOps l'Agent, vous pouvez l'utiliser AWS CloudTrailpour suivre les demandes que AWS DevOps l'agent envoie à AWS KMS.

Vous pouvez filtrer CloudTrail les événements par :

  • Source de l'événementkms.amazonaws.com

  • Clé contextuelle de chiffrementaws-crypto-ec:aws:aidevops:arn

  • ARN clé — Votre client a géré l'ARN clé dans les paramètres de la demande

Pour plus d'informations, consultez la section Journalisation des appels d'API AWS KMS AWS CloudTrail dans le Guide du développeur du service de gestion des AWS clés.