SEC02-BP06 Utilizar grupos de usuários e atributos - Framework Well-Architected da AWS

SEC02-BP06 Utilizar grupos de usuários e atributos

A definição de permissões de acordo com grupos de usuários e atributos ajuda a reduzir o número e a complexidade das políticas, simplificando o cumprimento do princípio do privilégio mínimo. Você pode usar grupos de usuários para gerenciar permissões para várias pessoas em um só lugar com base na função que elas desempenham em sua organização. Os atributos, como departamento, projeto ou localização, podem ampliar o escopo de permissão quando as pessoas realizam uma função que, embora semelhante, envolve diferentes subconjuntos de recursos.

Resultado desejado: é possível aplicar alterações nas permissões com base na função a todos os usuários que executam essa função. A associação a grupos e os atributos governam as permissões de usuário, reduzindo a necessidade de gerenciar permissões para cada usuário. Os grupos e atributos que você define em seu provedor de identidades (IdP) são propagados automaticamente para seus ambientes da AWS.

Práticas comuns que devem ser evitadas:

  • Gerenciar permissões para usuários individuais e duplicá-las entre vários usuários.

  • Definir grupos em um nível muito alto, concedendo permissões excessivamente amplas.

  • Definir grupos em um nível muito detalhado, criando duplicação e confusão em termos de associação.

  • Usar grupos com permissões duplicadas em subconjuntos de recursos quando, em vez disso, é possível usar atributos.

  • Não gerenciar grupos, atributos e associações por meio de um provedor de identidades padronizado integrado aos seus ambientes da AWS.

  • Usar o encadeamento de perfis ao utilizar sessões do Centro de Identidade do AWS IAM

Nível de risco exposto se esta prática recomendada não for estabelecida: Médio

Orientação para implementação

As permissões da AWS são definidas em documentos chamados de políticas, os quais são associados a uma entidade principal, como usuário, grupo, perfil ou recurso. Você pode escalar o gerenciamento de permissões organizando as atribuições de permissões (grupo, permissões, conta) com base na função do trabalho, na workload e no ambiente SDLC. Para sua força de trabalho, isso permite definir grupos com base na função desempenhada pelos usuários dentro da organização, e não nos recursos que estão sendo acessados. Por exemplo, um grupo WebAppDeveloper pode ter uma política anexada para configurar serviços como o Amazon CloudFront em uma conta de desenvolvimento. Um grupo AutomationDeveloper pode apresentar sobreposição de algumas permissões com o grupo WebAppDeveloper. Essas permissões comuns podem ser capturadas em uma política separada e associadas aos dois grupos, em vez de fazer com que os usuários de ambas as funções pertençam a um grupo CloudFrontAccess.

Além dos grupos, você pode usar atributos para controlar melhor o escopo do acesso. Por exemplo, você pode ter um atributo Projeto para os usuários do seu grupo WebAppDeveloper para definir o escopo do acesso a recursos específicos do projeto. O uso dessa técnica elimina a necessidade de ter grupos diferentes para desenvolvedores de aplicações que estão trabalhando em diferentes projetos se, em outras circunstâncias, as permissões deles forem as mesmas. A forma como você se refere aos atributos nas políticas de permissão baseia-se na respectiva origem, sejam eles definidos como parte do seu protocolo de federação (por ex., SAML, OIDC ou SCIM) ou como declarações SAML personalizadas, ou definidos dentro do Centro de Identidade do IAM.

Etapas de implementação

  1. Estabeleça onde você definirá grupos e atributos:

    1. Seguindo as orientações em SEC02-BP04 Confiar em um provedor de identidades centralizado, é possível determinar se há necessidade de definir grupos e atributos no seu provedor de identidades, no Centro de Identidade do IAM ou com grupos de usuários do IAM em uma conta específica.

  2. Defina grupos:

    1. Determine seus grupos com base na função e no escopo de acesso necessário. Considere usar uma estrutura hierárquica ou convenções de nomenclatura para organizar grupos de forma eficaz.

    2. Se estiver definindo no Centro de Identidade do IAM, crie grupos e associe o nível de acesso desejado usando conjuntos de permissões.

    3. Se estiver definindo em um provedor de identidades externo, determine se o provedor atende ao protocolo SCIM e considere habilitar o provisionamento automático no Centro de Identidade do IAM. Esse recurso sincroniza a criação, associação e exclusão de grupos entre seu provedor e o Centro de Identidade do IAM.

  3. Defina atributos:

    1. Se usar um provedor de identidades externo, os protocolos SCIM e SAML 2.0 fornecem determinados atributos por padrão. Atributos adicionais podem ser definidos e transmitidos por meio de declarações SAML usando o nome do atributo https://aws.amazon.com/SAML/Attributes/PrincipalTag. Consulte a documentação do provedor de identidades para obter orientação sobre a definição e configuração de atributos personalizados.

    2. Se você definir perfis no Centro de Identidade do IAM, habilite o recurso de controle de acesso por atributo (ABAC) e defina os atributos conforme desejado. Considere os atributos que se alinham à estrutura da sua organização ou à estratégia de marcação de recursos.

Se você precisar do encadeamento de perfis do IAM assumidos por meio do Centro de Identidade do IAM, valores como source-identity e principal-tags não serão propagados. Para mais detalhes, consulte Habilite e configure atributos para controle de acesso.

  1. Defina o escopo das permissões com base em grupos e atributos:

    1. Considere incluir condições em suas políticas de permissão que comparem os atributos da entidade principal aos atributos dos recursos que estão sendo acessados. Por exemplo, é possível definir uma condição para permitir o acesso a um recurso somente se o valor de uma chave de condição PrincipalTag corresponder ao valor de uma chave ResourceTag com o mesmo nome.

    2. Ao definir as políticas de ABAC, siga as orientações nas práticas recomendadas e exemplos de autorização por ABAC.

    3. Revise e atualize regularmente sua estrutura de grupos e atributos à medida que as necessidades de sua organização evoluem para garantir o gerenciamento ideal de permissões.

Recursos

Práticas recomendadas relacionadas:

Documentos relacionados:

Vídeos relacionados: