O AWS CloudShell é um shell pré-autenticado baseado em navegador que você pode iniciar diretamente do AWS Management Console. É possível executar comandos da AWS CLI para serviços da AWS (incluindo o AWS Identity and Access Management) usando o shell de sua preferência (Bash, PowerShell ou Z shell). E você pode fazer isso sem precisar baixar ou instalar ferramentas de linha de comando.
Você inicia a AWS CloudShell via AWS Management Console, e as credenciais da AWS que usou para fazer login no console estarão automaticamente disponíveis em uma nova sessão do shell. Essa pré-autenticação de usuários da AWS CloudShell permite que você pule a configuração de credenciais ao interagir com serviços da AWS como o IAM usando a AWS CLI versão 2 (pré-instalada no ambiente computacional do shell).
Obter permissões do IAM para o AWS CloudShell
Usando os recursos de gerenciamento de acesso fornecidos pelo AWS Identity and Access Management, os administradores podem conceder permissões aos usuários do IAM para que eles possam acessar a AWS CloudShell e usar os recursos do ambiente.
A maneira mais rápida de um administrador conceder acesso aos usuários é por meio de uma política gerenciada pela AWS. Uma política gerenciada pela AWS é uma política independente que é criada e administrada pela AWS. A política gerenciada pela AWS a seguir para o CloudShell pode ser anexada às identidades do IAM:
-
AWSCloudShellFullAccess
: concede permissão para uso da AWS CloudShell com acesso total a todos os recursos.
Se você quiser limitar o escopo das ações que um usuário do IAM pode realizar com a AWS CloudShell, crie uma política personalizada que use a política gerenciada AWSCloudShellFullAccess
como modelo. Para obter mais informações sobre como limitar as ações que estão disponíveis para os usuários no CloudShell, consulte Gerenciamento de acesso e uso da AWS CloudShell com políticas do IAM no Guia do usuário da AWS CloudShell.
Interagir com o IAM
Depois de iniciar a AWS CloudShell a partir do AWS Management Console, será possível começar imediatamente a interagir com o IAM usando a interface de linha de comando.
nota
Ao usar a AWS CLI na AWS CloudShell, não é necessário baixar nem instalar nenhum recurso adicional. Além disso, como você já está autenticado no shell, não precisará configurar as credenciais antes de fazer chamadas.
Criar um grupo do IAM e adicionar um usuário do IAM ao grupo usando um AWS CloudShell SDK
O exemplo a seguir usa o CloudShell para criar um grupo do IAM, adicionar um usuário do IAM ao grupo e verificar se o comando teve êxito.
-
A partir do AWS Management Console, é possível iniciar o CloudShell escolhendo opções a seguir disponíveis na barra de navegação:
-
Escolha o ícone do CloudShell.
-
Comece digitando “cloudshell” na caixa Pesquisar e escolha a opção CloudShell.
-
-
Para criar um grupo do IAM, insira o comando a seguir na linha de comando do CloudShell. Neste exemplo, chamamos o grupo de east_coast:
aws iam create-group --group-name east_coast
Se a chamada tiver êxito, a linha de comando exibirá uma resposta do serviço semelhante à seguinte saída:
{ "Group": { "Path": "/", "GroupName": "east_coast", "GroupId": "AGPAYBDBW4JBY3EXAMPLE", "Arn": "arn:aws:iam::111122223333:group/east_coast", "CreateDate": "2023-09-11T21:02:21+00:00" } }
-
Para adicionar um usuário ao grupo que você criou, use o comando a seguir, especificando o nome do grupo e o nome de usuário. Neste exemplo, chamamos o grupo de east_coast, e o usuário, johndoe:
aws iam add-user-to-group --group-name east_coast --user-name johndoe
-
Para verificar se o usuário está no grupo, use o comando a seguir, especificando o nome do grupo. Neste exemplo, continuamos a usar o grupo east_coast:
aws iam get-group --group-name east_coast
Se a chamada tiver êxito, a linha de comando exibirá uma resposta do serviço semelhante à seguinte saída:
{ "Users": [ { "Path": "/", "UserName": "johndoe", "UserId": "AIDAYBDBW4JBXGEXAMPLE", "Arn": "arn:aws:iam::552108220995:user/johndoe", "CreateDate": "2023-09-11T20:43:14+00:00", "PasswordLastUsed": "2023-09-11T20:59:14+00:00" } ], "Group": { "Path": "/", "GroupName": "east_coast", "GroupId": "AGPAYBDBW4JBY3EXAMPLE", "Arn": "arn:aws:iam::111122223333:group/east_coast", "CreateDate": "2023-09-11T21:02:21+00:00" } }