Requisitos e opções de configuração para recuperar amostras de dados confidenciais com descobertas - Amazon Macie

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á.

Requisitos e opções de configuração para recuperar amostras de dados confidenciais com descobertas

Como opção é possível configurar e usar o Amazon Macie para recuperar e revelar amostras de dados confidenciais que o Macie relata em descobertas individuais. Se você recuperar e revelar amostras de dados confidenciais para uma descoberta, o Macie vai usar os dados no resultado da descoberta de dados confidenciais correspondente para localizar ocorrências de dados confidenciais no objeto afetado do Amazon Simple Storage Service (Amazon S3). Em seguida, o Macie extrai amostras dessas ocorrências do objeto afetado. O Macie criptografa os dados extraídos com uma chave AWS Key Management Service (AWS KMS) que você especifica, armazena temporariamente os dados criptografados em um cache e retorna os dados em seus resultados da descoberta. Logo após a extração e a criptografia, o Macie exclui permanentemente os dados do cache, a menos que uma retenção adicional seja temporariamente necessária para resolver um problema operacional.

O Macie não usa o perfil vinculado a serviço do Macie em sua conta para localizar, recuperar, criptografar ou revelar amostras de dados confidenciais para objetos afetados do S3. Em vez disso, o Macie usa configurações e recursos que você configura para sua conta. Ao definir as configurações no Macie, você especifica como acessar os objetos afetados do S3. Você também especifica qual AWS KMS key deve ser usada para criptografar as amostras. É possível definir as configurações em todas as Regiões da AWS nas quais o Macie está atualmente disponível, exceto nas regiões Asia Pacific (Osaka) e Israel (Tel Aviv).

Você tem duas opções para acessar objetos afetados do S3 e recuperar amostras de dados confidenciais deles. É possível configurar o Macie para usar credenciais de usuário do AWS Identity and Access Management (IAM) ou assumir um perfil do IAM:

  • Usar credenciais de usuário do IAM: com essa opção, cada usuário da sua conta usa sua identidade individual do IAM para localizar, recuperar, criptografar e revelar as amostras. Isso significa que um usuário pode recuperar e revelar amostras de dados confidenciais para uma descoberta se tiver permissão para acessar os recursos e dados necessários, e também para realizar as ações necessárias.

  • Assumir um perfil do IAM: com essa opção, você cria um perfil do IAM que delega acesso ao Macie. Você também garante que as políticas de confiança e permissões do perfil atendam a todos os requisitos para que o Macie assuma o perfil. Posteriormente, o Macie vai assumir o perfil quando um usuário da sua conta optar por localizar, recuperar, criptografar e revelar amostras de dados confidenciais para uma descoberta.

Você pode usar qualquer uma das configurações com qualquer tipo de conta do Macie, ou seja, a conta delegada de administrador do Macie para uma organização, uma conta de membro do Macie em uma organização ou uma conta autônoma do Macie.

Os tópicos a seguir explicam as opções, os requisitos e os fatores que podem ajudar você a determinar como definir as configurações e os recursos para sua conta. Isso inclui as políticas de confiabilidade e permissão para anexar a um perfil do IAM. Para obter recomendações e exemplos adicionais de políticas que você pode usar para recuperar e revelar amostras de dados confidenciais, consulte a postagem Como usar o Amazon Macie para pré-visualizar dados confidenciais em buckets do S3 no blog de segurança da AWS.

Como determinar qual método de acesso usar

Ao determinar qual configuração é melhor para seu ambiente AWS, uma consideração importante é se seu ambiente inclui várias contas do Amazon Macie que são gerenciadas centralmente como uma organização. Se você for o administrador delegado do Macie de uma organização, configurar o Macie para assumir um perfil do IAM pode agilizar a recuperação de amostras de dados confidenciais de objetos do S3 afetados para contas em sua organização. Com essa abordagem, você cria um perfil do IAM em sua conta de administrador. Você também cria um perfil do IAM em cada conta de membro aplicável. O perfil na sua conta de administrador delega acesso ao Macie. O perfil em uma conta de membro delega o acesso entre contas ao perfil em sua conta de administrador. Se implementado, você poderá usar o encadeamento de perfis para acessar objetos do S3 afetados para as contas de membros.

