在 Amazon QuickSight 中使用 Athena 时权限不足 - Amazon QuickSight

在 Amazon QuickSight 中使用 Athena 时权限不足

如果您收到错误消息提示权限不足,请尝试按照以下步骤来解决问题。

您需要管理员权限才能排查此问题。

解决权限不足错误
  1. 确保 Amazon QuickSight 可以访问 Athena 使用的 Amazon S3 存储桶:

    1. 为此,请选择您的个人资料名称(右上角)。选择 Manage QuickSight (管理 QuickSight),然后选择 Security & permissions (安全性和权限)

    2. 选择 Add or remove (添加或删除)

    3. 在列表中找到 Athena。清除 Athena 旁边的复选框,然后再次选中以启用 Athena。

      选择连接两者

    4. 选择要从 Amazon QuickSight 访问的存储桶。

      您在此处访问的 S3 存储桶的设置与您通过从 AWS 服务 列表中选择 Amazon S3 访问的设置相同。请注意,避免无意中禁用其他人使用的存储桶。

    5. 选择 Select (选择) 以保存 S3 存储桶。

    6. 选择更新保存对 Amazon QuickSight 访问 AWS 服务 的权限所作的新设置。您也可以选择取消,不进行任何更改就退出。

  2. 如果数据文件是使用 AWS KMS 密钥加密的,请为 Amazon QuickSight IAM 角色授予解密密钥的权限。执行该操作的最简单方法是使用 AWS CLI。

    您可以在 中运行 create-grantAWS CLI 命令来执行此操作。

    aws kms create-grant --key-id <AWS KMS key ARN> --grantee-principal <Your Amazon QuickSight Role ARN> --operations Decrypt

    Amazon QuickSight 角色的 Amazon 资源名称(ARN)采用 arn:aws:iam::<account id>:role/service-role/aws-quicksight-service-role-v<version number> 格式,并且可以从 IAM 控制台中进行访问。要查找您的 AWS KMS 密钥 ARN,请使用 S3 控制台。转到包含数据文件的存储桶,然后选择概述选项卡。密钥位于 KMS 密钥 ID 旁边。

对于 Amazon Athena、Amazon S3 和 Athena Query Federation 连接,QuickSight 默认使用以下 IAM 角色:

arn:aws:iam::AWS-ACCOUNT-ID:role/service-role/aws-quicksight-s3-consumers-role-v0

如果不存在 aws-quicksight-s3-consumers-role-v0,则 QuickSight 会使用:

arn:aws:iam::AWS-ACCOUNT-ID:role/service-role/aws-quicksight-service-role-v0