Por que estou recebendo uma mensagem de erro de acesso negado quando faço upload de arquivos para o meu bucket do Amazon S3 que tem a criptografia padrão do AWS KMS?

4 minuto de leitura
0

Meu bucket do Amazon Simple Storage Service (Amazon S3) tem criptografia padrão do AWS Key Management Service (AWS KMS). Estou tentando fazer upload de arquivos para o bucket, mas o Amazon S3 retorna uma mensagem de erro de acesso negado. Como posso corrigir isso?

Resolução

Primeiro, confirme se:

Em seguida, atualize as permissões do AWS KMS do seu usuário ou perfil do IAM com base na mensagem de erro que você recebe.

Importante:

  • Se a chave do AWS KMS e o perfil do IAM pertencerem a contas diferentes da AWS, a política do IAM e a política de chave do KMS deverão ser atualizadas. Certifique-se de adicionar as permissões do KMS à política do IAM e à política de chave do KMS.
  • Para usar uma política do IAM para controlar o acesso a uma chave do KMS, a política de chave da chave do KMS deve dar permissão à conta para usar as políticas do IAM.

“Ocorreu um erro (AccessDenied) ao chamar a operação PutObject: acesso negado”

Essa mensagem de erro indica que seu usuário ou perfil do IAM precisa de permissão para a ação kms:GenerateDataKey.

Siga estas etapas para adicionar permissão para kms:GenerateDataKey:

1.    Abra o console do IAM.

2.    Escolha o usuário ou o perfil do IAM que você está usando para fazer upload de arquivos para o bucket do Amazon S3.

3.    Na guia Permissões, expanda cada política para ver seu documento de política JSON.

4.    Nos documentos de política JSON, procure políticas relacionadas a acesso ao AWS KMS. Revise as declarações com “Efeito”: “Permitir” para verificar se o usuário ou o perfil tem permissões para a ação kms:GenerateDataKey na chave do AWS KMS do bucket.

5.    Se essa permissão estiver ausente, adicione-a à política apropriada. Para obter instruções, consulte Adicionar permissões a um usuário (console) ou Modificar uma política de permissões de perfil (console).

6.    Nos documentos de política JSON, procure declarações com “Efeito”: “Negar”. Confirme se essas declarações não negam a ação s3:PutObject no bucket. As declarações não devem negar ao usuário ou perfil do IAM o acesso à ação kms:GenerateDataKey na chave usada para criptografar o bucket. Além disso, as permissões necessárias do KMS e do S3 não devem ser restritas ao usar políticas de endpoint da VPC, políticas de controle de serviços, limites de permissões ou políticas de sessão.

“Ocorreu um erro (AccessDenied) ao chamar a operação CreateMultipartUpload: acesso negado”

Essa mensagem de erro indica que seu usuário ou perfil do IAM precisa de permissão para as ações kms:GenerateDataKey e kms:Decrypt.

Siga estas etapas para adicionar permissões para kms:GenerateDataKey e kms:Decrypt:

1.    Abra o console do IAM.

2.    Escolha o usuário ou o perfil do IAM que você está usando para fazer upload de arquivos para o bucket do Amazon S3.

3.    Na guia Permissões, expanda cada política para ver seu documento de política JSON.

4.    Nos documentos de política JSON, procure políticas relacionadas a acesso ao AWS KMS. Revise as declarações com “Efeito”: “Permitir” para verificar se o perfil tem permissões para kms:GenerateDataKey e kms:Decrypt na chave do AWS KMS do bucket.

5.    Se essas permissões estiverem ausentes, adicione-as à política apropriada. Para obter instruções, consulte Adicionar permissões a um usuário (console) ou Modificar uma política de permissões de perfil (console).

6.    Nos documentos de política JSON, procure declarações com “Efeito”: “Negar”. Em seguida, confirme se essas declarações não negam a ação s3:PutObject no bucket. As declarações não devem negar ao usuário ou perfil do IAM o acesso às ações kms:GenerateDataKey e kms:Decrypt na chave usada para criptografar o bucket. Além disso, as permissões necessárias do KMS e do S3 não devem ser restritas ao usar políticas de endpoint da VPC, políticas de controle de serviços, limites de permissões ou políticas de sessão.


Informações relacionadas

Definir o comportamento padrão de criptografia do lado do servidor para buckets do Amazon S3

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos