Criação e uso de permissões gerenciadas pelo cliente no AWS RAM - AWS Resource Access Manager

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á.

Criação e uso de permissões gerenciadas pelo cliente no AWS RAM

AWS Resource Access Manager (AWS RAM) fornece pelo menos uma permissão AWS gerenciada para cada tipo de recurso que você pode compartilhar. No entanto, essas permissões gerenciadas podem não fornecer o privilégio mínimo de acesso para seu caso de uso de compartilhamento. Quando uma das permissões AWS gerenciadas fornecidas não funciona, você pode criar sua própria permissão gerenciada pelo cliente.

As permissões gerenciadas pelo cliente são permissões gerenciadas que você cria e mantém especificando com precisão quais ações podem ser executadas sob quais condições com recursos compartilhados usando o AWS RAM. Por exemplo, você quer limitar o acesso de leitura aos seus grupos do Gerenciador de endereços IP (IPAM) da Amazon VPC, que ajudam você a gerenciar seus endereços IP em grande escala. Você pode criar permissões gerenciadas pelo cliente para que seus desenvolvedores atribuam endereços IP, mas não visualizem o intervalo de endereços IP que outras contas de desenvolvedor atribuem. É possível seguir as práticas recomendadas de privilégio mínimo, conceda apenas as permissões necessárias para executar tarefas em recursos compartilhados.

Além disso, você pode atualizar ou excluir as permissões gerenciadas pelo cliente conforme necessário.

Criar uma permissão gerenciada pelo cliente

As permissões gerenciadas pelo cliente são específicas para um Região da AWS. Certifique-se de criar essa permissão gerenciada pelo cliente na região apropriada.

Console
Para criar uma permissão gerenciada pelo cliente
  1. Execute um destes procedimentos:

  2. Em Detalhes da permissão gerenciada pelo cliente, insira o nome da permissão gerenciada pelo cliente.

  3. Escolha o tipo de recurso ao qual essa permissão gerenciada se aplica.

  4. Para Modelo de política, você define quais operações podem ser executadas nesse tipo de recurso.

    • Você pode escolher Importar permissão gerenciada para usar ações de uma permissão gerenciada existente.

    • Selecione ou desmarque as informações do nível de acesso para atender às suas necessidades no editor visual.

    • Adicione ou modifique condições usando o editor JSON.

  5. (Opcional) Para anexar tags à permissão gerenciada, para Tags, insira uma chave e um valor de tag. Para adicionar mais tags, selecione Adicionar nova tag. Repita esta etapa conforme necessário.

  6. Quando concluir, escolha Criar permissão gerenciada pelo cliente.

AWS CLI
Para criar uma permissão gerenciada pelo cliente
  • Execute o comando create-permission e especifique um nome, o tipo de recurso ao qual a permissão gerenciada pelo cliente se aplica e o corpo do texto do modelo de política.

    O comando de exemplo a seguir cria uma permissão gerenciada para o tipo de recurso imagebuilder:Component.

    $ aws ram create-permission \ --name TestCMP \ --resource-type imagebuilder:Component \ --policy-template "{\"Effect\":\"Allow\",\"Action\":[\"imagebuilder:ListComponents\"]}" { "permission": { "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP", "version": "1", "defaultVersion": true, "isResourceTypeDefault": false, "name": "TestCMP", "resourceType": "imagebuilder:Component", "status": "ATTACHABLE", "creationTime": 1680033769.401, "lastUpdatedTime": 1680033769.401 } }

Criar uma nova versão de uma permissão gerenciada pelo cliente

Se o caso de uso da permissão gerenciada pelo cliente mudar, você poderá criar uma nova versão da permissão gerenciada. Isso não afeta seus compartilhamentos de recursos existentes, somente os novos compartilhamentos de recursos futuros que usarem essa permissão gerenciada pelo cliente.

Cada permissão gerenciada pode ter até cinco versões, mas você pode associar somente a versão padrão.

