

# SEC03-BP02 Conceder acesso com privilégio mínimo
<a name="sec_permissions_least_privileges"></a>

Conceda somente o acesso de que as identidades precisam, permitindo acesso a ações específicas em recursos específicos da AWS em condições específicas. Conte com grupos e atributos de identidade para definir permissões dinamicamente em grande escala, em vez de definir permissões para usuários individuais. Por exemplo, você pode permitir o acesso de um grupo de desenvolvedores para gerenciar apenas recursos de seu próprio projeto. Dessa forma, quando um desenvolvedor é removido do grupo, seu acesso é revogado em todos os lugares em que esse grupo foi usado para controle de acesso, sem precisar efetuar qualquer alteração nas políticas de acesso.

 **Antipadrões comuns:** 
+ Usar como padrão a concessão de permissões de administrador aos usuários. 
+ Usar a conta raiz para atividades diárias. 

 **Nível de risco exposto se essa prática recomendada não for estabelecida:** alto 

## Orientação para implementação
<a name="implementation-guidance"></a>

Estabelecer um princípio de [privilégio mínimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) garante que as identidades só tenham permissão para executar o conjunto mínimo de funções necessárias para realizar uma tarefa específica, enquanto equilibram usabilidade e eficiência. Operar com esse princípio limita o acesso não intencional e ajuda a garantir que você possa auditar quem tem acesso a quais recursos. Na AWS, as identidades não têm permissões por padrão, exceto para o usuário raiz. As credenciais do usuário raiz devem ser estritamente controladas e só podem ser usadas para algumas [tarefas específicas](https://docs.aws.amazon.com/general/latest/gr/aws_tasks-that-require-root.html). 

Você usa políticas para conceder explicitamente permissões anexadas ao IAM ou a entidades de recursos, como um perfil do IAM usado por máquinas ou identidades federadas, ou recursos (por exemplo, buckets do S3). Ao criar e associar uma política, você pode especificar as ações de serviço, os recursos e as condições que devem ser verdadeiros para que a AWS permita o acesso. A AWS oferece suporte a uma variedade de condições para ajudar você a reduzir o acesso. Por exemplo, usando a chave de condição `PrincipalOrgID` [,](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)o identificador do AWS Organizations é verificado para que o acesso possa ser concedido dentro do AWS Organization.

Você também pode controlar as solicitações feitas pelos serviços da AWS em seu nome, como o AWS CloudFormation criando uma função do AWS Lambda, usando a chave de condição `CalledVia` . Você deve colocar em camadas diferentes tipos de política para limitar efetivamente as permissões gerais em uma conta. Por exemplo, é possível permitir que suas equipes de aplicação criem suas próprias políticas do IAM, mas usar um [limite de permissões](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/) para definir o máximo de permissões que elas podem conceder. 

Há vários recursos da AWS para ajudar a escalar o gerenciamento de permissões e aderir ao princípio do privilégio mínimo. [O controle de acesso baseado em atributos](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/) permite limitar as permissões com base na *[tag](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html)* de um recurso, visando tomar decisões de autorização de acordo com as tags aplicadas ao recurso e a chamada de uma entidade principal do IAM. Isso permite combinar sua política de permissões e marcação para obter um acesso refinado a recursos sem precisar de muitas políticas personalizadas.

Outra maneira de acelerar a criação de uma política de privilégio mínimo é basear sua política nas permissões do CloudTrail depois da execução de uma atividade. [O IAM Access Analyzer pode gerar automaticamente uma política do IAM baseada na atividade](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/). Também é possível usar o IAM Access Advisor no nível da organização ou da conta individual para [monitorar as últimas informações acessadas de uma política específica](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html).

Estabeleça uma frequência para revisar esses detalhes e remover permissões desnecessárias. Você deve estabelecer uma barreira de proteção de permissões na organização da AWS para controlar o máximo de permissões na conta de qualquer membro. Serviços como o [AWS Control Tower têm controles preventivos, gerenciados e prescritivos](https://docs.aws.amazon.com/controltower/latest/userguide/guardrails.html) e permitem definir seus próprios controles. 

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

 **Documentos relacionados:** 
+  [Permissions boundaries for IAM entities (Limites de permissões para entidades do IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) 
+  [Techniques for writing least privilege IAM policies (Técnicas para escrever políticas do IAM de privilégio mínimo)](https://aws.amazon.com/blogs/security/techniques-for-writing-least-privilege-iam-policies/) 
+  [IAM Access Analyzer makes it easier to implement least privilege permissions by generating IAM policies based on access activity (IAM Access Analyzer facilita a implementação de permissões de privilégio mínimo gerando políticas do IAM baseadas na atividade de acesso)](https://aws.amazon.com/blogs/security/iam-access-analyzer-makes-it-easier-to-implement-least-privilege-permissions-by-generating-iam-policies-based-on-access-activity/) 
+  [Refining Permissions using last accessed information (Refinar permissões usando as últimas informações acessadas)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html) 
+  [IAM policy types and when to use them (Tipos de política do IAM e quando usá-las)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) 
+  [Testing IAM policies with the IAM policy simulator (Testar políticas do IAM com o simulador de política do IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_testing-policies.html) 
+  [Guardrails in AWS Control Tower (Barreiras de proteção no AWS Control Tower)](https://docs.aws.amazon.com/controltower/latest/userguide/guardrails.html) 
+  [Zero Trust architectures: An AWS perspective (Arquiteturas de confiança zero: uma perspectiva da AWS)](https://aws.amazon.com/blogs/security/zero-trust-architectures-an-aws-perspective/) 
+  [How to implement the principle of least privilege with CloudFormation StackSets (Como implementar o princípio de privilégio mínimo com o CloudFormation StackSets)](https://aws.amazon.com/blogs/security/how-to-implement-the-principle-of-least-privilege-with-cloudformation-stacksets/) 

 **Vídeos relacionados:** 
+  [Next-generation permissions management (Gerenciamento de permissões de última geração)](https://www.youtube.com/watch?v=8vsD_aTtuTo) 
+  [Zero Trust: An AWS perspective (Confiança zero: uma perspectiva da AWS)](https://www.youtube.com/watch?v=1p5G1-4s1r0) 
+  [How can I use permissions boundaries to limit IAM users and roles to prevent privilege escalation? (Como posso usar limites de permissões para limitar usuários e perfis do IAM para evitar a escalação de privilégios?)](https://www.youtube.com/watch?v=omwq3r7poek) 

 **Exemplos relacionados:** 
+  [Lab: IAM permissions boundaries delegating role creation (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) 