Ao usar o AWS re:Post, você concorda com os AWS re:Post Termos de uso

Como resolvo os erros de “Acesso negado” quando uso o Athena como fonte de dados no Quicksight?

6 minuto de leitura
0

Eu recebo erros de “Acesso negado” quando tento usar o Amazon Athena como fonte de dados na minha conta do Amazon QuickSight.

Breve descrição

A seguir estão os motivos comuns para erros de Acesso negado quando você usa o Amazon Athena como fonte de dados no Amazon QuickSight:

  • Sua conta do QuickSight não tem a permissão necessária para acessar o bucket do Amazon Simple Storage Service (Amazon S3).
  • Seu arquivo de dados está criptografado com uma chave do AWS Key Management Service (AWS KMS).
  • Você não tem a política de permissões necessária do AWS Identity and Access Management (IAM) atribuída a você.
  • O bucket do Amazon S3 não existe. Ou o perfil do IAM usada para consultar os dados não tem as permissões necessárias do S3.
  • (Para contas do QuickSight que usam o AWS Organizations) Você não tem as políticas de controle de serviços (SCPs) necessárias atribuídas a você.
  • (Para contas Athena que usam Lake Formation) Seu usuário ou grupo do QuickSight não tem permissões do AWS Lake Formation.

**Observação:**Antes de começar a solucionar problemas, verifique se você pode acessar seus dados no Athena.

Solução

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Sua conta do QuickSight não tem a permissão necessária para acessar o bucket do Amazon S3

Você recebe um erro semelhante ao seguinte:

"An error has been thrown from AWS Athena client. Permissão negada no S3 Path:sourceErrorMessage: s3:/example bucket/object name”

Para obter permissão para o bucket do S3, conclua as seguintes etapas:

  1. Abra o console do Amazon QuickSight.
  2. Escolha Gerenciar o QuickSight.
  3. Escolha Segurança e permissões.
  4. Em Acesso do QuickSight aos serviços da AWS, escolha Gerenciar.
  5. Na lista de serviços da AWS, selecione ** Amazon S3**.
  6. Escolha Selecionar buckets do S3 e, em seguida, selecione o bucket do S3.
  7. Escolha Permissão de gravação para o Athena Workgroup e, em seguida, escolha Concluir.
  8. Escolha Salvar.

Seu arquivo de dados está criptografado com uma chave do AWS KMS

Se seu arquivo de dados estiver criptografado com uma chave do AWS KMS, o Amazon S3 poderá negar seu acesso aos dados. Para resolver esse problema, use o console AWS CLI ou o AWS KMS para conceder à sua função de serviço QuickSight acesso à chave do AWS KMS.

Use a AWS CLI

Conclua as seguintes etapas:

  1. Use o console do IAM para localizar o ARN do perfil de serviço QuickSight.

  2. Use o console do Amazon S3 para encontrar o ARN da chave AWS KMS.

  3. Acesse o bucket que contém seu arquivo de dados.

  4. Escolha a guia Visão geral e localize a ID da chave KMS.

  5. Adicione o ARN do perfil de serviço QuickSight à política de chaves do KMS.

  6. Execute o comando create-grant da CLI da AWS:

    aws kms create-grant --key-id aws_kms_key_arn --grantee-principal quicksight_role_arn --operations Decrypt
    

    **Observação:**Substitua aws\ _kms\ _key\ _arn pelo ARN da sua chave do AWS KMS e quicksight\ _role\ _arn pelo ARN de seu perfil de serviço do QuickSight.

Abra o console do AWS KMS

Para adicionar o perfil de serviço QuickSight à política de chaves do AWS KMS, altere a política de chaves. Em seguida, adicione as seguintes permissões à política de chaves:

{     "Sid": "Allow use of the key",
     "Effect": "Allow",
     "Principal": {
         "AWS": [
              "arn:aws:iam::aws-account-id:role/service-role/aws-quicksight-service-role-v0",
              "arn:aws:iam::aws-account-id:role/service-role/aws-quicksight-s3-consumers-role-v0"
              ]
         },
         "Action": [
            "kms:Decrypt"
               ],
         "Resource": "*"
}