Console
Para criar uma nova versão de uma permissão gerenciada pelo cliente
  1. Navegue até a Biblioteca de permissões gerenciadas.

  2. Filtre a lista de permissões gerenciadas por Gerenciado pelo cliente ou pesquise o nome da permissão gerenciada pelo cliente que você deseja alterar.

  3. Na página de detalhes da permissão gerenciada, na seção Versões de permissões gerenciadas, escolha Criar versão.

  4. Para Modelo de política, você pode adicionar ou remover ações e condições com o editor visual ou o editor JSON.

    Você também tem a opção de escolher Importar permissão gerenciada para usar um modelo de política existente.

  5. Quando concluir, escolha Criar versão na parte inferior da página.

AWS CLI
Para criar uma nova versão de uma permissão gerenciada pelo cliente
  1. Encontre o nome do recurso da Amazon (ARN) da permissão gerenciada para a qual você deseja criar uma nova versão. Faça isso chamando list-permissions com o parâmetro --permission-type CUSTOMER_MANAGED para incluir somente as permissões gerenciadas pelo cliente.

    $ aws ram-cmp list-permissions --permission-type CUSTOMER_MANAGED { "permissions": [ { "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP", "version": "2", "defaultVersion": true, "isResourceTypeDefault": false, "name": "TestCMP", "permissionType": "CUSTOMER_MANAGED", "resourceType": "imagebuilder:Component", "status": "ATTACHABLE", "creationTime": 1680035597.346, "lastUpdatedTime": 1680035597.346 } ] }
  2. Depois de ter o ARN, você pode chamar a create-permission-versionoperação e fornecer o modelo de política atualizado.

    $ aws ram create-permission-version \ --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP \ --policy-template {"Effect":"Allow","Action":["imagebuilder:ListComponents"]} { "permission": { "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP", "version": "2", "defaultVersion": true, "isResourceTypeDefault": false, "name": "TestCMP", "status": "ATTACHABLE", "resourceType": "imagebuilder:Component", "permission": "{\"Effect\":\"Allow\",\"Action\":[\"imagebuilder:ListComponents\"]}", "creationTime": 1680038973.79, "lastUpdatedTime": 1680038973.79 } }

    A saída inclui o número da nova versão.

Escolha uma versão diferente para ser a padrão para uma permissão gerenciada pelo cliente

Você pode definir outra versão de permissão gerenciada pelo cliente como a nova versão padrão.

Console
Para definir uma nova versão padrão para uma permissão gerenciada pelo cliente
  1. Navegue até a Biblioteca de permissões gerenciadas.

  2. Filtre a lista de permissões gerenciadas por Gerenciado pelo cliente ou pesquise o nome da permissão gerenciada pelo cliente que você deseja alterar.

  3. Na página Detalhes da permissão gerenciada pelo cliente, na seção Versões de permissões gerenciadas, use a lista suspensa para escolher a versão que você deseja definir como o novo padrão.

  4. Escolha Definir como padrão.

  5. Quando a caixa de diálogo for exibida, confirme que você deseja que essa versão seja a padrão para todos os novos compartilhamentos de recursos que usarem essa permissão gerenciada pelo cliente. Se você concordar, escolha Definir como versão padrão.

AWS CLI
Para definir uma nova versão padrão para uma permissão gerenciada pelo cliente
  1. Encontre o número da versão que você deseja definir como a versão padrão ligando para list-permission-versions.

    O comando de exemplo a seguir recupera as versões atuais da permissão gerenciada especificada.

    $ aws ram list-permission-versions \ --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP { "permissions": [ { "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP", "version": "1", "defaultVersion": false, "isResourceTypeDefault": false, "name": "TestCMP", "permissionType": "CUSTOMER_MANAGED", "featureSet": "STANDARD", "resourceType": "imagebuilder:Component", "status": "UNATTACHABLE", "creationTime": 1680033769.401, "lastUpdatedTime": 1680035597.345 }, { "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP", "version": "2", "defaultVersion": true, "isResourceTypeDefault": false, "name": "TestCMP", "permissionType": "CUSTOMER_MANAGED", "featureSet": "STANDARD", "resourceType": "imagebuilder:Component", "status": "ATTACHABLE", "creationTime": 1680035597.346, "lastUpdatedTime": 1680035597.346 } ] }
  2. Depois de definir o número da versão como padrão, você pode chamar a set-default-permission-versionoperação.

    $ aws ram-cmp set-default-permission-version \ --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP \ --version 2

    Este comando não retorna nenhuma saída se for bem-sucedido. Você pode executar list-permission-versionsnovamente e verificar se o defaultVersion campo da versão escolhida agora está definido comotrue.