Considere também quem tem acesso direto às descobertas individuais por padrão. A fim de recuperar e revelar amostras de dados confidenciais para uma descoberta, primeiro o usuário deve ter acesso à descoberta:

  • Trabalhos de descoberta de dados confidenciais: somente a conta que cria um trabalho pode acessar as descobertas produzidas pelo trabalho. Se você tiver uma conta de administrador do Macie, poderá configurar um trabalho para analisar objetos em buckets do S3 para qualquer conta em sua organização. Portanto, seus trabalhos podem produzir descobertas para objetos em buckets pertencentes às suas contas de membros. Se você tiver uma conta de membro ou uma conta autônoma do Macie, poderá configurar um trabalho para analisar objetos somente nos buckets pertencentes à sua conta.

  • Descoberta automatizada de dados confidenciais: somente a conta de administrador do Macie pode acessar descobertas que o processo automatizado de descoberta produz para contas na organização. As contas de membros não podem acessar essas descobertas. Se você tiver uma conta autônoma do Macie, só poderá acessar as descobertas que a descoberta automatizada produz para sua própria conta.

Se você planeja acessar objetos afetados do S3 usando uma perfil do IAM, considere também o seguinte:

  • Para localizar ocorrências de dados confidenciais em um objeto, é necessário armazenar o resultado correspondente da descoberta de dados confidenciais para uma descoberta em um objeto do S3 que o Macie tenha assinado com uma AWS KMS key de código de autenticação de mensagens por hash (HMAC). O Macie deve ser capaz de verificar a integridade e a autenticidade do resultado da descoberta de dados confidenciais. Caso contrário, o Macie não assumirá o perfil do IAM para recuperar amostras de dados confidenciais. Essa é uma barreira de proteção adicional que visa restringir o acesso a dados em objetos do S3 para uma conta.

  • Para recuperar amostras de dados confidenciais de um objeto criptografado com uma AWS KMS key gerenciada pelo cliente, o perfil do IAM deve ter permissão para descriptografar dados com a chave. Mais especificamente, a política da chave deve permitir que o perfil execute a ação kms:Decrypt. Para outros tipos de criptografia no lado do servidor, é necessário ter permissões ou recursos adicionais para descriptografar um objeto afetado. Para obter mais informações, consulte Como descriptografar objetos afetados do S3.

  • Para recuperar amostras de dados confidenciais de um objeto para outra conta, você deve ser o administrador delegado do Macie para a conta na Região da AWS aplicável. Além disso:

    • No momento, o Macie deve estar habilitado para a conta de membro na região aplicável.

    • A conta de membro deve ter um perfil do IAM que delegue o acesso entre contas a um perfil do IAM na sua conta de administrador do Macie. O nome do perfil deve ser o mesmo em sua conta de administrador do Macie e na conta de membro.

    • A política de confiança para o perfil do IAM na conta de membro deve incluir uma condição que especifique o ID externo correto para sua configuração. Esse ID é uma string alfanumérica exclusiva que o Macie gera automaticamente depois que você define as configurações da sua conta de administrador do Macie. Para obter mais informações sobre o uso de IDs externos em políticas de confiabilidade, consulte Como usar um ID externo ao conceder acesso aos seus recursos da AWS a terceiros no Guia do usuário do AWS Identity and Access Management.

    • Se o perfil do IAM na conta de membro atender a todos os requisitos do Macie, a conta de membro não precisará definir e ativar as configurações do Macie para que você recupere amostras de dados confidenciais dos objetos da conta. O Macie usará somente as configurações e o perfil do IAM na sua conta de administrador do Macie e o perfil do IAM na conta de membro.

      dica

      Se sua conta integrar uma grande organização, considere usar um modelo do AWS CloudFormation e um conjunto de pilhas para provisionar e gerenciar os perfis do IAM para contas de membro em sua organização. Para obter informações sobre como criar e usar modelos e conjuntos de pilhas, consulte o Guia do usuário do AWS CloudFormation.

      você pode usar o console do Amazon Macie para analisar e, opcionalmente, baixar um modelo do CloudFormation que possa servir como ponto de partida. No painel de navegação no console, em Configurações, selecione Revelar amostras. Escolha Editar e, em seguida, escolha Exibir permissões de perfil de membro e modelo do CloudFormation.

Os tópicos subsequentes desta seção fornecem detalhes e considerações adicionais para cada tipo de configuração. Para perfis do IAM, isso inclui as políticas de confiabilidade e permissão para anexar a um perfil. Se você não tiver certeza sobre qual tipo de configuração é a melhor para seu ambiente, peça ajuda ao seu administrador da AWS.

Como usar credenciais de usuário do IAM para acessar objetos afetados do S3

Se você configurar o Amazon Macie para recuperar amostras de dados confidenciais usando credenciais de usuário do IAM, cada usuário da sua conta do Macie usará a própria identidade do IAM para localizar, recuperar, criptografar e revelar amostras para descobertas individuais. Isso significa que um usuário pode recuperar e revelar amostras de dados confidenciais para uma descoberta se a identidade do IAM dele tiver permissão para acessar os recursos e dados necessários, e também para realizar as ações necessárias. Todas as ações necessárias estão registradas em AWS CloudTrail.

Para recuperar e revelar amostras de dados confidenciais de uma descoberta específica, o usuário precisa ter permissão para acessar os seguintes dados e recursos: a descoberta; o resultado correspondente da descoberta de dados confidenciais, o bucket afetado do S3 e o objeto afetado do S3. O usuário também deverá ter permissão para usar a AWS KMS key empregada para criptografar o objeto afetado, se for o caso, e a AWS KMS key que você configurou para o Macie usar na criptografia de amostras de dados confidenciais. Se alguma política do IAM, política de recursos ou outras configurações de permissões negar o acesso necessário, o usuário não conseguirá recuperar e revelar nenhuma amostra para a descoberta.

Para definir esse tipo de configuração, conclua as seguintes tarefas gerais:

  1. Verifique se você configurou um repositório para os resultados da descoberta de dados confidenciais.

  2. Configure a AWS KMS key para uso na criptografia de amostras de dados confidenciais.

  3. Verifique suas permissões para definir as configurações no Macie.

  4. Configure e ative as configurações no Macie.

Para obter informações sobre como realizar essas tarefas, consulte Configurar o Amazon Macie para recuperar e revelar amostras de dados confidenciais com descobertas.

Assumir um perfil do IAM para acessar objetos afetados do S3

Para configurar o Amazon Macie para recuperar amostras de dados confidenciais assumindo um perfil do IAM, comece criando um perfil do IAM que delegue acesso ao Macie. Garanta que as políticas de confiança e permissões do perfil atendam a todos os requisitos para que o Macie assuma o perfil. Quando um usuário da sua conta do Macie optar por recuperar e revelar amostras de dados confidenciais para uma descoberta, o Macie assumirá a função de recuperar as amostras do objeto afetado do S3. O Macie só assume o perfil quando um usuário opta por recuperar e revelar amostras para uma descoberta. Para assumir o perfil, o Macie usa a operação AssumeRole da API AWS Security Token Service (AWS STS). Todas as ações necessárias estão registradas em AWS CloudTrail.

Para recuperar e revelar amostras de dados confidenciais para uma descoberta específica, o usuário deve ter permissão para acessar a descoberta, o resultado correspondente da descoberta de dados confidenciais e a AWS KMS key que você define para o Macie usar a fim de criptografar amostras de dados confidenciais. O perfil do IAM deve permitir que o Macie acesse o bucket afetado do S3 e o objeto afetado do S3. O perfil também deve ter permissão para usar a AWS KMS key que foi usada para criptografar o objeto afetado, se aplicável. Se alguma política do IAM, política de recursos ou outras configurações de permissões negar o acesso necessário, o usuário não conseguirá recuperar e revelar nenhuma amostra para a descoberta.

Para definir esse tipo de configuração, conclua as seguintes tarefas gerais. Se você tiver uma conta de membro em uma organização, trabalhe com o administrador do Macie para determinar se e como definir as configurações e os recursos da sua conta.

  1. Defina o seguinte:

    • O nome do perfil do IAM que você deseja que o Macie assuma. Se sua conta fizer parte de uma organização, esse nome deverá ser o mesmo para a conta de administrador delegada do Macie e para cada conta de membro aplicável na organização. Caso contrário, o administrador do Macie não poderá acessar os objetos afetados do S3 para uma conta de membro aplicável.

    • O nome da política de permissão do IAM para anexar ao perfil do IAM. Se sua conta fizer parte de uma organização, recomendamos que você use o mesmo nome de política para cada conta de membro aplicável na organização. Isso pode simplificar o provisionamento e o gerenciamento do perfil nas contas dos membros.

  2. Verifique se você configurou um repositório para os resultados da descoberta de dados confidenciais.

  3. Configure a AWS KMS key para uso na criptografia de amostras de dados confidenciais.

  4. Verifique suas permissões para criar perfis do IAM e definir as configurações no Macie.

  5. Se você for o administrador delegado do Macie para uma organização ou se tiver uma conta autônoma no Macie:

    1. Crie e configure o perfil do IAM para sua conta. Garanta que as políticas de confiança e permissões do perfil atendam a todos os requisitos para que o Macie assuma o perfil. Para obter detalhes sobre esses requisitos, consulte o próximo tópico.

    2. Configure e ative as configurações no Macie. Em seguida, o Macie vai gerar um ID externo para a configuração. Se você for o administrador do Macie para uma organização, anote esse ID. A política de confiança para o perfil do IAM em cada uma das suas contas de membro aplicáveis deve especificar esse ID.

  6. Se você tiver uma conta de membro em uma organização:

    1. Peça ao administrador do Macie o ID externo a ser especificado na política de confiança do perfil do IAM em sua conta. Além disso, verifique o nome do perfil do IAM e a política de permissões a ser criada.

    2. Crie e configure o perfil do IAM para sua conta. Garanta que as políticas de confiança e permissões do perfil atendam a todos os requisitos para que o seu administrador do Macie assuma o perfil. Para obter detalhes sobre esses requisitos, consulte o próximo tópico.

    3. (Opcional) Se você quiser recuperar e revelar amostras de dados confidenciais de objetos afetados do S3 para sua própria conta, defina e ative as configurações no Macie. Se você quiser que o Macie assuma uma perfil do IAM para recuperar as amostras, comece criando e configurando um perfil adicional do IAM em sua conta. Garanta que as políticas de confiança e permissões para esse perfil adicional atendam a todos os requisitos para que o Macie assuma o perfil. Em seguida, defina as configurações no Macie e especifique o nome desse perfil adicional. Para obter detalhes sobre os requisitos de política para o perfil, consulte o próximo tópico.

