Visualize relatórios de credenciais do IAM para todas as contas da AWS 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 credenciais do IAM para todas as contas da AWS 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 credenciais do IAM

Ambiente: produção

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

Workload: todas as outras workloads

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

Resumo

Aviso: os usuários do IAM 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.

É possível usar os relatórios de credenciais do AWS Identity and Access Management (IAM) para ajudar você a atender aos requisitos de segurança, auditoria e conformidade da organização. Os relatórios de credenciais fornecem uma lista de todos os usuários em suas contas da AWS e mostram o status de suas credenciais, como senhas, chaves de acesso e dispositivos com autenticação multifator (MFA). Você pode usar relatórios de credenciais para várias contas da AWS gerenciadas pelo AWS Organizations.

Esse padrão inclui etapas e códigos para ajudar você a criar e compartilhar relatórios de credenciais do IAM para todas as contas da AWS em sua organização usando 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:

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

  • Acompanhar a migração em tempo real de usuários do IAM para autenticação única (SSO)

  • Rastrear regiões da AWS acessadas por usuários do IAM

  • 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

  • AWS Identity and Access Management (IAM)

  • AWS Lambda

  • AWS Organizations

Arquitetura de destino

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

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

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

  3. Um crawler do 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

Serviços da AWS

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

  • 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 do Lambda, endpoints de invocação HTTP usando destinos de API ou barramentos de eventos em outras contas da 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.

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

  • O AWS Lambda é um serviço de computação que ajuda você a executar código sem exigir provisionamento ou gerenciamento de 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 credenciais do IAM em todas as contas da AWS 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 conta da AWS. 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 de painel, obtenha o Amazon Resource Name (ARN) dos QuickSight usuários.

Administrador da AWS, 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 da AWS. CloudFormation

Administrador da AWS, 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

Administrador da AWS

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 seu perfil do IAM. Esse deve ser o perfil do IAM que você deseja que o 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.

Administrador da AWS

Criar uma política de permissão do IAM.

Crie uma política do IAM para cada conta da AWS 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 um perfil do IAM com uma política de confiança.

  1. Crie um perfil do IAM para as contas da AWS e anexe a política de permissão que você criou na etapa anterior.

  2. Anexe ao perfil do IAM a política de confiança a seguir:

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

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

Observação: as organizações normalmente usam automação para criar perfis do IAM para suas contas da AWS. 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 exige uma função administrativa existente ou qualquer outro perfil do IAM que tenha permissão para criar uma política e um perfil do IAM em cada conta da AWS.

Administrador de nuvem, arquiteto de nuvem, Administrador da AWS

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 seus cronogramas. Como alternativa, você pode executar o Lambda manualmente para obter os relatórios no Amazon S3 e, em seguida, executar o crawler AWS Glue para obter a tabela do 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:

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

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

  • Rastrear as regiões da AWS acessadas pelos usuários do IAM: você pode controlar o acesso de usuário do IAM à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 usuário do IAM.

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

  • Compartilhar informações com outras partes interessadas: você pode compartilhar painéis selecionados com outras partes interessadas, sem conceder a elas acesso a relatórios de credenciais do IAM ou contas da AWS.