

# Usar o AWS CloudShell para operação com o AWS Identity and Access Management
<a name="using-aws-with-cloudshell"></a>

AWS CloudShell O é um shell pré-autenticado baseado em navegador que você pode iniciar diretamente do Console de gerenciamento da AWS. É 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 Console de gerenciamento da AWS](https://docs.aws.amazon.com/cloudshell/latest/userguide/working-with-cloudshell.html#launch-options), 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
<a name="cloudshell-permissions"></a>

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](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) é 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](https://docs.aws.amazon.com/cloudshell/latest/userguide/sec-auth-with-identities.html) no Guia do usuário da AWS CloudShell*.

## Interagir com o IAM
<a name="cshell-examples"></a>

Depois de iniciar a AWS CloudShell a partir do Console de gerenciamento da AWS, 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.

1. A partir do Console de gerenciamento da AWS, é 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.

1. 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"
               }
           }
   ```

1. 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 de *john*: 

   ```
   aws iam add-user-to-group --group-name east_coast --user-name john
   ```

1. 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": "john",
                  "UserId": "AIDAYBDBW4JBXGEXAMPLE",
                  "Arn": "arn:aws:iam::552108220995:user/john",
                  "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"
               }
           }
   ```