Politique de AWS KMS clé requise pour une utilisation avec des volumes chiffrés - Amazon EC2 Auto Scaling

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.

Politique de AWS KMS clé requise pour une utilisation avec des volumes chiffrés

Amazon EC2 Auto Scaling utilise des rôles liés à un service pour déléguer des autorisations à d'autres personnes. Services AWS Les rôles liés au service Amazon EC2 Auto Scaling sont prédéfinis et incluent les autorisations dont Amazon EC2 Auto Scaling a besoin pour appeler d'autres personnes en votre nom. Services AWS Les autorisations prédéfinies incluent également l'accès à votre Clés gérées par AWS. Elles n'incluent pas toutefois l'accès à vos clés gérées par le client, ce qui vous permet de garder un contrôle total sur ces clés.

Cette rubrique explique comment configurer la politique de clé dont vous avez besoin pour lancer des instances Auto Scaling lorsque vous spécifiez une clé gérée par le client pour le chiffrement Amazon EBS.

Note

Amazon EC2 Auto Scaling n'a pas besoin d'une autorisation supplémentaire pour utiliser l' Clé gérée par AWS par défaut et protéger les volumes chiffrés de votre compte.

Présentation

Les éléments suivants AWS KMS keys peuvent être utilisés pour le chiffrement Amazon EBS lorsqu'Amazon EC2 Auto Scaling lance des instances :

  • Clé gérée par AWS— Une clé de chiffrement dans votre compte créée, détenue et gérée par Amazon EBS. Il s'agit de la clé de chiffrement par défaut d'un nouveau compte. Le Clé gérée par AWS est utilisé pour le chiffrement, sauf si vous spécifiez une clé gérée par le client.

  • Clé gérée par le client : clé de chiffrement personnalisée que vous créez, détenez et gérez. Pour plus d'informations, consultez Création des clés dans le Guide du développeur AWS Key Management Service .

    Remarque : la clé doit être symétrique. Amazon EBS ne prend pas en charge les clés asymétriques gérées par le client.

Vous pouvez configurer les clés gérées par le client lors de la création d'instantanés chiffrés ou d'un modèle de lancement qui spécifie les volumes chiffrés, ou de l'activation du chiffrement par défaut.

Configurer des politiques de clé

Vos clés KMS doivent être associées à une politique de clé qui permet à Amazon EC2 Auto Scaling de lancer des instances avec des volumes Amazon EBS chiffrés à l'aide d'une clé gérée par le client.

Utilisez les exemples de cette page pour configurer une politique de clé pour donner à Amazon EC2 Auto Scaling l'accès à votre clé gérée par le client. Vous pouvez modifier la politique de clé de la clé gérée par le client lors de la création de la clé ou ultérieurement.

Vous devez ajouter au moins deux déclarations de politique à la politique de clé de votre clé pour qu'elle fonctionne avec Amazon EC2 Auto Scaling.

  • La première instruction permet à l'identité IAM spécifiée dans l'élément Principal d'utiliser directement la clé gérée par le client. Il inclut les autorisations permettant d'effectuer les DescribeKey opérations AWS KMS Encrypt DecryptReEncrypt*,GenerateDataKey*,, et sur la clé.

  • La deuxième instruction permet à l'identité IAM spécifiée dans l'Principalélément d'utiliser l'CreateGrantopération pour générer des autorisations déléguant un sous-ensemble de ses propres autorisations à des entités intégrées à Services AWS AWS KMS ou à un autre principal. Il est ainsi possible d'utiliser la clé pour créer des ressources chiffrées en votre nom.

Lorsque vous ajoutez les nouvelles instructions de politique à votre politique de clé, ne changez pas les déclarations existantes dans la politique.

Pour chacun des exemples suivants, les arguments qui doivent être remplacés, tels qu'un identifiant de clé ou le nom d'un rôle lié à un service, sont affichés sous forme de texte d'espace réservé à l'utilisateur. Dans la plupart des cas, vous pouvez remplacer le nom du rôle lié à un service par le nom d'un rôle lié à un service Amazon EC2 Auto Scaling.

Pour plus d’informations, consultez les ressources suivantes :

Exemple 1 : sections de la politique de clé qui autorisent l'accès à la clé gérée par le client

Ajoutez les deux instructions de politique suivantes à la politique de clé de la clé gérée par le client, en remplaçant l'ARN par l'ARN du rôle lié à un service approprié qui est autorisé à accéder à la clé. Dans cet exemple, les sections de politique donnent au rôle lié au service nommé AWSServiceRoleForAutoScalingles autorisations d'utiliser la clé gérée par le client.

