Identificar seus recursos que referenciam AMIs específicas - Amazon Elastic Compute Cloud

Identificar seus recursos que referenciam AMIs específicas

Você pode identificar seus recursos da AWS que referenciam imagens de máquina da Amazon (AMIs) específicas, independentemente de as AMIs serem públicas ou privadas ou de quem as possui. Essa visibilidade ajuda você a garantir que seus recursos usem as mais recentes AMIs compatíveis.

Benefícios principais

A verificação das referências de AMIs ajuda para que você:

  • Audite o uso de AMIs em sua conta.

  • Verifique onde as AMIs específicas estão sendo referenciadas.

  • Mantenha a conformidade atualizando seus recursos para referenciar as AMIs mais recentes.

 

Recursos compatíveis

As referências de AMIs podem ser verificadas em:

  • Instâncias do EC2

  • Modelos de inicialização

  • Parâmetros do SSM

  • Fórmulas de imagens do Image Builder

  • Fórmulas de contêineres do Image Builder

Como funcionam as verificações de referência de AMIs

Operação básica

Ao executar uma verificação de referência de AMIs:

  • Especifique quais AMIs devem ser verificadas.

  • Escolha quais tipos de recursos serão verificados.

  • Receba uma lista de seus recursos que referenciam AMIs específicas.

Seleção do tipo de recurso

No console, você seleciona os tipos de recursos a serem verificados.

Na CLI, você especifica os tipos de recursos a serem verificados usando um ou os dois dos seguintes parâmetros da CLI:

  • IncludeAllResourceTypes: verifica todos os tipos de recursos compatíveis.

  • ResourceTypes: verifica os tipos de recursos especificados.

Definir o escopo de respostas

Você pode definir o escopo de respostas para instâncias do EC2 e modelos de inicialização personalizando os valores de ResourceTypeOptions usando o parâmetro ResourceTypes. Tanto o console quanto o parâmetro IncludeAllResourceTypes usam valores de opção padrão. Quando ResourceTypes e IncludeAllResourceTypes são usados juntos, os valores das opções de ResourceTypes têm precedência sobre os padrões.

Os seguintes valores padrão são usados:

Tipo de recurso Opção de escopo (OptionName) Finalidade Valores padrão para OptionValue e o console
Instâncias do EC2 state-name Filtrar por estado da instância pending, running, shutting-down, terminated, stopping, stopped (todos os estados)
Modelos de inicialização version-depth Especifique o número de versões do modelo de inicialização a serem verificadas (começando pela versão mais recente) 10 (versões mais recentes)

Permissões obrigatórias do IAM

Para usar a API DescribeImageReferences para identificar seus recursos que referenciam AMIs específicas, você precisa das seguintes permissões do IAM para descrever os recursos:

  • ec2:DescribeInstances

  • ec2:DescribeLaunchTemplates

  • ec2:DescribeLaunchTemplateVersions

  • ssm:DescribeParameters

  • ssm:GetParameters

  • imagebuilder:ListImageRecipes

  • imagebuilder:ListContainerRecipes

  • imagebuilder:GetContainerRecipe

Exemplo de política do IAM para usar a API DescribeImageReferences

O exemplo de política a seguir concede a você as permissões para usar a API DescribeImageReferences, que inclui as permissões para descrever instâncias do EC2, modelos de inicialização, parâmetros do Systems Manager, fórmulas de imagens do Image Builder e fórmulas de contêineres do 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" ] } } } ] }
Importante

É altamente recomendável usar a política gerenciada AmazonEC2ImageReferencesAccessPolicy da AWS em vez de criar a política você mesmo. Criar uma política do IAM personalizada que forneça somente as permissões necessárias requer tempo e experiência, e exigirá atualizações à medida que novos tipos de recursos forem disponibilizados.

