Autorisations requises pour VM Import/Export - VM Import/Export

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.

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
  1. 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" } } } ] }
  2. 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 fichier trust-policy.json que vous avez créé à l'étape précédente, et d'inclure le préfixe file:// comme illustré dans l'exemple suivant :

    aws iam create-role --role-name vmimport --assume-role-policy-document "file://C:\import\trust-policy.json"
  3. Créez un fichier nommé selon role-policy.json la politique suivante, où se disk-image-file-buckettrouve le compartiment pour les images de disque et export-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": "*" } ] }
  4. (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 *.

  5. (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": "*" }
  6. 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"
  7. Pour des contrôles de sécurité supplémentaires, des clés contextuelles telles que aws:SourceAccount et aws:SourceArn peuvent être ajoutées à la stratégie d'approbation pour ce rôle nouvellement créé. VM Import/Export publiera les clés SourceAccount et SourceArn 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:*" } } } ] }