Para obter informações sobre como realizar essas tarefas, consulte Configurar o Amazon Macie para recuperar e revelar amostras de dados confidenciais com descobertas.

Configurar um perfil do IAM para acessar objetos afetados do S3

Para acessar os objetos afetados do S3 usando um perfil do IAM, comece criando e configurando um perfil que delegue acesso ao Amazon Macie. Garanta que as políticas de confiança e permissões do perfil atendam a todos os requisitos para que o Macie assuma o perfil. A maneira de fazer isso dependerá do seu tipo de conta Macie.

As seções a seguir fornecem detalhes sobre as políticas de confiança e permissões a serem anexadas ao perfil do IAM para cada tipo de conta do Macie. Escolha a seção para o tipo de conta que você tem.

nota

Se você tiver uma conta de membro em uma organização, talvez seja necessário criar e configurar dois perfis do IAM para sua conta:

  • Para permitir que seu administrador do Macie recupere e revele amostras de dados confidenciais de objetos afetados do S3 para sua conta, crie e configure um perfil que a conta do seu administrador possa assumir. Para obter esses detalhes, escolha a seção de conta de membro do Macie.

  • Para recuperar e revelar amostras de dados confidenciais de objetos afetados do S3 para sua própria conta, crie e configure um perfil que seu Macie possa assumir. Para obter esses detalhes, escolha a seção de conta autônoma do Macie.

Antes de criar e configurar qualquer perfil do IAM, trabalhe com o administrador do Macie para determinar a configuração adequada para sua conta.

Para obter informações detalhadas sobre como usar o IAM para criar o perfil, consulte Como criar um perfil usando políticas personalizadas de confiança no Guia do usuário do AWS Identity and Access Management.

Se você for o administrador delegado do Macie de uma organização, comece usando o editor de políticas do IAM para criar a política de permissões para o perfil do IAM. A política deve seguir o exemplo abaixo.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RetrieveS3Objects", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "*" ] }, { "Sid": "AssumeMacieRevealRoleForCrossAccountAccess", "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Resource": "arn:aws:iam::*:role/IAMRoleName" } ] }

Onde IAMRoleName é o nome do perfil do IAM que o Macie deve assumir ao recuperar amostras de dados confidenciais dos objetos afetados do S3 para as contas da sua organização. Substitua esse valor pelo nome do perfil que você está criando para sua conta e planeja criar para contas de membros aplicáveis em sua organização. Esse nome deve ser o mesmo para sua conta de administrador do Macie e para cada conta de membro aplicável.

nota

Na política de permissões anterior, o elemento Resource na primeira instrução usa um caractere curinga (*). Isso permite que uma entidade do IAM anexada recupere objetos de todos os buckets do S3 que sua organização possui. Para permitir esse acesso apenas a buckets específicos, substitua o caractere curinga pelo nome do recurso da Amazon (ARN) de cada bucket. Por exemplo, para permitir o acesso somente a objetos em um bucket chamado DOC-EXAMPLE-BUCKET, altere o elemento para:

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*"

Também é possível restringir o acesso a objetos em buckets específicos do S3 para contas individuais. Para fazer isso, especifique os ARNs do bucket no elemento Resource da política de permissões para o perfil do IAM em cada conta aplicável. Para obter mais informações e exemplos, consulte Elementos da política JSON do IAM: recurso no Guia do usuário do AWS Identity and Access Management.

