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.
Autorisations requises pour VM Import/Export
VM Import/Export nécessite certaines autorisations pour vos utilisateurs, groupes et rôles. En outre, une fonction du service est requise pour effectuer certaines opérations en votre nom.
Table des matières
Autorisations nécessaires
Vos utilisateurs, groupes et rôles doivent avoir les autorisations suivantes dans leur politique IAM pour utiliser VM Import/Export :
Note
Certaines actions nécessitent l'utilisation d'un compartiment Amazon S3. Cet exemple de politique n'accorde pas l'autorisation de créer des compartiments Amazon S3. L'utilisateur ou le rôle devra spécifier un compartiment existant ou avoir les autorisations nécessaires pour créer un nouveau compartiment (
s3:CreateBucket
).
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:PutObject" ], "Resource": ["arn:aws:s3:::
mys3bucket
","arn:aws:s3:::mys3bucket
/*"] }, { "Effect": "Allow", "Action": [ "ec2:CancelConversionTask", "ec2:CancelExportTask", "ec2:CreateImage", "ec2:CreateInstanceExportTask", "ec2:CreateTags", "ec2:DescribeConversionTasks", "ec2:DescribeExportTasks", "ec2:DescribeExportImageTasks", "ec2:DescribeImages", "ec2:DescribeInstanceStatus", "ec2:DescribeInstances", "ec2:DescribeSnapshots", "ec2:DescribeTags", "ec2:ExportImage", "ec2:ImportInstance", "ec2:ImportVolume", "ec2:StartInstances", "ec2:StopInstances", "ec2:TerminateInstances", "ec2:ImportImage", "ec2:ImportSnapshot", "ec2:DescribeImportImageTasks", "ec2:DescribeImportSnapshotTasks", "ec2:CancelImportTask" ], "Resource": "*" } ] }
Fonction du service requis
VM Import/Export nécessite un rôle pour pouvoir exécuter certaines opérations en votre nom. Vous devez créer une fonction du service nommée vmimport
avec un document de stratégie de relation d'approbation qui autorise VM Import/Export à assumer le rôle, et vous devez attacher une politique IAM au rôle. Pour plus d'informations, veuillez consulter Rôles IAM dans le Guide de l'utilisateur IAM.
Prérequis
Vous devez activer AWS Security Token Service (AWS STS) dans toutes les régions où vous prévoyez d'utiliser VM Import/Export. Pour plus d'informations, voir Activation et désactivation AWS STS dans une AWS région.
Pour créer la fonction du service
-
Sur votre ordinateur, créez un fichier nommé
trust-policy.json
. Ajoutez la stratégie suivante au fichier :{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "vmie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals":{ "sts:Externalid": "vmimport" } } } ] }
-
La commande create-role permet de créer un rôle appelé
vmimport
et d'y donner accès à VM Import/Export. Assurez-vous de spécifier le chemin d'accès complet à l'emplacement du fichiertrust-policy.json
que vous avez créé à l'étape précédente, et d'inclure le préfixefile://
comme illustré dans l'exemple suivant :aws iam create-role --role-name vmimport --assume-role-policy-document "file://
C:\import\trust-policy.json
" -
Créez un fichier nommé selon
role-policy.json
la politique suivante, où sedisk-image-file-bucket
trouve le compartiment pour les images de disque etexport-bucket
est le compartiment pour les images exportées :{ "Version":"2012-10-17", "Statement":[ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
disk-image-file-bucket
", "arn:aws:s3:::disk-image-file-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:GetBucketAcl" ], "Resource": [ "arn:aws:s3:::export-bucket
", "arn:aws:s3:::export-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "ec2:ModifySnapshotAttribute", "ec2:CopySnapshot", "ec2:RegisterImage", "ec2:Describe*" ], "Resource": "*" } ] } -
(Facultatif) Pour importer des ressources chiffrées à l'aide d'une AWS KMS clé depuis AWS Key Management Service, ajoutez les autorisations suivantes au
role-policy.json
fichier.{ "Effect": "Allow", "Action": [ "kms:CreateGrant", "kms:Decrypt", "kms:DescribeKey", "kms:Encrypt", "kms:GenerateDataKey*", "kms:ReEncrypt*" ], "Resource": "*" }
Si vous utilisez une clé KMS autre que celle fournie par défaut par Amazon EBS, vous devez accorder l'autorisation VM Import/Export à la clé KMS si vous activez le chiffrement Amazon EBS par défaut ou si vous activez le chiffrement lors d'une opération d'importation. Vous pouvez spécifier l'Amazon Resource Name (ARN) de la clé KMS comme ressource au lieu de *.
-
(Facultatif) Pour attacher des configurations de licence à une AMI, ajoutez les autorisations License Manager suivantes au fichier
role-policy.json
.{ "Effect": "Allow", "Action": [ "license-manager:GetLicenseConfiguration", "license-manager:UpdateLicenseSpecificationsForResource", "license-manager:ListLicenseSpecificationsForResource" ], "Resource": "*" }
-
Utilisez la commande suivante put-role-policy pour attacher la stratégie au rôle créé ci-dessus. Veillez à spécifier le chemin d'accès complet vers l'emplacement du fichier
role-policy.json
.aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document "file://
C:\import\role-policy.json
" -
Pour des contrôles de sécurité supplémentaires, des clés contextuelles telles que
aws:SourceAccount
etaws:SourceArn
peuvent être ajoutées à la stratégie d'approbation pour ce rôle nouvellement créé. VM Import/Export publiera les clésSourceAccount
etSourceArn
comme indiqué dans l'exemple ci-dessous pour assumer ce rôle :{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "vmie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:Externalid": "vmimport", "aws:SourceAccount": "
111122223333
" }, "ArnLike": { "aws:SourceArn": "arn:aws:vmie:*:111122223333
:*" } } } ] }