Disponibilizar publicamente sua AMI para uso no Amazon EC2 - Amazon Elastic Compute Cloud

Disponibilizar publicamente sua AMI para uso no Amazon EC2

Você pode tornar sua AMI disponível publicamente compartilhando-a com todos os Contas da AWS.

Se você quiser impedir o compartilhamento público de suas AMIs, você pode habilitar o bloqueio de acesso público para AMIs. Isso bloqueia qualquer tentativa de tornar uma AMI pública, ajudando a evitar acesso não autorizado e possível uso indevido dos dados da AMI. Observe que habilitar o bloqueio de acesso público não afeta as AMIs que já estão publicamente disponíveis; elas permanecem publicamente acessíveis. Para ter mais informações, consulte Saiba mais sobre o bloqueio de acesso público para AMIs.

Para permitir que apenas contas específicas usem sua AMI para iniciar instâncias, consulte Compartilhar uma AMI com contas específicas da AWS.

Considerações

Considere as informações a seguir antes de tornar uma AMI pública.

  • Propriedade: para tornar uma AMI pública, sua Conta da AWS deve ser proprietária da AMI.

  • Region: as AMIs são um recurso regional. Quando você compartilha uma AMI, ela só está disponível na região de onde foi compartilhada. Para disponibilizar uma AMI em uma região diferente, copie a AMI para a região e compartilhe-a. Para ter mais informações, consulte Copiar uma AMI do Amazon EC2.

  • Bloquear o acesso público — Para compartilhar publicamente uma AMI, o bloqueio do acesso público para AMIs deve ser desativado em cada região na qual a AMI será compartilhada publicamente. Depois de compartilhar publicamente a AMI, você pode reativar o bloqueio do acesso público para AMIs para evitar mais compartilhamentos públicos de suas AMIs.

  • Algumas AMIs não podem ser tornadas públicas: se sua AMI tiver um dos seguintes componentes, você não poderá torná-la pública (mas poderá compartilhar a AMI com Contas da AWS específicas):

    • Volumes criptografados

    • Snapshots de volumes criptografados

    • Códigos do produto

  • Evite a exposição de dados confidenciais: para evitar expor dados confidenciais ao compartilhar uma AMI, leia as considerações de segurança em Recomendações para criar AMIs compartilhadas no Linux e siga as ações recomendadas.

  • Uso: quando você compartilha uma AMI, os usuários podem apenas iniciar instâncias pela AMI. Eles não podem excluí-la, compartilhá-la nem modificá-la. Porém, após iniciarem uma instância usando sua AMI, poderão criar uma AMI com base na instância que iniciaram.

  • Descontinuação automática: por padrão, a data de descontinuação de todas as AMIs públicas é definida como dois anos após a data de criação da AMI. É possível definir a data de descontinuação para antes de dois anos. Para cancelar a data de descontinuação ou adiá-la para uma data posterior, você deve tornar a AMI privada compartilhando-a somente com Contas da AWS específicas.

  • Remoção de AMIs obsoletas: depois que uma AMI pública atinge a data de descontinuação, se novas instâncias não forem iniciadas usando a AMI por seis meses ou mais, a AWS eventualmente remove a propriedade de compartilhamento público para que as AMIs obsoletas não apareçam nas listas de AMI públicas.

  • Faturamento: você não é cobrado quando sua AMI é usada por outras Contas da AWS para executar instâncias. As contas que iniciam instâncias usando a AMI são cobradas pelas instâncias que iniciam.

Compartilhe uma AMI com todas as AWS contas (compartilhe publicamente)

Depois de tornar uma AMI pública, ela fica disponível nas AMIs da comunidade no console, que você pode acessar no catálogo da AMI no navegador esquerdo do console do EC2 ou ao iniciar uma instância usando o console. Observe que pode demorar um pouco para a AMI aparecer em AMIs da comunidade depois de você torná-la pública.

Console
Para tornar um AMI pública
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

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

  3. Selecione a AMI na lista e escolha Actions (Ações), Edit AMI permissions (Editar permissões de AMI).

  4. Em AMI availability (Disponibilidade da AMI), escolha Public (Pública).

  5. Escolha Salvar alterações.

AWS CLI

Cada AMI tem uma propriedade launchPermission que controla quais Contas da AWS, além do proprietário, têm permissão para usar essa AMI para executar instâncias. Ao modificar a propriedade launchPermission da AMI, é possível torná-la pública (o que concede permissões de execução a todas as Contas da AWS) ou compartilhá-la somente com as Contas da AWS que você especificar.

É possível adicionar ou remover os IDs da lista de contas que tiverem permissões de execução para uma AMI. Para tornar a AMI pública, especifique o grupo all. É possível especificar permissões públicas e permissões de execução explícita.

Para tornar um AMI pública
  1. Use o comando modify-image-attribute da seguinte forma para adicionar o grupo all à lista launchPermission para a AMI especificada.

    aws ec2 modify-image-attribute \ --image-id ami-0abcdef1234567890 \ --launch-permission "Add=[{Group=all}]"
  2. Para verificar as permissões de execução da AMI, use o comando describe-image-attribute.

    aws ec2 describe-image-attribute \ --image-id ami-0abcdef1234567890 \ --attribute launchPermission
  3. (Opcional) Para tornar a AMI privada novamente, remova o grupo all de suas permissões de execução. Observe que o proprietário da AMI sempre tem permissões de execução e, portanto, não é afetado por este comando.

    aws ec2 modify-image-attribute \ --image-id ami-0abcdef1234567890 \ --launch-permission "Remove=[{Group=all}]"
PowerShell

Cada AMI tem uma propriedade launchPermission que controla quais Contas da AWS, além do proprietário, têm permissão para usar essa AMI para executar instâncias. Ao modificar a propriedade launchPermission da AMI, é possível torná-la pública (o que concede permissões de execução a todas as Contas da AWS) ou compartilhá-la somente com as Contas da AWS que você especificar.

É possível adicionar ou remover os IDs da lista de contas que tiverem permissões de execução para uma AMI. Para tornar a AMI pública, especifique o grupo all. É possível especificar permissões públicas e permissões de execução explícita.

Para tornar um AMI pública
  1. Use o comando Edit-EC2ImageAttribute da seguinte forma para adicionar o grupo all à lista launchPermission para a AMI especificada.

    PS C:\> Edit-EC2ImageAttribute -ImageId ami-0abcdef1234567890 -Attribute launchPermission -OperationType add -UserGroup all
  2. Para verificar as permissões de execução da AMI, use o seguinte comando Get-EC2ImageAttribute.

    PS C:\> Get-EC2ImageAttribute -ImageId ami-0abcdef1234567890 -Attribute launchPermission
  3. (Opcional) Para tornar a AMI privada novamente, remova o grupo all de suas permissões de execução. Observe que o proprietário da AMI sempre tem permissões de execução e, portanto, não é afetado por este comando.

    PS C:\> Edit-EC2ImageAttribute -ImageId ami-0abcdef1234567890 -Attribute launchPermission -OperationType remove -UserGroup all