Visualize relatórios de IAM credenciais para todas as AWS contas usando a Amazon QuickSight - Recomendações da AWS

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Visualize relatórios de IAM credenciais para todas as AWS contas usando a Amazon QuickSight

Criado por Parag Nagwekar (AWS) e Arun Chandapillai () AWS

Repositório de código: obtenha ampla visibilidade organizacional de seus relatórios de IAM credenciais

Ambiente: produção

Tecnologias: análise; aviso; gerenciamento e governança; segurança, identidade, conformidade

Workload: todas as outras workloads

AWSserviços: Amazon Athena; AWS CloudFormation Amazon EventBridge; AWS Identity and Access Management; Amazon QuickSight

Resumo

Aviso: IAM os usuários têm credenciais de longo prazo, o que representa um risco de segurança. Para ajudar a reduzir esse risco, recomendamos que você forneça a esses usuários somente as permissões necessárias para realizar a tarefa e que você os remova quando não forem mais necessários.

Você pode usar os relatórios de credenciais do AWS Identity and Access Management (IAM) para ajudá-lo a atender aos requisitos de segurança, auditoria e conformidade da sua organização. Os relatórios de credenciais fornecem uma lista de todos os usuários em suas AWS contas e mostram o status de suas credenciais, como senhas, chaves de acesso e dispositivos de autenticação multifator ()MFA. Você pode usar relatórios de credenciais para várias AWS contas gerenciadas por AWSOrganizations.

Esse padrão inclui etapas e códigos para ajudar você a criar e compartilhar relatórios de IAM credenciais para todas as AWS contas da sua organização usando os QuickSight painéis da Amazon. Você pode compartilhar os painéis com as partes interessadas em sua organização. Os relatórios podem ajudar sua organização a alcançar os seguintes resultados comerciais específicos:

  • Identifique incidentes de segurança relacionados aos usuários IAM

  • Acompanhe a migração em tempo real dos IAM usuários para a autenticação de login único () SSO

  • Rastreie AWS regiões acessadas pelos IAM usuários

  • Manter-se em conformidade

  • Compartilhar informações com outras partes interessadas

Pré-requisitos e limitações

Pré-requisitos

Arquitetura

Pilha de tecnologia

  • Amazon Athena

  • Amazon EventBridge

  • Amazon QuickSight

  • Amazon Simple Storage Service (Amazon S3)

  • AWS Glue

  • AWSIdentity and Access Management (IAM)

  • AWSLambda

  • AWSOrganizations

Arquitetura de destino

O diagrama a seguir mostra uma arquitetura para configurar um fluxo de trabalho que captura dados de relatórios de IAM credenciais de várias AWS contas.

A captura de tela a seguir ilustra o diagrama da arquitetura
  1. EventBridge invoca uma função Lambda diariamente.

  2. A função Lambda assume uma IAM função em todas as AWS contas da organização. Em seguida, a função cria o relatório de IAM credenciais e armazena os dados do relatório em um bucket S3 centralizado. É necessário habilitar a criptografia e desabilitar o acesso público no bucket do S3.

  3. Um rastreador AWS Glue rastreia o bucket do S3 diariamente e atualiza a tabela do Athena adequadamente.

  4. QuickSight importa e analisa os dados do relatório de credenciais e cria um painel que pode ser visualizado e compartilhado com as partes interessadas.

Ferramentas

AWSserviços

  • O Amazon Athena é um serviço de consulta interativo que facilita a análise de dados no Amazon S3 usando o padrão. SQL

  • EventBridgeA Amazon é um serviço de ônibus de eventos sem servidor que ajuda você a conectar seus aplicativos com dados em tempo real de várias fontes. Por exemplo, funções Lambda, endpoints de HTTP invocação usando API destinos ou barramentos de eventos em outras contas. AWS

  • QuickSightA Amazon é um serviço de inteligência de negócios (BI) em escala de nuvem que ajuda você a visualizar, analisar e relatar seus dados em um único painel.

  • AWSO Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus AWS recursos controlando quem está autenticado e autorizado a usá-los.

  • AWSO Lambda é um serviço de computação que ajuda você a executar código sem precisar provisionar ou gerenciar servidores. Ele executa o código somente quando necessário e dimensiona automaticamente, assim, você paga apenas pelo tempo de computação usado.

Código

O código desse padrão está disponível no GitHub getiamcredsreport-allaccounts-orgrepositório. Você pode usar o código desse repositório para criar relatórios de IAM credenciais entre AWS contas em Organizations e armazená-los em um local central.

Épicos

TarefaDescriçãoHabilidades necessárias

Configure a edição Amazon QuickSight Enterprise.

  1. Ative a edição Amazon QuickSight Enterprise em sua AWS conta. Para obter mais informações, consulte Gerenciando o acesso do usuário dentro da Amazon QuickSight na QuickSight documentação.

  2. Para conceder permissões no painel, obtenha o Amazon Resource Name (ARN) dos QuickSight usuários.

AWSadministrador AWS DevOps, administrador de nuvem, arquiteto de nuvem

Integre a Amazon QuickSight com o Amazon S3 e o Athena.

Você deve QuickSight autorizar o uso do Amazon S3 e do Athena antes de implantar a pilha. AWS CloudFormation

AWSadministrador AWS DevOps, administrador de nuvem, arquiteto de nuvem
TarefaDescriçãoHabilidades necessárias

Clone o GitHub repositório.

  1. Clone o GitHub getiamcredsreport-allaccounts-orgrepositório em sua máquina local executando o seguinte comando: git clone https://github.com/aws-samples/getiamcredsreport-allaccounts-org

AWSadministrador

