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 Services AWS nom. 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 EBS chiffrement Amazon.

Note

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

Présentation

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

  • Clé gérée par AWS— Une clé de chiffrement de votre compte EBS créée, détenue et gérée par Amazon. 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 KMS clés doivent être associées à une politique permettant à Amazon EC2 Auto Scaling de lancer des instances avec des EBS volumes Amazon chiffrés à l'aide d'une clé gérée par le client.

Utilisez les exemples présentés sur cette page pour configurer une politique clé permettant à Amazon EC2 Auto Scaling d'accéder à 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 au minimum ajouter deux déclarations de politique à votre politique clé pour qu'elle fonctionne avec Amazon EC2 Auto Scaling.

  • La première instruction permet à l'IAMidentité spécifiée dans l'Principalélément 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'IAMidentité 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 un autre principal AWS KMS ou à un autre. 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 la forme user placeholder text. Dans la plupart des cas, vous pouvez remplacer le nom du rôle lié au service par le nom d'un rôle lié au 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 déclarations de politique suivantes à la politique clé de la clé gérée par le client, en ARN remplaçant ARN l'exemple par le rôle lié au service approprié 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 ARN par celui ARN de l'autre compte, en veillant à remplacer 111122223333 avec l'identifiant de compte réel du compte dans Compte AWS lequel vous souhaitez créer le groupe Auto Scaling. Cela vous permet d'autoriser un IAM utilisateur ou un rôle dans le compte spécifié à créer une autorisation pour la clé à l'aide de la CLI commande 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'Grantee Principalélément de la subvention est le ARN rôle approprié lié au service. key-idC'est ARN la clé.

    Voici un exemple de CLI commande create-grant qui donne le rôle lié au service nommé dans le compte AWSServiceRoleForAutoScaling 111122223333 autorisations d'utilisation de 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 IAM politique suivant autorise une IAM identité (utilisateur ou rôle) dans le compte 111122223333 pour créer une subvention pour la clé gérée par le client dans le 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'une subvention pour une KMS clé dans un autre Compte AWS, consultez la section Subventions AWS KMS dans le guide du AWS Key Management Service développeur.

    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éé la subvention, pour vous assurer qu'elle autorise Amazon EC2 Auto Scaling à utiliser la KMS clé 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 IAM identité (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.