View a markdown version of this page

Permisos necesarios para la máquina virtual 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 la máquina virtual Import/Export

Import/Export La máquina virtual requiere ciertos 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 la máquina virtual Import/Export:

importante

La máquina virtual Import/Export valida que tienes iam:PassRole permiso para el rol especificado en el RoleName parámetro o para el vmimport rol predeterminado si no se especifica ninguno. Asegúrese de que su política de IAM conceda iam:PassRole el ARN del rol que desea utilizar. Para obtener más información, consulte Otorgar a un usuario permisos para transferir un rol a un AWS servicio en la Guía del usuario de IAM.

Importante

Determinadas claves de condición no funcionarán con iam:PassRole máquinas virtuales Import/Export. Como la máquina virtual Import/Export hace la solicitud en su nombre, algunas propiedades de la solicitud inicial no se conservan. Algunas claves, comoaws:SourceVpc, yaws:SourceVpce,aws:VpcSourceIp, no están disponibles y pueden provocar un error en las solicitudes. Para obtener más información, consulte Claves de contexto de condición globales de AWS en la Guía del usuario de IAM.

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": "*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::111122223333:role/vmimport" } ] }

Rol de servicio requerido

Import/Export La máquina virtual requiere un rol para realizar determinadas operaciones en tu 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 la máquina virtual 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

Debes habilitar AWS Security Token Service (AWS STS) en cualquier región en la que planees usar la máquina virtual Import/Export. Para obtener más información, consulta Activar y desactivar AWS STS en una AWS región.

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. Usa el create-role comando para crear un rol denominado vmimport y conceder Import/Export acceso a él a la máquina virtual. 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. Crea un archivo denominado role-policy.json con la siguiente política, donde amzn-s3-demo-import-bucket esté el bucket para las imágenes de disco importadas y amzn-s3-demo-export-bucket el bucket 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 de AWS Key Management Service, agrega 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 que no sea la predeterminada que proporciona Amazon EBS, debe conceder a la máquina virtual el Import/Export permiso para acceder 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. La máquina virtual Import/Export publicará las SourceArn claves SourceAccount y tal como se especifica en el ejemplo siguiente 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:*" } } } ] }