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 menor privilégio 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 o uso compartilhado de recursos AWS RAM. Por exemplo, você quer limitar o acesso de leitura aos seus pools do Amazon VPC IP Address Manager (IPAM), 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. Você pode seguir a prática recomendada de privilégio mínimo, concedendo 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 política 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 política gerenciada pelo cliente
  1. Faça um dos seguintes 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 o 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 conforme necessário.

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

AWS CLI
Para criar uma política 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 imagebuilder:Component tipo de recurso.

    $ 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 usam 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 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ão gerenciadas, escolha Criar versão.

  4. Para o 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 de 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 --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, você pode chamar a operação create-permission-version 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 versão 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 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 pelo cliente, na seção Versões de permissão 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 usam 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 versão padrão chamando list-permission-versions.

    O comando de exemplo a seguir está associado a uma instância de banco de dados gerenciada pelo cliente.

    $ 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 operação set-default-permission-version.

    $ 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-versions novamente e verificar se o defaultVersion campo da versão escolhida agora está definido como true.

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 instância 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 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 esta versão da sua permissão gerenciada pelo cliente.

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

AWS CLI
Para excluir uma versão de uma permissão gerenciada pelo cliente
  1. Chame a operação list-permission-versions 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-versions novamente 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" }