

# Concesión de permisos para copiar AMI de Amazon EC2
<a name="copy-ami-permissions"></a>

Para copiar una AMI basada en EBS o Amazon S3, necesita los siguientes permisos de IAM:
+ `ec2:CopyImage`: para copiar la AMI. En el caso de las AMI basadas en EBS, también concede permiso para copiar las instantáneas de respaldo de la AMI.
+ `ec2:CreateTags`: para etiquetar la AMI de destino. En el caso de las AMI basadas en EBS, también concede permiso para etiquetar las instantáneas de respaldo de la AMI de destino.

Si va a copiar una AMI basada en un almacén de instancias, necesitará los siguientes permisos de IAM *adicionales*:
+ `s3:CreateBucket`: para crear el bucket de S3 en la región de destino para la nueva AMI
+ `s3:PutBucketOwnershipControls`: para habilitar las ACL para el depósito de S3 recién creado de modo que los objetos se puedan escribir con la `aws-exec-read` [ACL predefinida](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl)
+ `s3:GetBucketAcl`: para leer las ACL del bucket de origen
+ `s3:ListAllMyBuckets`: para buscar un bucket de S3 existente para las AMI en la región de destino
+ `s3:GetObject`: para leer los objetos del bucket de origen
+ `s3:PutObject`: para escribir los objetos en el bucket de destino
+ `s3:PutObjectAcl`: para escribir los permisos de los nuevos objetos en el bucket de destino

**nota**  
Desde el 28 de octubre de 2024, puede especificar permisos a nivel de recursos para la acción `CopyImage` en la AMI de origen. Los permisos a nivel de recursos para la AMI de destino se encuentran disponibles como antes. Para obtener más información, consulte **CopyImage** en la tabla bajo [Acciones definidas por Amazon EC2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonec2.html#amazonec2-actions-as-permissions) en la *Referencia de autorización de servicio*.

## Ejemplo de política de IAM para copiar una AMI basada en EBS y etiquetar la AMI de destino y las instantáneas
<a name="permissions-to-copy-ebs-backed-ami"></a>

El siguiente ejemplo de política le concede permiso para copiar cualquier AMI basada en EBS y etiquetar la AMI de destino y sus instantáneas de respaldo.

**nota**  
Desde el 28 de octubre de 2024, puede especificar instantáneas en el elemento `Resource`. Para obtener más información, consulte **CopyImage** en la tabla bajo [Acciones definidas por Amazon EC2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonec2.html#amazonec2-actions-as-permissions) en la *Referencia de autorización de servicio*.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
        "Sid": "PermissionToCopyAllImages",
        "Effect": "Allow",
        "Action": [
            "ec2:CopyImage",
            "ec2:CreateTags"
        ],
        "Resource": [
            "arn:aws:ec2:*::image/*",
            "arn:aws:ec2:*::snapshot/*"
        ]
    }]
}
```

------

## Ejemplo de política de IAM para copiar una AMI basada en EBS, pero que deniega el etiquetado de las nuevas instantáneas
<a name="permissions-to-copy-ebs-backed-ami-but-deny-tagging-new-snapshots"></a>

El permiso `ec2:CopySnapshot` se concede automáticamente cuando se obtiene el permiso `ec2:CopyImage`. Se puede denegar explícitamente el permiso para etiquetar las nuevas instantáneas de respaldo, lo que anula el efecto `Allow` de la acción `ec2:CreateTags`.

La siguiente política de ejemplo le concede permiso para copiar cualquier AMI basada en EBS, pero le deniega etiquetar las nuevas instantáneas de respaldo de la AMI de destino.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Effect": "Allow",
            "Action": [
                "ec2:CopyImage",
                "ec2:CreateTags"
            ],
            "Resource": [
                "arn:aws:ec2:*::image/*",
                "arn:aws:ec2:*::snapshot/*"
            ]
        },
        {
            "Effect": "Deny",
            "Action": "ec2:CreateTags",
            "Resource": "arn:aws:ec2:::snapshot/*"
        }
    ]
}
```

------

## Ejemplo de política de IAM para copiar una AMI basada en Amazon S3 y etiquetar la AMI de destino
<a name="permissions-to-copy-instance-store-backed-ami"></a>

La siguiente directiva de ejemplo le concede permiso para copiar cualquier AMI basada en Amazon S3 en el bucket de origen especificado a la región especificada, y etiquetar la AMI de destino.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Sid": "PermissionToCopyAllImages",
            "Effect": "Allow",
            "Action": [
                "ec2:CopyImage",
                "ec2:CreateTags"
            ],
            "Resource": "arn:aws:ec2:*::image/*"
        },
        {
            "Effect": "Allow",
            "Action": "s3:ListAllMyBuckets",
            "Resource": [
                "arn:aws:s3:::*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "s3:GetObject",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-source-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:CreateBucket",
                "s3:GetBucketAcl",
                "s3:PutObjectAcl",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amis-for-{{111122223333}}-in-{{us-east-2}}-{{hash}}"
            ]
        }
    ]
}
```

------

Para localizar el nombre de recurso de Amazon (ARN) del bucket de origen de la AMI, abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) y, en el panel de navegación, elija **AMI** y busque el nombre del bucket en la columna **Origen**.

**nota**  
El permiso `s3:CreateBucket` solo es necesario la primera vez que copia una AMI basada en Amazon S3 en una región individual. Después de eso, el bucket de Amazon S3 que ya se ha creado en la región se utiliza para almacenar todas las AMIs futuras que se copian en esa región.