**Observação:**Na política anterior, certifique-se de adicionar o ARN para seus perfis de serviço do QuickSight na seção Principal.

Você não tem a política de permissões do IAM necessária atribuída a você

Para verificar quais políticas estão atribuídas a você e verificar se a política restringe seu acesso, conclua as seguintes etapas:

  1. Abra o console do Amazon QuickSight.
  2. Escolha Gerenciar o QuickSight.
  3. Escolha Segurança e permissões.
  4. Escolha atribuições de política do IAM.
  5. Verifique se há alguma atribuição de política do IAM para acessar o Athena.
  6. Verifique se a política não restringe seu acesso ao S3 ou ao Athena.

Se uma política restringir seu acesso ao S3 ou ao Athena, peça ao administrador do QuickSight que altere a política. Se você for o administrador, desative a atribuição da política do IAM e edite a política para incluir as permissões do S3 e do Athena. Para obter mais informações, consulte Como configurar o acesso granular aos serviços da AWS por meio do IAM.

O bucket do S3 não existe. Ou o perfil do IAM usada para consultar os dados não tem as permissões necessárias do S3

Você recebe o seguinte erro:

“Não é possível verificar/criar um bucket de saída.”

Para resolver o erro anterior, consulte Como resolvo o erro “Não é possível verificar/criar bucket de saída” no Amazon Athena?

Se o bucket não existir, adicione o bucket válido do S3. No console do Amazon QuickSight, selecione Amazon S3 na lista de serviços da AWS. Em seguida, selecione o bucket do S3 usado para o local do resultado da consulta.

Você não tem os SCPs necessários atribuídos a você (Organizações)

Peça ao administrador da organização que verifique suas configurações de SCP para verificar as permissões atribuídas a você. Se você for administrador de organizações, consulte Criação, atualização e exclusão de políticas de controle de serviços.

Seu usuário ou grupo do QuickSight não tem permissões de Lake Formation

Para contas Athena que usam Lake Formation, você pode receber o seguinte erro:

“Um erro foi gerado pelo cliente AWS Athena. Permissões insuficientes para executar a consulta. Permissões insuficientes para o Lake Formation."

Para conceder permissões ao Lake Formation para o QuickSight, você deve ser administrador do Lake Formation.

Conclua as seguintes etapas:

  1. Localize o ARN do usuário ou grupo do QuickSight.

  2. Execute um dos seguintes comandos da CLI da AWS:

    describe-user

    aws quicksight describe-user  --user-name user_name  --aws-account-id account_id --namespace default
    

    -ou-

    describe-group

    aws quicksight describe-group --group-name group_name  --aws-account-id account_id --namespace default
    

    **Observação:**Nos comandos anteriores, substitua user\ _name pelo nome do usuário, group\ _name pelo nome do seu grupo e account\ _id pelo ID pela sua conta.

  3. Abra o console do AWS Lake Formation.

  4. Escolha Tabelas.

  5. Escolha Ações e, em seguida, escolha Permissões.

  6. Na lista de Principais, escolha Grant.

  7. Em Usuários e grupos do SAML e do Amazon QuickSight, insira o ARN do usuário ou grupo do QuickSight. Por exemplo, arn:aws:quicksight:region:accountId:user/namespace/username.

  8. Selecione a fonte de dados correta e escolha Todas as tabelas. As permissões da tabela são Select e Describe.

  9. Escolha Grant.

Depois de conceder permissões, retorne ao console do QuickSight para tentar criar o conjunto de dados novamente.

Informações relacionadas

Permissões insuficientes ao usar o Athena com o Amazon QuickSight

Apresentando o controle de acesso refinado do Amazon QuickSight sobre o Amazon S3 e o Amazon Athena

Ative permissões refinadas para autores do Amazon QuickSight no AWS Lake Formation

AWS OFICIAL
AWS OFICIALAtualizada há 8 meses