Excluir uma versão de permissão gerenciada pelo cliente

Você pode ter até cinco versões de cada permissão gerenciada pelo cliente. Quando uma versão não for mais necessária e não estiver em uso, você poderá excluí-la. Você não pode excluir a versão padrão de uma permissão gerenciada pelo cliente. As versões excluídas permanecem visíveis no console por até duas horas com um status excluído antes de serem completamente removidas.

Console

Para excluir uma versão de permissão gerenciada pelo cliente

  1. Navegue até a Biblioteca de permissões gerenciadas.

  2. Filtre a lista de permissões gerenciadas por Gerenciado pelo cliente ou pesquise o nome da permissão gerenciada pelo cliente com a versão que você deseja excluir.

  3. Certifique-se de que a versão que você deseja excluir não seja a padrão.

  4. Na seção Versões da página, escolha a guia Compartilhamentos de recursos associados para ver se algum compartilhamento usa essa versão.

    Se houver algum compartilhamento associado, você deverá alterar a versão da permissão gerenciada pelo cliente antes de excluir essa versão.

  5. Escolha Excluir versão no lado direito da seção Versão.

  6. Na caixa de diálogo de confirmação, selecione Excluir para confirmar que deseja excluir essa versão da sua permissão gerenciada pelo cliente.

    Escolha Cancelar se não quiser excluir essa versão da sua permissão gerenciada pelo cliente.

AWS CLI
Para excluir uma versão de uma permissão gerenciada pelo cliente
  1. Ligue para a list-permission-versionsoperação para recuperar os números de versão disponíveis.

  2. Depois de ter o número da versão, forneça-o como um parâmetro para delete-permission-version.

    $ aws ram-cmp delete-permission-version \ --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP \ --version 1

    Este comando não retorna nenhuma saída se for bem-sucedido. Você pode executar list-permission-versionsnovamente e verificar se a versão não está mais incluída na saída.

Excluir uma permissão gerenciada pelo cliente

Se uma permissão gerenciada pelo cliente não for mais necessária e não estiver em uso, você poderá excluí-la. Você não pode excluir um cliente que esteja associado a uma instância gerenciada pelo cliente. A permissão excluída gerenciada pelo cliente desaparece após duas horas. Até lá, ele permanece visível na Biblioteca de permissões gerenciadas com um status excluído.

Console

Para excluir uma permissão gerenciada pelo cliente

  1. Navegue até a Biblioteca de permissões gerenciadas.

  2. Filtre a lista de permissões gerenciadas pelo cliente ou pesquise o nome da permissão gerenciada pelo cliente que você deseja excluir.

  3. Confirme se há 0 compartilhamentos associados na lista de permissões gerenciadas antes de selecionar a permissão gerenciada pelo cliente.

    Se ainda houver compartilhamentos de recursos associados à permissão gerenciada, você deverá atribuir outra permissão gerenciada a todos os compartilhamentos de recursos antes de continuar.

  4. No canto superior direito da página de detalhes da permissão gerenciada pelo cliente, escolha Excluir permissão gerenciada.

  5. Quando a caixa de diálogo de confirmação for exibida, escolha Excluir para excluir a permissão gerenciada.

AWS CLI
Para excluir uma permissão gerenciada pelo cliente
  1. Encontre o ARN da permissão gerenciada que você deseja excluir chamando list-permissions com o --permission-type CUSTOMER_MANAGED parâmetro para incluir somente as permissões gerenciadas pelo cliente.

    $ aws ram-cmp list-permissions --permission-type CUSTOMER_MANAGED { "permissions": [ { "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP", "version": "2", "defaultVersion": true, "isResourceTypeDefault": false, "name": "TestCMP", "permissionType": "CUSTOMER_MANAGED", "resourceType": "imagebuilder:Component", "status": "ATTACHABLE", "creationTime": 1680035597.346, "lastUpdatedTime": 1680035597.346 } ] }
  2. Depois de ter o ARN da permissão gerenciada para excluir, forneça-o como um parâmetro para a permissão de exclusão.

    $ aws ram delete-permission \ --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP { "returnValue": true, "permissionStatus": "DELETING" }