

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# O que é o Image Builder?
<a name="what-is-image-builder"></a>

O EC2 Image Builder é totalmente AWS service (Serviço da AWS) gerenciado que ajuda você a automatizar a criação, o gerenciamento e a implantação de imagens personalizadas, seguras up-to-date e de servidor. Você pode usar o Console de gerenciamento da AWS, AWS Command Line Interface, ou APIs para criar imagens personalizadas em seu Conta da AWS.

Você é o proprietário das imagens personalizadas que o Image Builder cria em sua conta. Você pode configurar pipelines para automatizar as atualizações e a correção do sistema para as imagens de sua propriedade. Você também pode executar um comando independente para criar uma imagem com os recursos de configuração que você definiu.

O assistente de pipeline do Image Builder pode guiá-lo pelas etapas para criar uma imagem personalizada, da seguinte forma:

## Etapa 1: especificar detalhes do pipeline
<a name="wiz-step1-specify-pipeline-details"></a>
+ Dê um nome ao seu pipeline e adicione tags.
+ Defina as configurações de verificação de metadados e vulnerabilidades.
+ Defina um cronograma para o seu pipeline.

## Etapa 2: personalizar sua imagem
<a name="wiz-step2-choose-recipe"></a>

Você pode selecionar uma fórmula existente ou criar uma.
+ Escolha uma imagem de base para suas personalizações.
+ Adicione ou remova um software da sua imagem de base.
+ Personalize configurações e scripts com componentes de compilação.
+ Selecione os componentes de teste a serem executados.

## Etapa 3: definir seu fluxo de trabalho
<a name="wiz-step3-define-workflow"></a>

Um fluxo de trabalho de imagem define a sequência de etapas que o Image Builder executa durante os estágios de compilação e teste do processo de criação de imagens. Isso faz parte do framework do fluxo de trabalho do Image Builder.

## Etapa 4: configurar a infraestrutura de compilação
<a name="wiz-step4-define-infra"></a>
+ Selecione um perfil do IAM para associar ao perfil de instância referente a instâncias que o Image Builder executa durante o processo de criação de imagens.
+ Selecione um ou mais tipos de instância que podem ser aplicados na inicialização.
+ Selecione um tópico do Amazon Simple Notiﬁcation Service (SNS) para receber notificações do Image Builder.
+ Especifique a VPC, a sub-rede e grupos de segurança que se aplicam ao processo de criação de imagens.
+ Selecione as configurações de solução de problemas, como onde o Image Builder grava os logs e se deseja encerrar a instância de compilação em caso de falha (padrão) ou mantê-la em execução para solucionar problemas adicionais.

## Etapa 5: definir a distribuição da imagem
<a name="wiz-step5-distribution-settings"></a>
+ Selecione Regiões da AWS onde o Image Builder distribuirá sua Amazon Machine Image (AMI) ou imagem de contêiner.
+ Se o pipeline do Image Builder criar uma AMI, o Image Builder também permitirá a seguinte configuração:
  + Selecione uma chave do KMS para criptografia.
  + Configure o compartilhamento de AMI Contas da AWS entre organizações.
  + Associe uma licença autogerenciada do License Manager à imagem distribuída.
  + Configure um modelo de execução para sua imagem.

## Recursos do Image Builder
<a name="image-builder-features"></a>

O EC2 Image Builder fornece os seguintes atributos:

**Aumente a produtividade e reduza as operações de construção em conformidade e imagens up-to-date**

O Image Builder reduz a quantidade de trabalho envolvido na criação e no gerenciamento de imagens em escala ao automatizar seus pipelines de compilação. Você pode automatizar suas compilações fornecendo sua preferência de cronograma de execução de compilações. A automação reduz o custo operacional de manter seu software com os patches mais recentes do sistema operacional.

**Aumentar o tempo de atividade do serviço**

O Image Builder fornece acesso aos componentes de teste que você pode usar para testar suas imagens antes da implantação. Você também pode criar componentes de teste personalizados com AWS Task Orchestrator and Executor (AWSTOE) e usá-los. O Image Builder distribuirá sua imagem somente se todos os testes configurados tiverem êxito.

