Permisos necesarios para VM Import/Export - VM Import/Export

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Permisos necesarios para VM Import/Export

Import/Export La máquina virtual requiere determinados permisos para sus usuarios, grupos y funciones. Además, es necesario un rol de servicio para llevar a cabo determinadas operaciones en su nombre.

Permisos necesarios

Sus usuarios, grupos y roles necesitan los siguientes permisos en su política de IAM para usar VM Import/Export:

nota

Para algunas acciones es necesario utilizar un bucket de Amazon Simple Storage Service (Amazon S3). Esta política de ejemplo no concede permiso para crear buckets de S3. El usuario o rol que utilice deberá especificar un bucket existente, o tener permisos para crear un nuevo bucket con la acción s3:CreateBucket.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-import-bucket", "arn:aws:s3:::amzn-s3-demo-import-bucket/*", "arn:aws:s3:::amzn-s3-demo-export-bucket", "arn:aws:s3:::amzn-s3-demo-export-bucket/*" ] }, { "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": "*" } ] }

Rol de servicio requerido

Import/Export La máquina virtual requiere un rol para realizar determinadas operaciones en su nombre. Debe crear un rol de servicio vmimport con el nombre de un documento de política de relaciones de confianza que permita Import/Export a VM asumir el rol, y debe adjuntar una política de IAM al rol. Para obtener más información, consulte Roles de IAM en la Guía del usuario de IAM.

Requisito previo

Debe habilitar AWS Security Token Service (AWS STS) en cualquier región en la que vaya a utilizar VM Import/Export. Para obtener más información, consulte Activación y desactivación AWS STS en una región. AWS

Para crear el rol de servicio
  1. Cree un archivo denominado trust-policy.json en su equipo. Añada la siguiente política al archivo:

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "vmie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals":{ "sts:Externalid": "vmimport" } } } ] }
  2. Utilice el create-rolecomando para crear un rol denominado vmimport y conceder a la máquina virtual Import/Export acceso al mismo. Asegúrese de especificar la ruta completa a la ubicación del archivo trust-policy.json que creó en el paso anterior y que incluye el prefijo file:// tal como se muestra en el ejemplo siguiente:

    aws iam create-role --role-name vmimport --assume-role-policy-document "file://C:\import\trust-policy.json"
  3. Cree un archivo role-policy.json con el nombre siguiente, donde amzn-s3-demo-import-bucket esté el depósito para las imágenes de disco importadas y amzn-s3-demo-export-bucket el depósito para las imágenes de disco exportadas:

    JSON
    { "Version":"2012-10-17", "Statement":[ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-import-bucket", "arn:aws:s3:::amzn-s3-demo-import-bucket/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:GetBucketAcl" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-export-bucket", "arn:aws:s3:::amzn-s3-demo-export-bucket/*" ] }, { "Effect": "Allow", "Action": [ "ec2:ModifySnapshotAttribute", "ec2:CopySnapshot", "ec2:RegisterImage", "ec2:Describe*" ], "Resource": "*" } ] }
  4. (Opcional) Para importar recursos cifrados con una AWS KMS clave desde AWS Key Management Service, añada los siguientes permisos al role-policy.json archivo.

    { "Effect": "Allow", "Action": [ "kms:CreateGrant", "kms:Decrypt", "kms:DescribeKey", "kms:Encrypt", "kms:GenerateDataKey*", "kms:ReEncrypt*" ], "Resource": "*" }

    Si utiliza una clave de KMS distinta de la predeterminada proporcionada por Amazon EBS, debe conceder Import/Export permiso de máquina virtual a la clave de KMS si habilita el cifrado de Amazon EBS de forma predeterminada o habilita el cifrado en una operación de importación. Puede especificar el nombre de recurso de Amazon (ARN) de la clave KMS como recurso en lugar de *.

  5. (Opcional) Para asociar configuraciones de licencia a una AMI, añada los siguientes permisos de License Manager al archivo role-policy.json.

    { "Effect": "Allow", "Action": [ "license-manager:GetLicenseConfiguration", "license-manager:UpdateLicenseSpecificationsForResource", "license-manager:ListLicenseSpecificationsForResource" ], "Resource": "*" }
  6. Utilice el siguiente comando put-role-policy para asociar la política al rol creado anteriormente. Asegúrese de que especifica la ruta completa de la ubicación del archivo role-policy.json.

    aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document "file://C:\import\role-policy.json"
  7. Para implantar controles de seguridad adicionales, es posible añadir claves de contexto, como aws:SourceAccount y aws:SourceArn, a la política de confianza de este rol recién creado. VM Import/Export publicará las SourceArn claves SourceAccount y tal como se especifica en el siguiente ejemplo para asumir esta función:

    JSON
    { "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:*" } } } ] }