Após criar a política de permissões para o perfil do IAM, crie e configure o perfil. Se você fizer isso usando o console do IAM, escolha Política de confiança personalizada como o Tipo de entidade confiável para o perfil. Especifique o seguinte para a política de confiança que define entidades confiáveis para o perfil.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowMacieReveal", "Effect": "Allow", "Principal": { "Service": "reveal-samples.macie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountID" } } } ] }

Onde accountId é o ID de conta da sua Conta da AWS. Substitua esse valor pelo seu ID de conta com 12 dígitos.

Na política de confiança anterior:

  • O elemento Principal especifica a entidade principal de serviço que o Macie usa ao recuperar amostras de dados confidenciais dos objetos afetados do S3, reveal-samples.macie.amazonaws.com.

  • O elemento Action especifica a ação que a entidade principal do serviço pode realizar, a operação AssumeRole da API do AWS Security Token Service (AWS STS).

  • O elemento Condition define uma condição que usa a chave de contexto de condição global aws:SourceAccount. Essa condição determina qual conta pode realizar a ação especificada. Nesse caso, ele permite que o Macie assuma o perfil somente para a conta especificada (accountID). A condição ajuda a evitar que o Macie seja usado em um ataque de representante confuso durante transações com o AWS STS.

Após definir a política de confiança para o perfil do IAM, anexe a política de permissões ao perfil. Essa deve ser a política de permissões que você criou antes de começar a criar o perfil. Em seguida, conclua as etapas restantes no IAM para concluir a criação e a configuração do perfil. Ao terminar, defina e ative as configurações no Macie.

Se você tiver uma conta de membro do Macie e quiser permitir que seu administrador do Macie recupere e revele amostras de dados confidenciais dos objetos afetados do S3 para sua conta, comece solicitando as seguintes informações ao administrador do Macie:

  • O nome do perfil do IAM a ser criado. O nome deve ser igual para sua conta e para a conta de administrador do Macie da sua organização.

  • O nome da política de permissão do IAM para anexar ao perfil.

  • O ID externo para especificar na política de confiabilidade do perfil. Esse ID deve ser o ID externo que o Macie gerou para a configuração do administrador do Macie.

Após receber essas informações, use o editor de políticas do IAM para criar a política de permissões para o perfil. A política deve seguir o exemplo abaixo.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RetrieveS3Objects", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "*" ] } ] }

