

# SEC02-BP02 Usar credenciais temporárias
<a name="sec_identities_unique"></a>

 exija que as identidades adquiram [credenciais temporárias dinamicamente](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html). Para identidades de força de trabalho, use o Centro de Identidade do AWS IAM ou a federação com perfis do AWS Identity and Access Management (IAM) para acessar as Contas da AWS. Para identidades de máquina, como instâncias do Amazon Elastic Compute Cloud(Amazon EC2) ou funções do AWS Lambda, exija o uso de perfis do IAM em vez de usuários do IAM com chaves de acesso de longo prazo. 

Para identidades humanas que usam o Console de gerenciamento da AWS, exija que os usuários adquiram credenciais temporárias e façam a federação na AWS. Você pode fazer isso usando o portal do usuário do Centro de Identidade do AWS IAM. Para usuários que precisam de acesso à CLI, certifique-se de que eles usem a [AWS CLI v2](http://aws.amazon.com/blogs/developer/aws-cli-v2-is-now-generally-available/), que oferece suporte para integração direta com o IAM Identity Center. Os usuários podem criar perfis de CLI vinculados a contas e perfis do Centro de Identidade do IAM. A CLI recupera automaticamente as credenciais da AWS do IAM Identity Center e as atualiza em seu nome. Isso elimina a necessidade de copiar e colar credenciais temporárias da AWS no console do IAM Identity Center. Para SDK, os usuários devem contar com o AWS Security Token Service (AWS STS) para assumir perfis e receber credenciais temporárias. Em alguns casos, credenciais temporárias podem não ser práticas. Você deve estar ciente dos riscos de armazenar chaves de acesso. Alterne-as com frequência e exija a autenticação multifator (MFA) como uma condição, quando possível. Use as últimas informações acessadas para determinar quando alternar ou remover as chaves de acesso.

Para casos em que você precisa conceder aos consumidores acesso aos seus recursos da AWS, use os grupos de identidade do [Amazon Cognito](https://docs.aws.amazon.com/cognito/latest/developerguide/role-based-access-control.html) e atribua a eles um conjunto de credenciais de privilégios temporários e limitados para acessar seus recursos da AWS. As permissões para cada usuário são controladas por meio de [perfis do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) que você cria. Você pode definir regras para escolher a função de cada usuário com base em solicitações no token de ID do usuário. Você pode definir uma função padrão para usuários autenticados. Você também pode definir uma função do IAM separada com permissões limitadas para usuários convidados que não são autenticados.

Para identidades de máquina, você deve confiar em perfis do IAM para conceder acesso à AWS. Para instâncias do Amazon Elastic Compute Cloud(Amazon EC2), você pode usar [perfis do Amazon EC2](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html). Você pode anexar um perfil do IAM à sua instância do Amazon EC2 para permitir que suas aplicações em execução no Amazon EC2 usem credenciais de segurança temporárias que a AWS cria, distribui e alterna automaticamente por meio do Instance Metadata Service (IMDS – Serviço de metadados da instância). A [versão mais recente](https://aws.amazon.com/blogs/security/defense-in-depth-open-firewalls-reverse-proxies-ssrf-vulnerabilities-ec2-instance-metadata-service/) do IMDS ajuda a proteger contra vulnerabilidades que expõem as credenciais temporárias e devem ser implementadas. Para acessar instâncias do Amazon EC2 usando chaves ou senhas, o [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) é uma maneira mais segura de acessar e gerenciar suas instâncias usando um agente pré-instalado sem o segredo armazenado. Além disso, outros serviços da AWS, como o AWS Lambda, permitem que você configure um perfil de serviço do IAM para conceder permissões de serviço a fim de executar ações da AWS usando credenciais temporárias. Em situações em que não é possível usar credenciais temporárias, use ferramentas programáticas, como o [AWS Secrets Manager](https://aws.amazon.com/secrets-manager/), para automatizar a rotação e o gerenciamento de credenciais.

**Fazer a auditoria e a rotação periódica das credenciais: **A validação periódica, preferencialmente por meio de uma ferramenta automatizada, é necessária para verificar se os controles corretos são aplicados. Para identidades humanas, você deve exigir que os usuários alterem suas senhas periodicamente e retirem chaves de acesso em favor de credenciais temporárias. Conforme você migra usuários do IAM para identidades centralizadas, é possível [gerar um relatório de credenciais ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html)para auditar os usuários do IAM. Também recomendamos implementar as configurações de MFA no provedor de identidades. Você pode configurar o [Regras do AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) para monitorar essas configurações. Para identidades de máquina, você deve confiar em credenciais temporárias usando perfis do IAM. Para situações em que isso não é possível, é necessária a auditoria frequente e a mudança de chaves de acesso.

**Armazenar e usar segredos com segurança:** para credenciais não relacionadas ao IAM e que não podem usar credenciais temporárias, como logins de banco de dados, use um serviço projetado para lidar com o gerenciamento de segredos, como o [Secrets Manager](https://aws.amazon.com/secrets-manager/). O Secrets Manager facilita o gerenciamento, a rotação e o armazenamento seguro de segredos criptografados usando [serviços com suporte](https://docs.aws.amazon.com/secretsmanager/latest/userguide/integrating.html). As chamadas para acessar os segredos são registradas no AWS CloudTrail para fins de auditoria, e as permissões do IAM podem conceder privilégio mínimo a elas.

 **Nível de exposição a riscos quando esta prática recomendada não for estabelecida:** Alto 

## Orientações para a implementação
<a name="implementation-guidance"></a>
+  Implementar políticas de privilégio mínimo: atribua políticas de acesso com privilégio mínimo a grupos e perfis do IAM para refletir a função do usuário ou a função que você definiu. 
  +  [Grant least privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) 
+  Remover permissões desnecessárias: implemente o privilégio mínimo removendo permissões desnecessárias. 
  +  [Redução do escopo da política ao exibir a atividade do usuário](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html) 
  +  [Visualizar acesso à função](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_delete.html#roles-delete_prerequisites) 
+  Considerar os limites de permissões: um limite de permissões é um recurso avançado para usar uma política gerenciada que define o número máximo de permissões que uma política baseada em identidade pode conceder a uma entidade do IAM. O limite de permissões de uma entidade permite que ela execute apenas as ações aceitas por suas políticas baseadas em identidade e seus limites de permissões. 
  +  [Laboratório: limites de permissões do IAM que delegam a criação de perfis](https://wellarchitectedlabs.com/Security/300_IAM_Permission_Boundaries_Delegating_Role_Creation/README.html) 
+  Considerar tags de recursos para permissões: você pode usar tags para controlar o acesso aos recursos da AWS que oferecem suporte à marcação. Você também pode marcar usuários e perfis do IAM para controlar o que eles podem acessar. 
  +  [Laboratório: Controle de acesso baseado em tags do IAM para o EC2](https://wellarchitectedlabs.com/Security/300_IAM_Tag_Based_Access_Control_for_EC2/README.html) 
  +  [AttributeControle de acesso baseado em atributos (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Conceitos básicos do AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html) 
+  [Práticas recomendadas do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 
+  [Provedores de identidade e federação](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 
+  [Soluções para parceiros de segurança: acesso e controle de acesso](https://aws.amazon.com/security/partner-solutions/#access-control) 
+  [Credenciais de segurança temporárias](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) 
+  [O usuário raiz da conta da AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) 

 **Vídeos relacionados:** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale (Práticas recomendadas para gerenciar, recuperar e alternar segredos em grande escala)](https://youtu.be/qoxxRlwJKZ4) 
+  [Managing user permissions at scale with Centro de Identidade do AWS IAM (Gerenciar permissões de usuário em grande escala com o AWS SSO)](https://youtu.be/aEIqeFCcK7E) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) 