**Aumentar o nível de segurança para implantações**

O Image Builder permite criar imagens que removem a exposição desnecessária às vulnerabilidades de segurança dos componentes. Você pode aplicar configurações AWS de segurança para criar out-of-the-box imagens seguras que atendam aos critérios de segurança internos e do setor. O Image Builder também fornece coleções de configurações para empresas em setores regulamentados. Você pode usar essas configurações para ajudá-lo a compilar imagens compatíveis com os padrões do STIG de forma rápida e fácil. Para obter uma lista completa dos componentes do STIG disponíveis por meio do Image Builder, consulte [Componentes de hardening do STIG gerenciados pela Amazon para o Image Builder](ib-stig.md).

**Aplicação centralizada e rastreamento de linhagem**

Usando integrações integradas com AWS Organizations, o Image Builder permite que você aplique políticas que restringem as contas a executar instâncias somente a partir das aprovadas. AMIs

**Compartilhamento simplificado de recursos entre Contas da AWS**

O EC2 Image Builder se integra AWS Resource Access Manager com AWS RAM() para permitir que você compartilhe determinados recursos com Conta da AWS qualquer um ou por meio dele. AWS Organizations Os recursos do EC2 Image Builder que podem ser compartilhados são:
+ Componentes
+ Imagens
+ Fórmulas de imagem
+ Fórmulas de contêiner

Para obter mais informações, consulte [Compartilhe recursos do Image Builder com AWS RAM](manage-shared-resources.md).

## Sistemas operacionais compatíveis
<a name="image-builder-os"></a>

O Image Builder é compatível com as seguintes versões de sistemas operacionais:


| Sistema operacional/distribuição | Versões compatíveis | 
| --- | --- | 
|  Amazon Linux  |  2 e 2023  | 
|  CentOS  |  7 e 8  | 
|  CentOS Stream  |  8  | 
|  macOS  |  12,x (Monterey), 13,x (Ventura), 14,x (Sonoma), 15,x (Sequoia), 26,x (Tahoe)  | 
|  Red Hat Enterprise Linux (RHEL)  |  7, 8, 9 e 10  | 
|  SUSE Linux Enterprise Server (SUSE)  |  12, 15 e 16  | 
|  Ubuntu  |  18.04 LTS, 20.04 LTS, 22.04 LTS e 24.04 LTS  | 
|  Windows Server |  2012 R2, 2016, 2019, 2022 e 2025  | 

## Formatos de imagem compatíveis
<a name="image-builder-image-formats"></a>

Para suas imagens personalizadas que criam uma imagem de máquina da Amazon (AMI), você pode escolher uma AMI existente como ponto de partida. Para imagens de contêiner do Docker, você pode escolher entre imagens públicas hospedadas em DockerHub, imagens de contêiner existentes no Amazon ECR ou imagens de contêiner gerenciadas pela Amazon como ponto de partida.

## Cotas padrão
<a name="image-builder-default-limits"></a>

