Créez un IDE AWS Cloud9 qui utilise les volumes Amazon EBS avec un chiffrement par défaut - Recommandations AWS

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.

Créez un IDE AWS Cloud9 qui utilise les volumes Amazon EBS avec un chiffrement par défaut

Créée par Janardhan Malyala (AWS) et Dhrubajyoti Mukherjee (AWS)

Environnement : Production

Technologies : Opérations

Charge de travail : toutes les autres charges de travail

Services AWS : AWS Cloud9 ; AWS KMS

Récapitulatif

Vous pouvez utiliser le chiffrement par défaut pour appliquer le chiffrement de vos volumes Amazon Elastic Block Store (Amazon EBS) et de vos copies instantanées sur le cloud Amazon Web Services (AWS). 

Vous pouvez créer un environnement de développement intégré (IDE) AWS Cloud9 qui utilise des volumes EBS chiffrés par défaut. Toutefois, le rôle lié au service AWS Identity and Access Management (IAM) pour AWS Cloud9 nécessite l'accès à la clé AWS Key Management Service (AWS KMS) pour ces volumes EBS. Si l'accès n'est pas fourni, l'IDE AWS Cloud9 risque de ne pas démarrer et le débogage peut s'avérer difficile. 

Ce modèle indique les étapes à suivre pour ajouter le rôle lié au service pour AWS Cloud9 à la clé AWS KMS utilisée par vos volumes EBS. La configuration décrite par ce modèle vous aide à créer et à lancer avec succès un IDE qui utilise des volumes EBS avec chiffrement par défaut.

Conditions préalables et limitations

Prérequis

  • Un compte AWS actif.

  • Le chiffrement par défaut est activé pour les volumes EBS. Pour plus d'informations sur le chiffrement par défaut, consultez le chiffrement Amazon EBS dans la documentation Amazon Elastic Compute Cloud (Amazon EC2).

  • Une clé KMS existante gérée par le client pour chiffrer vos volumes EBS.

Remarque : il n'est pas nécessaire de créer le rôle lié à un service pour AWS Cloud9. Lorsque vous créez un environnement de développement AWS Cloud9, AWS Cloud9 crée le rôle lié au service pour vous.

Architecture

Pile technologique

  • AWS Cloud9

  • IAM

  • AWS KMS

Outils

  • AWS Cloud9 est un environnement de développement intégré (IDE) qui vous aide à coder, créer, exécuter, tester et déboguer des logiciels. Il vous aide également à publier des logiciels sur le cloud AWS.

  • Amazon Elastic Block Store (Amazon EBS) fournit des volumes de stockage au niveau des blocs à utiliser avec les instances Amazon Elastic Compute Cloud (Amazon EC2).

  • AWS Identity and Access Management (IAM) vous aide à gérer en toute sécurité l'accès à vos ressources AWS en contrôlant qui est authentifié et autorisé à les utiliser.

  • AWS Key Management Service (AWS KMS) vous aide à créer et à contrôler des clés cryptographiques afin de protéger vos données.

Épopées

TâcheDescriptionCompétences requises

Enregistrez la valeur de la clé de chiffrement par défaut pour les volumes EBS.

Connectez-vous à l'AWS Management Console et ouvrez la console Amazon EC2. Choisissez le tableau de bord EC2, puis sélectionnez Protection et sécurité des données dans Attributs du compte. Dans la section Chiffrement EBS, copiez et enregistrez la valeur dans la clé de chiffrement par défaut.

Architecte cloud, DevOps ingénieur
TâcheDescriptionCompétences requises

Fournissez à AWS Cloud9 l'accès à la clé KMS pour les volumes EBS.

  1. Ouvrez la console AWS KMS, puis choisissez Customer managed keys. Sélectionnez la clé AWS KMS utilisée pour le chiffrement Amazon EBS, puis choisissez View key.

  2. Dans l'onglet Politique clé, vérifiez que vous pouvez voir le texte de la politique clé. Si le formulaire texte ne s'affiche pas, choisissez Basculer en mode politique.

  3. Choisissez Modifier. Ajoutez le code de la section Informations supplémentaires à la politique, puis choisissez Enregistrer les modifications. Les modifications de politique permettent au rôle lié au service pour AWS Cloud9 AWSServiceRoleForAWSCloud9 d'accéder à la clé.

Pour plus d'informations sur la mise à jour d'une politique clé, consultez Comment modifier une politique clé (documentation AWS KMS).

Important : le rôle lié à un service pour AWS Cloud9 est automatiquement créé lorsque vous lancez votre premier IDE. Pour plus d'informations, consultez la section Création d'un rôle lié à un service dans la documentation AWS Cloud9. 

Architecte cloud, DevOps ingénieur
TâcheDescriptionCompétences requises

Créez et lancez l'IDE AWS Cloud9.

Ouvrez la console AWS Cloud9 et choisissez Create environment. Configurez l'IDE en fonction de vos besoins en suivant les étapes décrites dans la section Création d'un environnement EC2 dans la documentation AWS Cloud9. 

Architecte cloud, DevOps ingénieur

Ressources connexes

Informations supplémentaires

Mises à jour des politiques clés d'AWS KMS

Remplacez <aws_accountid> par votre ID de compte AWS.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<aws_accountid>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<aws_accountid>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9" }, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": { "Bool": { "kms:GrantIsForAWSResource": "true" } } }

Utilisation d'une clé multicompte

Si vous souhaitez utiliser une clé KMS entre comptes, vous devez utiliser une autorisation en combinaison avec la politique de clé KMS. Cela permet d'accéder à la clé entre comptes. Dans le compte que vous avez utilisé pour créer l'environnement Cloud9, exécutez la commande suivante dans le terminal.

aws kms create-grant \ --region <Region where Cloud9 environment is created> \ --key-id <The cross-account KMS key ARN> \ --grantee-principal arn:aws:iam::<The account where Cloud9 environment is created>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9 \ --operations "Encrypt" "Decrypt" "ReEncryptFrom" "ReEncryptTo" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "DescribeKey" "CreateGrant"

Après avoir exécuté cette commande, vous pouvez créer des environnements Cloud9 en utilisant le chiffrement EBS avec une clé d'un autre compte.