Esse conteúdo está desatualizado. Esta versão da Well-Architected Framework agora pode ser encontrada em: https://docs.aws.amazon.com/pt_br/wellarchitected/2022-03-31/framework/security.html

SEC 2: Como você gerencia identidades para pessoas e máquinas?

Há dois tipos de identidades que você precisa gerenciar para operar cargas de trabalho seguras da AWS. Entender o tipo de identidade de que você precisa para gerenciar e conceder acesso ajuda a garantir que as identidades corretas tenham acesso aos recursos certos nas condições certas. Identidades humanas: administradores, desenvolvedores, operadores e usuários finais precisam de uma identidade para acessar seus ambientes e aplicações da AWS. Eles são membros da sua organização ou usuários externos com quem você colabora e que interagem com seus recursos da AWS por meio de um navegador da web, aplicação cliente ou ferramentas interativas de linha de comando. Identidades de máquina: aplicações de serviço, ferramentas operacionais e cargas de trabalho precisam de uma identidade para solicitar serviços da AWS; por exemplo, para ler dados. Essas identidades incluem máquinas em execução no seu ambiente da AWS, como instâncias do Amazon EC2 ou funções do AWS Lambda. Você também pode gerenciar identidades de máquina para partes externas que precisam de acesso. Além disso, você pode ter máquinas fora da AWS que precisam de acesso ao seu ambiente da AWS.

Recursos

Mastering identity at every layer of the cake
Managing user permissions at scale with AWS SSO
Best Practices for Managing, Retrieving, and Rotating Secrets at Scale
IAM Best Practices
The AWS Account Root User
Getting Started with AWS Secrets Manager
Temporary Security Credentials
Identity Providers and Federation
Security Partner Solutions: Access and Access Control

Melhores práticas:

Plano de melhoria

Usar mecanismos de login forte

  • Criar uma política do IAM para aplicar o login de MFA: Crie uma política do IAM gerenciada pelo cliente que proíba todas as ações, exceto as que permitem ao usuário assumir funções, alterar suas próprias credenciais e gerenciar seus dispositivos MFA na página My Security Credentials (Minhas credenciais de segurança).
    https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_users-self-manage-mfa-and-creds.html#tutorial_mfa_step1
  • Habilitar a MFA no provedor de identidade: Habilite a MFA no provedor de identidade ou serviço de logon único, como o AWS Single Sign-On (SSO),que você usa.
    https://aws.amazon.com/iam/details/mfa/
  • Configurar política de senha forte: Configure uma política de senha forte no IAM e nos sistemas de identidade federada para ajudar na proteção contra ataques de força bruta.
    http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_account-policy.html
  • Alternar credenciais regularmente: Certifique-se de que os administradores de sua carga de trabalho alterem senhas e chaves de acesso (se usadas) regularmente.
    Rotate credentials regularly
  • Usar credenciais temporárias

  • Implementar políticas de privilégio mínimo: Atribua políticas de acesso com privilégio mínimo a grupos e funções do IAM para refletir a função do usuário ou a função que você definiu.
    Grant least privilege
  • Remover permissões desnecessárias: Implemente o privilégio mínimo removendo permissões desnecessárias.
    Reducing policy scope by viewing user activity
    View role access
  • Considerar 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.
    Lab: IAM permissions boundaries delegating role creation
  • 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 funções do IAM para controlar o que eles podem acessar.
    Lab: IAM tag based access control for EC2
    Attribute-based access control (ABAC)
  • Armazenar e usar segredos com segurança

  • Usar o AWS Secrets Manager: O AWS Secrets Manager é um produto da AWS que facilita o gerenciamento de segredos. Segredos podem ser credenciais de banco de dados, senhas, chaves de API de terceiros e até texto arbitrário.
    AWS Secrets Manager
  • Contar com um provedor de identidade centralizado

  • Centralizar o acesso administrativo: Crie uma entidade de provedor de identidade do IAM para estabelecer uma relação de confiança entre sua conta da AWS e seu provedor de identidade (IdP). O IAM oferece suporte a IdPs compatíveis com OpenID Connect (OIDC) ou SAML 2.0 (Security Assertion Markup Language 2.0).
    Identity Providers and Federation
  • Centralizar o acesso aos aplicativos: Considere o Amazon Cognito para centralizar o acesso ao aplicativo. O produto permite que você adicione cadastro/login de usuários e controle de acesso aos seus aplicativos móveis e web de forma rápida e fácil. O Amazon Cognito escala para milhões de usuários e oferece suporte ao login com provedores de identidade social, como Facebook, Google e Amazon, e provedores de identidade corporativa via SAML 2.0.
    Amazon Cognito
  • Remover usuários e grupos antigos do IAM: Depois de começar a usar um provedor de identidade (IdP), remova usuários e grupos do IAM que não são mais necessários.
    Finding unused credentials
    Deleting an IAM group
  • Fazer a auditoria e a rotação periódica das credenciais

  • Realizar auditorias de credenciais regularmente: Use relatórios de credenciais e o IAM Access Analyzer para auditar credenciais e permissões do IAM.
    IAM Access Analyzer
    Getting credential report
    Lab: Automated IAM user cleanup
  • Usar níveis de acesso para revisar permissões do IAM: Para melhorar a segurança da sua conta da AWS, revise e monitore regularmente cada uma das políticas do IAM. Certifique-se de que suas políticas concedam o privilégio mínimo para executar apenas as ações necessárias.
    Use access levels to review IAM permissions
  • Considerar automatizar a criação e as atualizações de recursos do IAM: O AWS CloudFormation pode ser usado para automatizar a implantação de recursos do IAM, incluindo funções e políticas, para reduzir erros humanos, pois os modelos podem ser verificados e ter controle de versão.
    Lab: Automated deployment of IAM groups and roles
  • Utilizar grupos e atributos de usuários

  • Se você estiver usando o AWS Single Sign-On (SSO), configure grupos: O AWS SSO permite configurar grupos de usuários e atribuir aos grupos o nível desejado de permissão.
    AWS Single Sign-On - Manage Identities
  • Saiba mais sobre o controle de acesso baseado em atributos (ABAC): O controle de acesso baseado em atributos (ABAC) é uma estratégia de autorização que define permissões com base em atributos.
    What Is ABAC for AWS?
    Lab: IAM Tag Based Access Control for EC2