Identifique sus recursos haciendo referencia a las AMI especificadas
Puede identificar los recursos de AWS que hacen referencia a Imágenes de máquina de Amazon (AMI) especificadas, independientemente de si las AMI son públicas o privadas o de quién es su propietario. Esta visibilidad ayuda a garantizar que sus recursos utilicen las AMI compatibles más recientes.
Ventajas principales
Comprobar las referencias de AMI le ayuda a:
-
Auditar el uso de las AMI en su cuenta.
-
Compruebe dónde se hace referencia a las AMI específicas.
-
Mantener el cumplimiento actualizando sus recursos para que hagan referencia a las AMI más recientes.
Recursos admitidos
Las referencias de AMI se pueden comprobar en:
-
instancias de EC2
-
Plantillas de inicialización
-
Parámetros de SSM
-
Recetas de imágenes de Generador de Imágenes
-
Recetas de contenedor de Generador de Imágenes
Cómo funcionan las comprobaciones de referencia de la AMI
Funcionamiento básico
Al realizar una comprobación de referencia de la AMI, usted:
-
Especifique qué AMI desea comprobar.
-
Elija los tipos de recursos que desee analizar.
-
Reciba una lista de sus recursos que hacen referencia a las AMI especificadas.
Selección del tipo de recurso
En la consola, seleccione los tipos de recursos que se van a analizar.
En la CLI, especifique los tipos de recursos que se van a escanear mediante uno o ambos de los siguientes parámetros de la CLI:
Alcance de la respuesta
Puede determinar el alcance de la respuesta para las instancias de EC2 y las plantillas de inicialización personalizando los valores de ResourceTypeOptions
mediante el parámetro ResourceTypes
. Tanto la consola como el parámetro IncludeAllResourceTypes
utilizan valores de opción predeterminados. Cuando se ResourceTypes
y IncludeAllResourceTypes
utilizan juntos, los valores de las opciones de ResourceTypes
tienen prioridad sobre los valores predeterminados.
Se usan los siguientes valores predeterminados:
Tipo de recurso |
Opción de alcance (OptionName ) |
Finalidad |
Valores predeterminados para OptionValue y la consola |
instancias de EC2 |
state-name |
Filtrar por estado de instancia |
pending , running , shutting-down , terminated , stopping , stopped (todos los estados) |
Plantillas de inicialización |
version-depth |
Especifique el número de versiones de la plantilla de inicialización que desee comprobar (empezando por la versión más reciente) |
10 (las versiones más recientes) |
Permisos de IAM necesarios
Para usar la API DescribeImageReferences para identificar los recursos que hacen referencia a determinadas AMI, necesita los siguientes permisos de IAM para describir los recursos:
-
ec2:DescribeInstances
-
ec2:DescribeLaunchTemplates
-
ec2:DescribeLaunchTemplateVersions
-
ssm:DescribeParameters
-
ssm:GetParameters
-
imagebuilder:ListImageRecipes
-
imagebuilder:ListContainerRecipes
-
imagebuilder:GetContainerRecipe
Ejemplo de política de IAM para usar la API DescribeImageReferences
El siguiente ejemplo de política le concede los permisos para usar la API DescribeImageReferences, que incluye los permisos para describir las instancias de EC2, las plantillas de inicialización, los parámetros de Systems Manager, las recetas de imágenes de Image Builder y las recetas de contenedores de Image Builder.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "ec2:DescribeImageReferences",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:DescribeLaunchTemplates",
"ec2:DescribeLaunchTemplateVersions",
"ssm:DescribeParameters",
"ssm:GetParameters",
"imagebuilder:ListImageRecipes",
"imagebuilder:ListContainerRecipes",
"imagebuilder:GetContainerRecipe"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": [
"ec2-images.amazonaws.com"
]
}
}
}
]
}
Le recomendamos encarecidamente que utilice la política administrada deAWS, AmazonEC2ImageReferencesAccessPolicy
, en lugar de crearla usted mismo. Crear una política de IAM personalizada que proporcione solo los permisos necesarios requiere tiempo y experiencia, y requerirá actualizaciones a medida que haya nuevos tipos de recursos disponibles.
La política administrada AmazonEC2ImageReferencesAccessPolicy
:
-
Otorga todos los permisos necesarios para usar la API DescribeImageReferences (incluidos los permisos para describir las instancias de EC2, las plantillas de inicialización, los parámetros de Systems Manager y las recetas de contenedores e imágenes de Image Builder).
-
Admite automáticamente nuevos tipos de recursos a medida que están disponibles (lo que es especialmente importante cuando se utiliza el parámetro IncludeAllResourceTypes
).
Puede asociar la política AmazonEC2ImageReferencesAccessPolicy
a sus identidades de IAM (usuarios, grupos y roles).
Para ver los permisos incluidos en esta política, consulte AmazonEC2ImageReferencesAccessPolicy en la Referencia de la política administrada de AWS.
Pasos para comprobar las referencias de la AMI
Utilice los siguientes procedimientos para identificar cuáles de sus recursos de AWS hacen referencia a las AMI especificadas.
- Console
-
Identificación de los recursos que hacen referencia a las AMI especificadas
-
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.
-
En el panel de navegación, elija AMIs.
-
Seleccione una o más AMI para comprobar las referencias.
-
Elija Acciones, Uso de AMI, Ver recursos referenciados.
-
En la página Ver los recursos que hacen referencia a las AMI seleccionadas:
-
En Tipos de recursos, seleccione uno o más tipos de recursos.
-
Seleccione Ver recursos.
-
Aparece la sección Recursos que hacen referencia a las AMI seleccionadas. La lista muestra los recursos que hacen referencia a las AMI especificadas. Cada fila proporciona la siguiente información:
-
ID de la AMI: el ID de la AMI a la que se hace referencia.
-
Tipo del recurso: el tipo de recurso del recurso que hace referencia a la AMI.
-
ID del recurso: el ID del recurso que hace referencia a la AMI.
- AWS CLI
-
Para comprobar las referencias de AMI de tipos de recursos específicos
Utilice el comando describe-image-references con el parámetro --resource-types
. En el siguiente ejemplo, se comprueban las instancias de EC2 (el ámbito se basa en el estado de la instancia), las plantillas de inicialización (se basa en las 20 versiones más recientes de la plantilla de inicialización) y otros tipos de recursos específicos.
aws ec2 describe-image-references \
--image-ids ami-0abcdef1234567890
ami-1234567890abcdef0
\
--resource-types \
'ResourceType=ec2:Instance,ResourceTypeOptions=[{OptionName=state-name,OptionValues=[running
,pending
]}]' \
'ResourceType=ec2:LaunchTemplate,ResourceTypeOptions=[{OptionName=version-depth,OptionValues=[20
]}]' \
'ResourceType=ssm:Parameter' \
'ResourceType=imagebuilder:ImageRecipe' \
'ResourceType=imagebuilder:ContainerRecipe'
A continuación, se muestra un ejemplo del resultado.
{
"ImageReferences": [
{
"ImageId": "ami-0abcdef1234567890",
"ResourceType": "ec2:Instance",
"Arn": "arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0"
},
{
"ImageId": "ami-1234567890abcdef0",
"ResourceType": "ec2:LaunchTemplate",
"Arn": "arn:aws:ec2:us-east-1:123456789012:launch-template/lt-1234567890abcdef0"
}
]
}
Para comprobar las referencias de AMI de todos los tipos de recursos compatibles
Utilice el comando describe-image-references con el parámetro --include-all-resource-types
.
aws ec2 describe-image-references \
--image-ids ami-0abcdef1234567890
ami-1234567890abcdef0
\
--include-all-resource-types
Para comprobar las referencias de AMI de todos los tipos de recursos compatibles y las opciones específicas
Utilice el comando describe-image-references con los parámetros --include-all-resource-types
y --resource-types
. En este ejemplo, se comprueban todos los tipos de recursos y, al mismo tiempo, se limita la respuesta de las instancias de EC2 a las instancias en ejecución o pendientes.
aws ec2 describe-image-references \
--image-ids ami-0abcdef1234567890
ami-1234567890abcdef0
\
--include-all-resource-types \
--resource-types 'ResourceType=ec2:Instance,ResourceTypeOptions=[{OptionName=state-name,OptionValues=[running
,pending
]}]'
- PowerShell
-
Para comprobar las referencias de AMI de tipos de recursos específicos
Utilice el cmdlet Get-EC2ImageReference con el parámetro -ResourceType
. En el siguiente ejemplo, se comprueban las instancias de EC2 (el ámbito se basa en el estado de la instancia), las plantillas de inicialización (se basa en las 20 versiones más recientes de la plantilla de inicialización) y otros tipos de recursos específicos.
Get-EC2ImageReference `
-ImageId 'ami-0abcdef1234567890
', 'ami-1234567890abcdef0
' `
-ResourceType @(
@{
ResourceType = 'ec2:Instance'
ResourceTypeOptions = @(
@{
OptionName = 'state-name'
OptionValues = @('running
', 'pending
')
}
)
},
@{
ResourceType = 'ec2:LaunchTemplate'
ResourceTypeOptions = @(
@{
OptionName = 'version-depth'
OptionValues = @('20
')
}
)
},
@{
ResourceType = 'ssm:Parameter'
},
@{
ResourceType = 'imagebuilder:ImageRecipe'
},
@{
ResourceType = 'imagebuilder:ContainerRecipe'
}
)
Para comprobar las referencias de AMI de todos los tipos de recursos compatibles
Utilice el cmdlet Get-EC2ImageReference con el parámetro -IncludeAllResourceTypes
.
Get-EC2ImageReference `
-ImageId 'ami-0abcdef1234567890
', 'ami-1234567890abcdef0
' `
-IncludeAllResourceTypes
Para comprobar las referencias de AMI de todos los tipos de recursos compatibles y las opciones específicas
Utilice el cmdlet Get-EC2ImageReference con los parámetros -IncludeAllResourceTypes
y -ResourceType
. En este ejemplo, se comprueban todos los tipos de recursos y, al mismo tiempo, se limita la respuesta de las instancias de EC2 a las instancias en ejecución o pendientes.
Get-EC2ImageReference `
-ImageId 'ami-0abcdef1234567890
', 'ami-1234567890abcdef0
' `
-IncludeAllResourceTypes `
-ResourceType @(
@{
ResourceType = 'ec2:Instance'
ResourceTypeOptions = @(
@{
OptionName = 'state-name'
OptionValues = @('running'
, 'pending'
)
}
)
}
)