A política de permissão anterior permite que uma entidade do IAM anexada recupere objetos de todos os buckets do S3 da sua conta. Isso acontece porque o elemento Resource na política usa um caractere curinga (*). Para permitir esse acesso apenas a buckets específicos, substitua o caractere curinga pelo nome do recurso da Amazon (ARN) de cada bucket. Por exemplo, para permitir o acesso somente a objetos em um bucket chamado DOC-EXAMPLE-BUCKET2, altere o elemento para:

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET2/*"

Para obter mais informações e exemplos, consulte Elementos da política JSON do IAM: recurso no Guia do usuário do AWS Identity and Access Management.

Após criar a política de permissões para o perfil do IAM, crie o perfil. Se você criar o perfil usando o console do IAM, escolha Política de confiança personalizada como o Tipo de entidade confiável para o perfil. Especifique o seguinte para a política de confiança que define entidades confiáveis para o perfil.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowMacieAdminRevealRoleForCrossAccountAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::administratorAccountID:role/IAMRoleName" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "externalID", "aws:PrincipalOrgID": "${aws:ResourceOrgID}" } } } ] }

Na política anterior, substitua os valores do espaço reservado pelos valores corretos para seu ambiente AWS, no qual:

  • administratorAccountID é o ID da conta com 12 dígitos para a conta do seu administrador do Macie.

  • IAMRoleName é o nome do perfil do IAM na conta do seu administrador do Macie. Deve ser o nome que você recebeu do administrador do Macie.

  • ExternalID é o ID externo que você recebeu do administrador do Macie.

Em geral, a política de confiança permite que o administrador do Macie assuma o perfil para recuperar e revelar amostras de dados confidenciais de objetos afetados do S3 para sua conta. O elemento Principal especifica o ARN de um perfil do IAM na sua conta de administrador do Macie. Esse é o perfil que o administrador do Macie usa para recuperar e revelar amostras de dados confidenciais das contas da sua organização. O bloco Condition define duas condições que determinam adicionalmente quem pode assumir o perfil:

  • A primeira condição especifica um ID externo exclusivo para a configuração da sua organização. Para saber mais sobre IDs externos, consulte Como usar um ID externo ao conceder acesso aos seus recursos da AWS a terceiros no Guia do usuário do AWS Identity and Access Management.

  • A segunda condição usa a chave de contexto de condição global aws:PrincipalOrgID. O valor da chave é uma variável dinâmica que representa o identificador exclusivo de uma organização no AWS Organizations (${aws:ResourceOrgID}). A condição restringe o acesso somente às contas que fazem parte da mesma organização no AWS Organizations. Se você tiver ingressado na sua organização aceitando um convite no Macie, remova essa condição da política.

Após definir a política de confiança para o perfil do IAM, anexe a política de permissões ao perfil. Essa deve ser a política de permissões que você criou antes de começar a criar o perfil. Em seguida, conclua as etapas restantes no IAM para concluir a criação e a configuração do perfil. Não defina nem insira configurações para o perfil no Macie.

Se você tiver uma conta autônoma do Macie ou uma conta de membro do Macie e quiser recuperar e revelar amostras de dados confidenciais dos objetos afetados do S3 para sua própria conta, comece usando o editor de políticas do IAM para criar a política de permissões para o perfil do IAM. A política deve seguir o exemplo abaixo.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RetrieveS3Objects", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "*" ] } ] }

Na política de permissões anterior, o elemento Resource usa um caractere curinga (*). Isso permite que uma entidade do IAM anexada recupere objetos de todos os buckets do S3 da sua conta. Para permitir esse acesso apenas a buckets específicos, substitua o caractere curinga pelo nome do recurso da Amazon (ARN) de cada bucket. Por exemplo, para permitir o acesso somente a objetos em um bucket chamado DOC-EXAMPLE-BUCKET3, altere o elemento para:

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET3/*"

Para obter mais informações e exemplos, consulte Elementos da política JSON do IAM: recurso no Guia do usuário do AWS Identity and Access Management.

Após criar a política de permissões para o perfil do IAM, crie o perfil. Se você criar o perfil usando o console do IAM, escolha Política de confiança personalizada como o Tipo de entidade confiável para o perfil. Especifique o seguinte para a política de confiança que define entidades confiáveis para o perfil.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowMacieReveal", "Effect": "Allow", "Principal": { "Service": "reveal-samples.macie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountID" } } } ] }

Onde accountId é o ID de conta da sua Conta da AWS. Substitua esse valor pelo seu ID de conta com 12 dígitos.

Na política de confiança anterior:

  • O elemento Principal especifica a entidade principal de serviço que o Macie usa ao recuperar e revelar amostras de dados confidenciais dos objetos afetados do S3, reveal-samples.macie.amazonaws.com.

  • O elemento Action especifica a ação que a entidade principal do serviço pode realizar, a operação AssumeRole da API do AWS Security Token Service (AWS STS).

  • O elemento Condition define uma condição que usa a chave de contexto de condição global aws:SourceAccount. Essa condição determina qual conta pode realizar a ação especificada. Ela permite que o Macie assuma o perfil somente para a conta especificada (accountID). A condição ajuda a evitar que o Macie seja usado em um ataque de representante confuso durante transações com o AWS STS.

Após definir a política de confiança para o perfil do IAM, anexe a política de permissões ao perfil. Essa deve ser a política de permissões que você criou antes de começar a criar o perfil. Em seguida, conclua as etapas restantes no IAM para concluir a criação e a configuração do perfil. Ao terminar, defina e ative as configurações no Macie.

Como descriptografar objetos afetados do S3

O Amazon S3 oferece suporte a várias opções de criptografia para objetos do S3. Para a maioria dessas opções, não é necessário ter nenhum recurso ou permissão adicional para que um perfil ou usuário do IAM decodifique e recupere amostras de dados confidenciais de um objeto afetado. Esse é o caso para um objeto criptografado usando criptografia no lado do servidor com uma chave gerenciada pelo Amazon S3 ou uma AWS KMS key gerenciada pela AWS.

No entanto, se um objeto do S3 for criptografado com uma AWS KMS key gerenciada pelo cliente, será necessário ter permissões adicionais para descriptografar e recuperar amostras de dados confidenciais do objeto. Mais especificamente, a política de chave da chave KMS deverá permitir que o perfil ou usuário do IAM execute a ação kms:Decrypt. Caso contrário, ocorrerá um erro e o Macie não recuperará nenhuma amostra do objeto. Para saber como fornecer esse acesso a um usuário do IAM, consulte Autenticação e controle de acesso para o AWS KMS no Guia do desenvolvedor do AWS Key Management Service.

A forma de fornecer esse acesso para um perfil do IAM dependerá de a conta proprietária da AWS KMS key também ser proprietária do perfil:

  • Se a mesma conta for proprietária da chave KMS e do perfil, um usuário da conta precisará atualizar a política da chave.

  • Se uma conta for proprietária da chave KMS e outra conta diferente for proprietária do perfil, um usuário da conta proprietária da chave deverá permitir o acesso entre contas à chave.

Este tópico descreve como realizar essas tarefas para um perfil do IAM que você criou para recuperar amostras de dados confidenciais de objetos do S3. Ele também fornece exemplos para os dois cenários. Para obter informações sobre como permitir o acesso à AWS KMS keys gerenciada pelo cliente em outros cenários, consulte Autenticação e controle de acesso para o AWS KMS no Guia do desenvolvedor do AWS Key Management Service.

Permitir acesso da mesma conta a uma chave gerenciada pelo cliente

Se a mesma conta for proprietária da AWS KMS key e do perfil do IAM, um usuário da conta precisará adicionar uma declaração à política da chave. A declaração adicional deverá permitir que o perfil do IAM decifre dados usando a chave. Para obter informações detalhadas sobre como atualizar uma política principal, consulte Alterar uma política de chave no Guia do desenvolvedor AWS Key Management Service.

Na declaração:

  • O elemento Principal precisará especificar o nome do recurso da Amazon (ARN) do perfil do IAM.

  • O array Action deve especificar a ação kms:Decrypt. Essa é a única ação do AWS KMS para a qual o perfil do IAM deverá ter permissão de realizar para descriptografar um objeto que foi criptografado com a chave.

Veja a seguir um exemplo da instrução a ser adicionada à política de uma chave do KMS.

{ "Sid": "Allow the Macie reveal role to use the key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/IAMRoleName" }, "Action": [ "kms:Decrypt" ], "Resource": "*" }

No exemplo anterior:

  • O campo AWS no elemento Principal especifica o ARN do perfil do IAM na conta. Isso permite que o perfil execute a ação especificada na declaração de política. 123456789012 é um exemplo de ID de conta. Substitua esse valor pelo ID da conta proprietária do perfil e da chave do KMS. IAMRoleName é um nome de exemplo. Substitua esse valor pelo nome do perfil do IAM na conta.

  • A matriz Action especifica a ação que o perfil do IAM pode realizar usando a chave do KMS: descriptografar o texto cifrado que foi criptografado com a chave.

O local em que você adiciona essa declaração a uma política de chave depende da estrutura e dos elementos que a política contém atualmente. Ao adicionar a instrução, certifique-se de que a sintaxe seja válida. As políticas de chaves usam o formato JSON. Isso significa que você também precisa adicionar uma vírgula antes ou depois da declaração, dependendo de onde você adiciona a declaração à política.

Permitir acesso entre contas a uma chave gerenciada pelo cliente

Se uma conta for proprietária da AWS KMS key (proprietária da chave) e outra conta for proprietária do perfil do IAM (proprietária do perfil), o proprietário da chave deverá fornecer ao proprietário do perfil acesso entre contas à chave. Uma maneira de fazer isso é usando uma concessão Uma concessão é um instrumento de política que permite que as AWSentidades principais usem chaves KMS em operações criptográficas se as condições especificadas pela concessão forem atendidas. Para saber mais sobre concessões, consulte Subsídios AWS KMS no AWS Key Management ServiceGuia do desenvolvedor.

Com essa abordagem, primeiro o proprietário da chave garante que a política da chave permita que o proprietário do perfil crie uma concessão para a chave. Em seguida, o proprietário do perfil criará uma concessão para a chave. A concessão delega as permissões relevantes ao perfil do IAM em sua conta. Ele permite que o perfil decifre objetos do S3 que são criptografados com a chave.

Etapa 1: atualizar a política de chave

Na política de chave, o proprietário da chave deve garantir que a política inclua uma declaração que permita ao proprietário do perfil criar uma concessão para o perfil do IAM na conta dele (do proprietário do perfil). Nessa declaração, o elemento Principal deverá especificar o ARN da conta do proprietário do perfil. O array Action deve especificar a ação kms:CreateGrant. Um bloco Condition pode filtrar o acesso à ação especificada. Veja a seguir um exemplo da instrução a ser adicionada à política de uma chave do KMS.

{ "Sid": "Allow a role in an account to create a grant", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringEquals": { "kms:GranteePrincipal": "arn:aws:iam::111122223333:role/IAMRoleName" }, "ForAllValues:StringEquals": { "kms:GrantOperations": "Decrypt" } } }

No exemplo anterior:

  • O campo AWS no elemento Principal especifica o ARN da conta do proprietário do perfil. Isso permite que a conta execute a ação especificada na declaração de política. 111122223333 é um exemplo de ID de conta. Substitua esse valor pelo ID da conta do proprietário do perfil.

  • A matriz Action especifica a ação que o proprietário do perfil pode realizar na chave do KMS: criar uma concessão para a chave.

  • O bloco Condition usa operadores de condição e as seguintes chaves de condição para filtrar o acesso à ação que o proprietário do perfil tem permissão para executar na chave do KMS:

    • kms:GranteePrincipal: essa condição permite que o proprietário do perfil crie uma concessão somente para a entidade principal beneficiária especificada, que é o ARN do perfil do IAM em sua conta. Nesse ARN, 111122223333 é um exemplo de ID de conta. Substitua esse valor pelo ID da conta do proprietário do perfil. IAMRoleName é um nome de exemplo. Substitua esse valor pelo nome do perfil do IAM na conta do proprietário do perfil.

    • kms:GrantOperations: essa condição permite que o proprietário do perfil crie uma concessão somente para delegar permissão para realizar a ação Decrypt do AWS KMS (descriptografar texto cifrado que foi criptografado com a chave). Isso impede que o proprietário do perfil crie concessões que deleguem permissões para realizar outras ações na chave do KMS. A ação Decrypt é a única ação do AWS KMS para a qual o perfil do IAM deverá ter permissão de realizar para descriptografar um objeto que foi criptografado com a chave.

O local no qual o proprietário adicionará essa declaração a uma política de chave dependerá da estrutura e dos elementos atualmente contidos na política. Quando o proprietário da chave adiciona a declaração, ele deve garantir que a sintaxe seja válida. As políticas de chaves usam o formato JSON. Isso significa que você também precisa adicionar uma vírgula antes ou depois da declaração, dependendo de onde você adiciona a declaração à política. Para obter informações detalhadas sobre como atualizar uma política principal, consulte Alterar uma política de chave no Guia do desenvolvedor AWS Key Management Service.

Etapa 2: criar uma concessão

Depois que o proprietário da chave atualizar a política de chave conforme necessário, o proprietário do perfil criará uma concessão para a chave. A concessão delega as permissões relevantes ao perfil do IAM na conta dele (o proprietário do perfil). Antes que o proprietário do perfil crie a concessão, ele deverá verificar se tem permissão para realizar a ação kms:CreateGrant. Essa ação permite que ele adicione uma concessão a uma AWS KMS key existente gerenciada pelo cliente.

Para criar a concessão, o proprietário do perfil pode usar a operação CreateGrant da API do AWS Key Management Service. Quando o proprietário do perfil criar a concessão, ele deverá especificar os seguintes valores para os parâmetros necessários:

  • KeyId: o ARN da chave do KMS. Para acesso entre contas a uma chave do KMS, esse valor deve ser um ARN. Não pode ser um ID de chave.

  • GranteePrincipal: o ARN do perfil do IAM na conta dele. Esse valor deve ser arn:aws:iam::111122223333:role/IAMRoleName, no qual 111122223333 é o ID da conta do proprietário do perfil e IAMRoleName é o nome do perfil.

  • Operations: a ação de descriptografia do AWS KMS (Decrypt). Essa é a única ação do AWS KMS para a qual o perfil do IAM deverá ter permissão de realizar para descriptografar um objeto que foi criptografado com a chave do KMS.

Se o proprietário do perfil estiver usando a AWS Command Line Interface (AWS CLI), ele poderá executar o comando create-grant para criar a concessão. O exemplo a seguir mostra como. O exemplo está formatado para Microsoft Windows e usa o caractere de continuação de linha circunflexo (^) para melhorar a legibilidade.

C:\> aws kms create-grant ^ --key-id arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab ^ --grantee-principal arn:aws:iam::111122223333:role/IAMRoleName ^ --operations "Decrypt"

Em que:

  • key-id especifica o ARN da chave do KMS à qual aplicar a concessão.

  • grantee-principal especifica o ARN do perfil do IAM que tem permissão para realizar a ação especificada pela concessão. Esse valor deve corresponder ao ARN especificado pela condição kms:GranteePrincipal na política de chave.

  • operations especifica a ação que a concessão permite que a entidade principal especificada execute: descriptografar o texto cifrado que foi criptografado com a chave.

Se o comando for executado com sucesso, você receberá um resultado semelhante ao seguinte.

{ "GrantToken": "<grant token>", "GrantId": "1a2b3c4d2f5e69f440bae30eaec9570bb1fb7358824f9ddfa1aa5a0dab1a59b2" }

Onde GrantToken é uma string única, não secreta, de comprimento variável e codificada em base64 que representa a concessão que foi criada e GrantId é o identificador exclusivo da concessão.