{ "Sid": "Allow service-linked role use of the customer managed key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::account-id:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling" ] }, "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::account-id:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling" ] }, "Action": [ "kms:CreateGrant" ], "Resource": "*", "Condition": { "Bool": { "kms:GrantIsForAWSResource": true } } }

Exemple 2 : sections de la politique de clé autorisant l'accès entre comptes à la clé gérée par le client

Si votre clé gérée par le client se trouve dans un compte différent du groupe Auto Scaling, vous devez utiliser un octroi en combinaison avec la politique de clé pour autoriser l'accès intercompte à la clé.

Deux étapes doivent être effectuées dans l'ordre suivant :

  1. Tout d'abord, ajoutez les deux énoncés de politique suivants à la politique clé de la clé gérée par le client. Remplacez l'exemple d'ARN par l'ARN de l'autre compte, en veillant à remplacer 111122223333 par l'ID de compte réel du compte dans Compte AWS lequel vous souhaitez créer le groupe Auto Scaling. Cela vous permet de donner à un utilisateur ou à un rôle IAM du compte spécifié l'autorisation de créer un octroi pour la clé à l'aide de la commande CLI suivante. Cependant, cela ne donne en soi aucun accès à la clé aux utilisateurs.

    { "Sid": "Allow external account 111122223333 use of the customer managed key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }
    { "Sid": "Allow attachment of persistent resources in external account 111122223333", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root" ] }, "Action": [ "kms:CreateGrant" ], "Resource": "*" }
  2. Ensuite, à partir du compte dans lequel vous voulez créer le groupe Auto Scaling, créez un octroi qui délègue les autorisations pertinentes au rôle approprié lié au service. L'élément Grantee Principal du bénéficiaire est l'ARN du rôle lié à un service approprié. L'key-id est l'ARN de la clé.

    Voici un exemple de commande CLI create-grant qui autorise le rôle lié au service nommé AWSServiceRoleForAutoScalingdans le compte 111122223333 à utiliser la clé gérée par le client dans le compte 444455556666.

    aws kms create-grant \ --region us-west-2 \ --key-id arn:aws:kms:us-west-2:444455556666:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d \ --grantee-principal arn:aws:iam::111122223333:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling \ --operations "Encrypt" "Decrypt" "ReEncryptFrom" "ReEncryptTo" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "DescribeKey" "CreateGrant"

    Pour que cette commande réussisse, l'utilisateur qui fait la demande doit avoir les autorisations pour l'action CreateGrant.

    L'exemple de politique IAM suivant permet à une identité IAM (utilisateur ou rôle) du compte 111122223333 de créer un octroi pour la clé gérée par le client du compte 444455556666.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreationOfGrantForTheKMSKeyinExternalAccount444455556666", "Effect": "Allow", "Action": "kms:CreateGrant", "Resource": "arn:aws:kms:us-west-2:444455556666:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d" } ] }

    Pour plus d'informations sur la création d'un octroi pour une clé KMS dans un autre Compte AWS, consultez la rubrique Octrois dans AWS KMS dans le Guide du développeur AWS Key Management Service .

    Important

    Le nom du rôle lié au service spécifié en tant que principal bénéficiaire doit être le nom d'un rôle existant. Après avoir créé l'autorisation, pour vous assurer qu'elle permet à Amazon EC2 Auto Scaling d'utiliser la clé KMS spécifiée, ne supprimez pas et ne recréez pas le rôle lié au service.

Modifier des politiques de clé dans la console AWS KMS

Les exemples des sections précédentes montrent comment ajouter des déclarations à une politique de clé, qui est simplement un moyen de modifier une politique de clé. Le moyen le plus simple de modifier une politique clé consiste à utiliser la vue par défaut de la AWS KMS console pour les politiques clés et à faire d'une identité IAM (utilisateur ou rôle) l'un des principaux utilisateurs de la stratégie clé appropriée. Pour plus d'informations, consultez la section Utilisation de l'affichage AWS Management Console par défaut dans le Guide du AWS Key Management Service développeur.

Important

Soyez prudent. Les déclarations de politique d'affichage par défaut de la console incluent les autorisations permettant d'effectuer AWS KMS Revoke des opérations sur la clé gérée par le client. Si vous accordez Compte AWS l'accès à une clé gérée par le client dans votre compte et que vous révoquez accidentellement l'autorisation qui leur a accordé cette autorisation, les utilisateurs externes ne peuvent plus accéder à leurs données chiffrées ou à la clé utilisée pour chiffrer leurs données.