Implantar a infraestrutura.

  1. Faça login no AWS Management Console e abra o CloudFormation console.

  2. No painel de navegação, escolha Criar pilha e, em seguida, escolha Com novos recursos (padrão).

  3. Na página Identificar recursos, escolha Próximo.

  4. Na página Especificar modelo, em Origem do modelo, selecione Carregar um arquivo de modelo.

  5. Escolha Escolher arquivo, selecione o Cloudformation-createcredrepo.yaml arquivo do seu GitHub repositório clonado e escolha Avançar.

  6. Em Parâmetros, atualize IAMRoleName com sua IAM função. Essa deve ser a IAM função que você deseja que a Lambda assuma em todas as contas da organização. Essa função cria o relatório de credenciais. Observação: a função não precisa estar presente em todas as contas nesta etapa da criação da pilha.

  7. Em Parâmetros, atualize S3BucketName com o nome do bucket do S3 em que o Lambda pode armazenar as credenciais de todas as contas.

  8. Em Nome da pilha, insira o nome da pilha.

  9. Selecione Enviar.

  10. Observe o nome da função do Lambda.

AWSadministrador

Crie uma política de IAM permissão.

Crie uma IAM política para cada AWS conta em sua organização com as seguintes permissões:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GenerateCredentialReport", "iam:GetCredentialReport" ], "Resource": "*" } ] }
AWS DevOps, administrador de nuvem, arquiteto de nuvem, engenheiro de dados

Crie uma IAM função com uma política de confiança.

  1. Crie uma IAM função para as AWS contas e anexe a política de permissão que você criou na etapa anterior.

  2. Anexe a seguinte política de confiança à IAM função:

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "AWS":[ "arn:aws:iam::<MasterAccountID>:role/<LambdaRole>" ] }, "Action":"sts:AssumeRole" } ] }

Importante: arn:aws:iam::<MasterAccountID>:role/<LambdaRole> substitua pela função ARN do Lambda que você anotou anteriormente.

Observação: as organizações geralmente usam automação para criar IAM funções para suas AWS contas. Recomendamos o uso dessa automação, se disponível. Como alternativa, você pode usar o script CreateRoleforOrg.py de do repositório de código. O script requer uma função administrativa existente ou qualquer outra IAM função que tenha permissão para criar uma IAM política e uma função em cada AWS conta.

Administrador de nuvem, arquiteto de nuvem, AWS administrador

Configure QuickSight a Amazon para visualizar os dados.

  1. Faça login QuickSight com suas credenciais.

  2. Crie um conjunto de dados usando o Athena (usando o banco de dados iamcredreportdb e a tabela “cfn_iamcredreport”) e, em seguida, automaticamente atualize o conjunto de dados .

  3. Crie uma análise em QuickSight.

  4. Crie um QuickSight painel.

AWS DevOps, administrador de nuvem, arquiteto de nuvem, engenheiro de dados

Mais informações

Considerações adicionais

Considere o seguinte:

  • Depois de CloudFormation implantar a infraestrutura, você pode esperar para que os relatórios sejam criados no Amazon S3 e analisados pelo Athena até que o Lambda e o AWS Glue sejam executados de acordo com suas programações. Como alternativa, você pode executar o Lambda manualmente para obter os relatórios no Amazon S3 e, em seguida, executar o rastreador AWS Glue para obter a tabela Athena criada a partir dos dados.

  • QuickSight é uma ferramenta poderosa para analisar e visualizar dados com base nos requisitos da sua empresa. Você pode usar parâmetros QuickSight para controlar os dados do widget com base nos campos de dados que você escolher. Além disso, você pode usar uma QuickSight análise para criar parâmetros (por exemplo, campos Conta, Data e Usuáriopartition_0, como, epartition_1, user respectivamente) do seu conjunto de dados para adicionar controles aos parâmetros de Conta, Data e Usuário.

  • Para criar seus próprios QuickSight painéis, consulte QuickSight Workshops no site do AWS Workshop Studio.

  • Para ver exemplos de QuickSight painéis, consulte o repositório GitHub getiamcredsreport-allaccounts-orgde códigos.

Resultados de negócios desejados

Você pode usar este padrão para alcançar os resultados comerciais desejados a seguir:

  • Identifique incidentes de segurança relacionados aos IAM usuários — investigue cada usuário em todas as AWS contas da sua organização usando um único painel de vidro. Você pode acompanhar a tendência das AWS regiões individuais acessadas mais recentemente por um IAM usuário e dos serviços que ele usou.

  • Acompanhe a migração em tempo real dos IAM usuários para a SSO autenticação — Ao usarSSO, os usuários podem fazer login uma vez com uma única credencial e acessar várias AWS contas e aplicativos. Se você planeja migrar seus IAM usuários paraSSO, esse padrão pode ajudá-lo a fazer a transição SSO e monitorar todo o uso de credenciais de IAM usuário (como acesso ao AWS Management Console ou uso de chaves de acesso) em todas AWS as contas.

  • Rastreie AWS regiões acessadas pelos IAM usuários — Você pode controlar o acesso IAM do usuário às regiões para vários fins, como soberania de dados e controle de custos. Você também pode monitorar o uso de regiões por qualquer IAM usuário.

  • Mantenha-se em conformidade — Ao seguir o princípio do privilégio mínimo, você pode conceder somente as IAM permissões específicas necessárias para realizar uma tarefa específica. Além disso, você pode monitorar o acesso aos AWS serviços, ao console AWS de gerenciamento e o uso de credenciais de longo prazo.

  • Compartilhe informações com outras partes interessadas — Você pode compartilhar painéis organizados com outras partes interessadas, sem conceder a elas acesso a relatórios ou contas de IAM credenciais. AWS