A política gerenciada AmazonEC2ImageReferencesAccessPolicy:

  • Concede todas as permissões necessárias para usar a API DescribeImageReferences, que inclui as permissões para descrever instâncias do EC2, modelos de inicialização, parâmetros do Systems Manager e fórmulas de imagens e de contêineres do Image Builder.

  • É automaticamente compatível com novos tipos de recursos à medida que ficam disponíveis (especialmente importante ao usar o parâmetro IncludeAllResourceTypes).

Você pode anexar a política AmazonEC2ImageReferencesAccessPolicy às identidades do IAM (usuários, grupos e perfis).

Para visualizar as permissões incluídas nessa política, consulte AmazonEC2ImageReferencesAccessPolicy na Referência de políticas gerenciadas pela AWS.

Etapas para verificar as referências de AMIs

Use os procedimentos a seguir para identificar quais dos seus recursos da AWS estão referenciando AMIs específicas.

Console
Para identificar recursos referenciando AMIs específicas
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, selecione AMIs.

  3. Selecione uma ou mais AMIs para verificar as referências.

  4. Escolha Ações, Uso de AMIs, Visualizar recursos referenciados.

  5. Na página Visualizar recursos referenciando AMIs selecionadas:

    1. Em Tipos de recursos, selecione um ou mais tipos de recursos.

    2. Escolha Visualizar recursos.

  6. A seção Recursos referenciando AMIs selecionadas é exibida. A lista exibe os recursos que referenciam AMIs específicas. Cada linha fornece as seguintes informações:

    • ID da AMI: o ID da AMI referenciada.

    • Tipo de recurso: o tipo de recurso do recurso que referencia a AMI.

    • ID do recurso: o ID do recurso que referencia a AMI.

AWS CLI
Para verificar as referências de AMIs para tipos de recursos específicos

Use o comando describe-image-references com o parâmetro --resource-types. O exemplo a seguir verifica as instâncias do EC2 (definição do escopo por estado da instância), modelos de inicialização (considerando as 20 versões mais recentes de modelos de inicialização) e outros 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'

O seguinte é um exemplo de saída.

{ "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 verificar as referências de AMIs para todos os tipos de recursos compatíveis

Use o comando describe-image-references com o parâmetro --include-all-resource-types.

aws ec2 describe-image-references \ --image-ids ami-0abcdef1234567890 ami-1234567890abcdef0 \ --include-all-resource-types
Para verificar as referências de AMIs para todos os tipos de recursos compatíveis e opções específicas

Use o comando describe-image-references com os parâmetros --include-all-resource-types e --resource-types. Este exemplo verifica todos os tipos de recursos ao definir o escopo da resposta das instâncias do EC2 para as instâncias em execução ou pendentes.

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 verificar as referências de AMIs para tipos de recursos específicos

Use o cmdlet Get-EC2ImageReference com o parâmetro -ResourceType. O exemplo a seguir verifica as instâncias do EC2 (definição do escopo por estado da instância), modelos de inicialização (considerando as 20 versões mais recentes de modelos de inicialização) e outros 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 verificar as referências de AMIs para todos os tipos de recursos compatíveis

Use o cmdlet Get-EC2ImageReference com o parâmetro -IncludeAllResourceTypes.

Get-EC2ImageReference ` -ImageId 'ami-0abcdef1234567890', 'ami-1234567890abcdef0' ` -IncludeAllResourceTypes
Para verificar as referências de AMIs para todos os tipos de recursos compatíveis e opções específicas

Use o cmdlet Get-EC2ImageReference com os parâmetros -IncludeAllResourceTypes e -ResourceType. Este exemplo verifica todos os tipos de recursos ao definir o escopo da resposta das instâncias do EC2 para as instâncias em execução ou pendentes.

Get-EC2ImageReference ` -ImageId 'ami-0abcdef1234567890', 'ami-1234567890abcdef0' ` -IncludeAllResourceTypes ` -ResourceType @( @{ ResourceType = 'ec2:Instance' ResourceTypeOptions = @( @{ OptionName = 'state-name' OptionValues = @('running', 'pending') } ) } )