Para ver as cotas padrão do Image Builder, consulte [Endpoints and Quotas do Image Builder](https://docs.aws.amazon.com/general/latest/gr/imagebuilder.html). 

## AWS Regiões e endpoints
<a name="image-builder-regions"></a>

Para ver os endpoints de serviço do Image Builder, consulte [Endpoints e cotas do Image Builder](https://docs.aws.amazon.com/general/latest/gr/imagebuilder.html).

## Conceitos
<a name="image-builder-concepts"></a>

Os termos e conceitos a seguir são fundamentais para o entendimento e uso do EC2 Image Builder.

**AMI**  
Uma imagem de máquina da Amazon (AMI) é a unidade básica de implantação no Amazon EC2 e é um dos tipos de imagens que você pode criar com o Image Builder. Uma AMI é uma imagem de máquina virtual pré-configurada que contém o sistema operacional (OS) e o software pré-instalado para implantar instâncias do EC2. Para obter mais informações, consulte [Imagens de máquina da Amazon (AMIs)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html). 

**Pipeline de imagens**  
Um pipeline de imagens fornece uma estrutura de automação para criar imagens seguras AMIs e de contêiner AWS. O pipeline de imagens do Image Builder está associado a uma fórmula de imagem ou fórmula de contêiner que define a compilação, a validação e as fases de teste para o ciclo de vida da compilação de um imagem.

Um pipeline de imagens pode ser associado a uma configuração de infraestrutura que define onde a imagem é criada. É possível definir atributos, como tipo de instância, sub-redes, grupos de segurança, registros em log e outras configurações relacionadas à infraestrutura. Você também pode associar o pipeline de imagens a uma configuração de distribuição para definir como gostaria de implantar a imagem. 

**Imagem gerenciada**  
Uma imagem gerenciada é um recurso no Image Builder que consiste em uma AMI ou imagem de contêiner, além de metadados, como versão e plataforma. A imagem gerenciada é usada pelos pipelines do Image Builder para determinar qual imagem de base usar para a compilação. Neste guia, as imagens gerenciadas às vezes são chamadas de “imagens”; no entanto, uma imagem não é o mesmo que uma AMI.

**Fórmula da imagem**  
Uma fórmula de imagem do Image Builder é um documento que define a imagem de base e os componentes que são aplicados à imagem de base para produzir a configuração desejada para a imagem AMI de saída. É possível usar uma fórmula de imagem para duplicar compilações. As receitas de imagens do Image Builder podem ser compartilhadas, ramificadas e editadas usando o assistente do console AWS CLI, o ou a API. É possível usar fórmulas de imagem com seu software de controle de versão para manter fórmulas de imagem compartilháveis e com versionamento.

**Fórmula do contêiner**  
Uma fórmula de contêiner do Image Builder é um documento que define a imagem de base e os componentes que são aplicados à imagem de base para produzir a configuração desejada para a imagem de contêiner de saída. É possível usar uma fórmula de contêiner para duplicar compilações. É possível compartilhar, ramificar e editar fórmulas de imagem do Image Builder usando o assistente do console, o AWS CLI ou a API. É possível usar fórmulas de contêiner com seu software de controle de versão para manter fórmulas de contêiner compartilháveis e com versionamento.

**Imagem de base**  
A imagem de base é a imagem e o sistema operacional selecionados usados em seu documento de fórmula de imagem ou de contêiner, junto com os componentes. A imagem de base e as definições do componente combinadas produzem a configuração desejada para a imagem de saída.

**Componentes**  
Um componente define a sequência de etapas necessárias para personalizar uma instância antes da criação da imagem (um **componente de compilação**) ou para testar uma instância que foi inicializada a partir da imagem criada (um **componente de teste**).

Um componente é criado a partir de um documento YAML ou JSON declarativo em texto simples que descreve a configuração do runtime para compilar e validar ou testar uma instância produzida pelo seu pipeline. Os componentes são executados na instância usando um aplicativo de gerenciamento de componentes. O aplicativo de gerenciamento de componentes analisa os documentos e executa as etapas desejadas.

Depois de criados, um ou mais componentes são agrupados usando uma fórmula de imagem ou uma fórmula de contêiner para definir o plano de compilação e teste de uma imagem de contêiner ou máquina virtual. Você pode usar componentes públicos que são de propriedade e gerenciados por AWS, ou você pode criar seus próprios. Para obter mais informações sobre componentes, consulte [Como o Image Builder usa o AWS Task Orchestrator and Executor aplicativo para gerenciar componentes](toe-component-manager.md).

**Documento do componente**  
Um documento YAML ou JSON declarativo em texto simples que descreve a configuração de uma personalização que você pode aplicar à sua imagem. O documento é usado para criar um componente de compilação ou teste.

**Estágios de runtime**  
O EC2 Image Builder tem dois estágios de runtime: **compilação** e **teste**. Cada estágio de runtime tem uma ou mais fases com a configuração definida pelo documento do componente.

**Fases de configuração**  
A lista a seguir mostra as fases que são executadas durante os estágios de **compilação** e **teste**:*Estágio de compilação:*

Fase da compilação  
Um pipeline de imagem começa com a fase de compilação do estágio de compilação quando ele é executado. A imagem de base é baixada e a configuração especificada para a fase de compilação do componente é aplicada para compilar e inicializar uma instância.

Fase de validação  
Depois que o Image Builder inicializar a instância e aplicar todas as personalizações da fase de compilação, a fase de validação começa. Durante essa fase, o Image Builder garante que todas as personalizações funcionem conforme o esperado, com base na configuração que o componente especifica para a fase de validação. Se a validação da instância for bem-sucedida, o Image Builder interrompe a instância, cria uma imagem e continua até o estágio de teste.*Estágio de teste:*

Fase de teste  
Durante essa fase, o Image Builder inicializa uma instância a partir da imagem que ele criou após a conclusão bem-sucedida da fase da validação. O Image Builder executa componentes de teste durante essa fase para verificar se a instância está íntegra e funciona conforme o esperado.

Fase de teste do host do contêiner  
Depois que o Image Builder executa a fase de teste para todos os componentes selecionados na fórmula do contêiner, o Image Builder executa esta fase para fluxos de trabalho do contêiner. A fase de teste do host do contêiner pode executar testes adicionais que validam o gerenciamento de contêineres e as configurações de runtime personalizadas.

**Fluxo de trabalho**  
Os fluxos de trabalho definem a sequência de etapas que o Image Builder realiza ao criar uma nova imagem. Todas as imagens têm fluxos de trabalho de criação, teste e distribuição.*Tipo de fluxo de trabalho*

`BUILD`  
Abrange a configuração do estágio de compilação para cada imagem criada.

`TEST`  
Abrange a configuração do estágio de teste para cada imagem criada.

`DISTRIBUTION`  
Abrange a configuração do estágio de distribuição para cada imagem criada.

## Preços
<a name="image-builder-pricing"></a>

Não há custo para usar o EC2 Image Builder para criar AMIs ou imagens de contêiner personalizadas. No entanto, o preço padrão se aplica a outros serviços que são usados no processo. A lista a seguir inclui o uso de algumas Serviços da AWS que podem gerar custos quando você cria, cria, armazena e distribui sua AMI personalizada ou imagens de contêiner, dependendo da sua configuração.
+ Inicializar uma instância do EC2
+ Armazenar logs no Amazon S3
+ Validar imagens com o Amazon Inspector
+ Armazenando snapshots do Amazon EBS para seu AMIs
+ Armazenar imagens de contêiner no Amazon ECR
+ Enviar imagens de contêiner para o Amazon ECR e extrair imagens de contêiner do Amazon ECR
+ Se o Systems Manager Advanced Tier estiver ativado e as instâncias do Amazon EC2 forem executadas com ativação on-premises, você poderá ser cobrado pelos recursos por meio do Systems Manager

## Relacionado Serviços da AWS
<a name="image-builder-related-services"></a>

O EC2 Image Builder usa Serviços da AWS outros para criar imagens, dependendo da configuração da receita do Image Builder. Para obter mais informações sobre a integração de produtos e serviços para suas imagens personalizadas, consulte [Integrar produtos e serviços no Image Builder](integrate-products-services.md).

# Como funciona o EC2 Image Builder
<a name="how-image-builder-works"></a>

Quando você usa o console do EC2 Image Builder para criar um pipeline de imagem personalizado, o sistema orienta você pelas etapas a seguir.

1. **Especifique os detalhes do pipeline**: insira informações sobre seu pipeline, como nome, descrição, tags e um cronograma para executar compilações automatizadas. Se preferir, você pode escolher construções manuais.

1. **Escolha a fórmula**: escolha entre criar uma AMI ou criar uma imagem de contêiner. Para os dois tipos de imagens de saída, você insere um nome e uma versão para sua fórmula, seleciona uma imagem base e escolhe os componentes a serem adicionados para criação e teste. Você também pode escolher o controle de versão automático para garantir que sempre use a versão mais recente disponível do sistema operacional (SO) para sua imagem base. Além disso, as fórmulas de contêiner definem Dockerfiles e o repositório Amazon ECR de destino para sua imagem de contêiner Docker de saída.
**nota**  
Os componentes são os blocos de construção que são consumidos por uma fórmula de imagem ou uma fórmula de recipiente. Por exemplo, pacotes para instalação, etapas de fortalecimento da segurança e testes. A imagem base e os componentes selecionados formam uma fórmula de imagem.

1. **Defina a configuração da infraestrutura** — O Image Builder inicia EC2 instâncias em sua conta para personalizar imagens e executar testes de validação. As configurações da infraestrutura especificam os detalhes da infraestrutura para as instâncias que serão executadas na sua Conta da AWS durante o processo de criação.

1. **Defina as configurações de distribuição**: escolha as AWS regiões para as quais distribuir sua imagem após a conclusão da compilação e a aprovação em todos os testes. O pipeline distribui automaticamente sua imagem para a região em que executa a compilação, e você pode adicionar distribuição de imagens para outras regiões.

As imagens que você cria a partir da sua imagem base personalizada estão no seu Conta da AWS. Você pode configurar seu pipeline de imagens para produzir versões atualizadas e corrigidas de sua imagem inserindo um cronograma de construção. Quando a compilação for concluída, você poderá receber uma notificação por meio do [Amazon Simple Notification Service (SNS).](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) Além de produzir uma imagem final, o assistente do console do Image Builder gera uma receita que pode ser usada com sistemas de controle de versão e pipelines de integration/continuous implantação contínua (CI/CD) existentes para automação repetível. Você pode compartilhar e criar novas versões da sua fórmula.

**Topics**
+ [

## Elementos da AMI
](#ami-image-elements)
+ [

## Gerenciamento de componentes
](#ibhow-component-management)
+ [

## Recursos criados
](#image-builder-resources)
+ [

## Distribuição
](#image-builder-distribution)
+ [

## Compartilhar recursos
](#ibhow-sharing)
+ [

## Compliance
](#ibhow-compliance)

## Elementos da AMI
<a name="ami-image-elements"></a>

Uma Amazon Machine Image (AMI) é uma imagem de máquina virtual (VM) pré-configurada que contém o sistema operacional e o software para EC2 implantar instâncias.

Uma AMI inclui os seguintes elementos:
+ Um modelo para o volume raiz da VM. Quando você inicia uma Amazon EC2 VM, o volume do dispositivo raiz contém a imagem para inicializar a instância. Quando o armazenamento de instâncias é usado, o dispositivo raiz é um volume de armazenamento de instâncias criado em um modelo no Amazon S3. Para obter mais informações, consulte [Amazon EC2 Root Device Volume](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/RootDeviceStorage.html). 
+ Quando o Amazon EBS é usado, o dispositivo raiz é um volume do EBS criado em um snapshot do [EBS](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-snapshots.html).
+ Permissões de lançamento que determinam o Contas da AWS que pode ser iniciado VMs com a AMI.
+ Dados de [mapeamento de dispositivos de blocos](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html) que especifica os volumes a serem anexados à instância quando ela for executada.
+ Um [identificador de recurso](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/resource-ids.html) exclusivo para cada região, para cada conta.
+ Cargas de [metadados](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html), como tags, e propriedades, como região, sistema operacional, arquitetura, tipo de dispositivo raiz, provedor, permissões de inicialização, armazenamento para o dispositivo raiz e status de assinatura.
+ Uma assinatura AMI para imagens do Windows para proteção contra adulteração não autorizada. Para obter mais informações, consulte [Documentos de identidade da instância](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/instance-identity-documents.html).

## Gerenciamento de componentes
<a name="ibhow-component-management"></a>

EC2 O Image Builder usa um aplicativo de gerenciamento de componentes AWS Task Orchestrator and Executor (AWSTOE) que ajuda você a orquestrar fluxos de trabalho complexos, modificar configurações do sistema e testar seus sistemas com componentes de script baseados em YAML. Por ser AWSTOE um aplicativo independente, ele não requer nenhuma configuração adicional. Pode ser executado em qualquer infraestrutura de nuvem e no local. Para começar a usar AWSTOE como um aplicativo independente, consulte[Configuração manual para desenvolver componentes personalizados com AWSTOE](toe-get-started.md).

O Image Builder usa AWSTOE para realizar todas as atividades na instância. Isso inclui criar e validar sua imagem antes de tirar um snapshot e testar o snapshot para garantir que ele funcione conforme o esperado antes de criar a imagem final. Para obter mais informações sobre como o Image Builder usa AWSTOE para gerenciar seus componentes, consulte[Usar componentes para personalizar sua imagem do Image Builder](manage-components.md). Para obter mais informações sobre a criação de componentes com AWSTOE, consulte [Como o Image Builder usa o AWS Task Orchestrator and Executor aplicativo para gerenciar componentes](toe-component-manager.md).

### Teste de imagem
<a name="ibhow-testing"></a>

Você pode usar componentes de AWSTOE teste para validar sua imagem e garantir que ela funcione conforme o esperado, antes de criar a imagem final.

Geralmente, cada componente de teste consiste em um documento YAML que contém um script de teste, um binário de teste e metadados de teste. O script de teste contém os comandos de orquestração para iniciar o binário de teste, que pode ser escrito em qualquer linguagem compatível com o sistema operacional. Os códigos de status de saída indicam o resultado do teste. Os metadados de teste descrevem o teste e seu comportamento; por exemplo, o nome, a descrição, os caminhos para testar o binário e a duração esperada.

## Recursos criados
<a name="image-builder-resources"></a>

Quando você cria um pipeline, nenhum recurso externo ao Image Builder é criado, a menos que o seguinte seja verdadeiro: 
+ Quando uma imagem é criada por meio do cronograma do pipeline
+ Quando você escolhe **Executar pipeline** no menu **Ações** no console do Image Builder
+ Quando você executa um desses comandos a partir da API ou AWS CLI: **StartImagePipelineExecution** ou **CreateImage**

Os seguintes recursos são criados durante o processo de criação da imagem:

**Pipelines de imagens da AMI**
+ EC2 instância (*temporária*)
+ Systems Manager Inventory Association (por meio do Systems Manager State Manager, se `EnhancedImageMetadata` estiver habilitado) na EC2 instância
+ Amazon EC2 AMI
+ O Amazon EBS Snapshot associado ao Amazon AMI EC2 

**Pipelines de imagens de contêiner**
+ Contêiner Docker em execução em uma EC2 instância (*temporário*)
+ A Systems Manager Inventory Association (por meio do Systems Manager State Manager) `EnhancedImageMetadata` está ativada) na EC2 instância
+ Imagem do contêiner do docker
+ Dockerfile

Depois que a imagem for criada, todos os recursos temporários serão excluídos.

## Distribuição
<a name="image-builder-distribution"></a>

EC2 O Image Builder pode distribuir AMIs ou armazenar imagens em qualquer AWS região. A imagem é copiada para cada região especificada na conta usada para criar a imagem.

Para imagens de saída da AMI, você pode definir as permissões de execução da AMI para controlar quais Contas da AWS têm permissão para executar EC2 instâncias com a AMI criada. Por exemplo, você pode tornar a imagem privada, pública ou compartilhar com contas específicas. Se você distribuir a AMI para outras regiões e definir permissões de execução para outras contas, as permissões de execução serão propagadas para todas as regiões nas quais a AMI é distribuída. AMIs 

Você também pode usar sua AWS Organizations conta para impor limitações às contas dos membros para iniciar instâncias somente com instâncias aprovadas e em conformidade AMIs. Para obter mais informações, consulte [Gerenciando o Contas da AWS em sua organização](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts.html).

Para atualizar suas configurações de distribuição usando o console do Image Builder, siga as etapas para [Criar uma versão de uma fórmula de imagem com o console](create-image-recipes.md#create-image-recipe-version-console), ou [Crie uma nova versão de fórmula de contêiner com o console](create-container-recipes.md#create-container-recipe-version).

## Compartilhar recursos
<a name="ibhow-sharing"></a>

Para compartilhar componentes, receitas ou imagens com outras contas ou dentro delas AWS Organizations, consulte[Compartilhe recursos do Image Builder com AWS RAM](manage-shared-resources.md).

## Compliance
<a name="ibhow-compliance"></a>

Para os benchmarks do Center for Internet Security (CIS), o EC2 Image Builder usa o Amazon Inspector para realizar avaliações de exposição, vulnerabilidades e desvios das melhores práticas e padrões de conformidade. Por exemplo, o Image Builder avalia a acessibilidade não intencional da rede, a conectividade pública sem patches com CVEs a Internet e a ativação remota do login raiz. O Amazon Inspector é oferecido como um componente de teste que você pode escolher adicionar à sua fórmula de imagem. Para obter mais informações sobre o Amazon Inspector, consulte o Guia do usuário do *[Amazon Inspector](https://docs.aws.amazon.com/inspector/v1/userguide/inspector_introduction.html)*. Para obter mais informações, consulte [Center for Internet Security (CIS) Benchmarks](https://docs.aws.amazon.com/inspector/latest/userguide/inspector_cis.html).

O Image Builder fornece componentes de fortalecimento do STIG para ajudá-lo a compilar, de forma mais eficiente, imagens compatíveis para os padrões do STIG de base. Esses componentes do STIG verificam se há configurações incorretas e executam um script de correção. Não há cobranças adicionais pelo uso de componentes em conformidade com o STIG. Para obter uma lista completa dos componentes do STIG disponíveis por meio do Image Builder, consulte [Componentes de hardening do STIG gerenciados pela Amazon para o Image Builder](ib-stig.md).

# Versionamento semântico no Image Builder
<a name="ibhow-semantic-versioning"></a>

O Image Builder usa versionamento semântico para organizar recursos e garantir que eles sejam exclusivos. IDs Essa versão semântica tem quatro nós:

**<major>*. *<minor>*. *<patch>**/<build>

É possível atribuir valores para os três primeiros e filtrar todos eles.

O controle de versionamento semântico está incluído no nome do recurso da Amazon (ARN) de cada objeto, no nível que se aplica a esse objeto da seguinte forma:

1. Versionless ARNs e Name ARNs não incluem valores específicos em nenhum dos nós. Os nós são totalmente excluídos ou são especificados como curingas, por exemplo: x.x.x.

1. A versão ARNs tem apenas os três primeiros nós:<major>. <minor>. <patch>

1. A versão de compilação ARNs tem todos os quatro nós e aponta para uma construção específica de uma versão específica de um objeto.

**Atribuição:** Para os primeiros três nós, você pode atribuir qualquer valor inteiro positivo, ou zero, com um limite superior de 2^30-1, ou 1073741823 para cada nó. O Image Builder atribui o número da compilação automaticamente ao quarto nó.

**Padrão:** é possível utilizar qualquer padrão numérico que atenda aos requisitos de atribuição para os nós que você pode atribuir. Por exemplo, você pode escolher um padrão de versão de software, como 1.0.0, ou uma data, como 2021.01.01.

**Seleção:** com o versionamento semântico, você tem a flexibilidade de utilizar curingas (x) para especificar as versões ou os nós mais recentes ao selecionar a imagem base ou os componentes para sua fórmula. Quando um curinga é usado em qualquer nó, todos os nós à direita do primeiro curinga também devem ser curingas.

Por exemplo, dadas as seguintes versões recentes: 2.2.4, 1.7.8 e 1.6.8, a seleção de versão usando curingas produz os seguintes resultados:
+ `x.x.x` = 2.2.4
+ `1.x.x` = 1.7.8
+ `1.6.x` = 1.6.8
+ `x.2.x` não é válido e produz um erro
+ `1.x.8` não é válido e produz um erro

## Controle de versão curinga nas políticas de ciclo de vida
<a name="lifecycle-wildcard-versioning"></a>

Você pode usar padrões curinga para versões semânticas na seleção de receitas de políticas de ciclo de vida para direcionar várias versões de uma receita com uma única política. Isso simplifica o gerenciamento do ciclo de vida, eliminando a necessidade de criar políticas separadas para cada versão da receita.

Os seguintes padrões curinga são compatíveis com as versões de receitas de políticas de ciclo de vida:
+ `x.x.x`— Combina com todas as versões da receita.
+ `1.x.x`— Corresponde a todas as versões secundárias e de patch da versão principal 1.
+ `1.0.x`— Corresponde a todas as versões de patch da versão 1.0.

Quando uma política de ciclo de vida com padrões curinga é executada, o Image Builder resolve os curingas para todas as versões de receitas correspondentes no momento da execução. Isso cria uma lista imutável de versões para essa execução. Novas versões de receitas criadas após o início da execução da política são automaticamente incluídas na próxima execução programada.

Para obter mais informações sobre a criação de políticas de ciclo de vida com controle de versão curinga, consulte. [Criar políticas de ciclo de vida](create-lifecycle-policies.md)

## Usando referências de versão
<a name="using-version-references"></a>

 As referências de versão são cadeias de caracteres ready-to-use ARN que incorporam padrões curinga com base na versão semântica do recurso que você criou ou recuperou. Em vez de escrever código personalizado para analisar ARNs e inserir curingas, o Image Builder faz esse trabalho para você.

Quando você cria ou recupera recursos do Image Builder, o Image Builder fornece automaticamente padrões de versão pré-construídos ARNs com caracteres curinga no objeto. `latestVersionReferences` Isso elimina a necessidade de analisar e reconstruir manualmente ARNs quando você deseja referenciar recursos usando padrões de versão curinga.

Por exemplo, quando você cria um componente com versão`1.2.3`, o Image Builder retorna:

```
{
    "componentBuildVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/1.2.3/1",
    "latestVersionReferences": {
        "latestVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/x.x.x",
        "latestMajorVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/1.x.x",
        "latestMinorVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/1.2.x",
        "latestPatchVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/1.2.3"
    }
}
```

## Padrões de referência de versão disponíveis
<a name="available-reference-patterns"></a>

O `latestVersionReferences` objeto contém quatro padrões de ARN:
+ latestVersionArn (x.x.x) - Sempre resolve para a versão mais recente absoluta.
+ atestMajorVersionArn (1.x.x) - Resolve para as versões secundárias e de patch mais recentes dentro de uma versão principal.
+ latestMinorVersionArn (1.2.x) - Vai para a versão mais recente do patch em uma versão secundária específica.
+ latestPatchVersionArn (1.2.3) - Faz referência a uma versão semântica específica e resolve para a versão de compilação mais recente para recursos que oferecem suporte a várias versões de compilação.

## Recursos que retornam referências de versão
<a name="resources-returning-references"></a>

As referências de versão são retornadas por `Create` e `Get` APIs para todos os recursos do Image Builder versionados:
+ Componentes -`CreateComponent`, `GetComponent`
+ Receitas de imagens -`CreateImageRecipe`, `GetImageRecipe`
+ Receitas de contêineres -`CreateContainerRecipe`, `GetContainerRecipe`
+ Imagens -`CreateImage`, `GetImage`
+ Fluxos de trabalho -`CreateWorkflow`, `GetWorkflow`

*Nota:* Para fluxos de trabalho gerenciados pelo Image Builder, somente `latestVersionArn (x.x.x)` é retornado, pois o Image Builder exige que você sempre use a versão mais recente dos fluxos de trabalho gerenciados pelo Image Builder.