在 Athena 中创建和使用数据来源的权限
没有 Lambda 权限的 AWS Glue Data Catalog 联合连接器
-
调用 Athena API 进行连接器管理和查询的 IAM 主体权限
Amazon Athena 访问权限:AmazonAthenaFullAccess 托管策略提供对 Amazon Athena 的完全访问权限,以及对启用查询、写入结果和数据管理所需依赖项的限定访问权限。有关更多信息,请参阅《AWS 托管式策略参考指南》中的 AmazonAthenaFullAccess。
-
AWS Glue 连接管理:创建和管理 AWS Glue 连接对象的权限。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:GetConnection", "glue:CreateConnection", "glue:DeleteConnection", "glue:UpdateConnection" ], "Resource": "*" } ] }注意
为简洁起见,示例策略使用了
"Resource": "*"。对于生产环境,应尽可能将权限范围限定为特定资源。 -
AWS Lake Formation 访问权限:创建 AWS Glue 目录和使用精细访问控制的权限。
-
Glue 数据目录 IAM 角色
-
本节介绍 Athena 配置基础设施和查询数据来源所需的权限。Amazon Athena 联合查询需要在传递至 Glue 数据目录 IAM 角色的角色中拥有以下权限。
注意
当连接到 VPC 中的数据来源时,Athena 会在您的账户中,在指定 VPC 内创建一个弹性网络接口(ENI)。IAM 角色需要 EC2 权限来创建、描述和删除此网络接口。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:ManagedConnector", "secretsmanager:DescribeSecret", "secretsmanager:GetSecretValue", "secretsmanager:PutSecretValue", "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeVpcs", "dynamodb:DescribeTable", "dynamodb:ListTables", "dynamodb:Scan", "dynamodb:Query", "dynamodb:GetItem", "dynamodb:BatchGetItem" ], "Resource": "*" } ] }注意
为简洁起见,示例策略使用了
"Resource": "*"。对于生产环境,应尽可能将权限范围限定为特定资源。例如,将 Secrets Manager 权限的范围限定为特定的密钥 ARN。权限说明 允许的操作
说明
必填
"glue:ManagedConnector"允许 Athena 调用连接器。
必需
"secretsmanager:DescribeSecret", "secretsmanager:GetSecretValue", "secretsmanager:PutSecretValue"允许连接器检索存储在 AWS Secrets Manager 中的数据库凭证。
可选
"ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeVpcs", "ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DeleteNetworkInterface"如果数据来源位于 VPC 内,则允许 Athena 设置网络连接。
可选
"dynamodb:DescribeTable", "dynamodb:ListTables", "dynamodb:Scan", "dynamodb:Query", "dynamodb:GetItem", "dynamodb:BatchGetItem"允许 Athena 查询 DynamoDB 数据来源。
可选
-
具有 Lambda 权限的 AWS Glue Data Catalog 联合连接器
-
调用 Athena API 进行连接器管理和查询的 IAM 主体权限
Amazon Athena 访问权限:AmazonAthenaFullAccess 托管策略提供对 Amazon Athena 的完全访问权限,以及对启用查询、写入结果和数据管理所需依赖项的限定访问权限。有关更多信息,请参阅《AWS 托管式策略参考指南》中的 AmazonAthenaFullAccess。
-
连接器管理权限:使用基于 Lambda 的连接器时,需要以下权限才能调用 Athena DataCatalog API。请参阅创建连接器和 Athena 目录所需的权限。
-
AWS Lake Formation 访问权限(如果使用 Lake Formation):创建 AWS Glue 目录和使用精细访问控制的权限。
Athena 数据目录联合连接器权限
-
调用 Athena API 进行连接器管理和查询的 IAM 主体权限
Amazon Athena 访问权限:AmazonAthenaFullAccess 托管策略提供对 Amazon Athena 的完全访问权限,以及对启用查询、写入结果和数据管理所需依赖项的限定访问权限。有关更多信息,请参阅《AWS 托管式策略参考指南》中的 AmazonAthenaFullAccess。
-
连接器管理权限:使用基于 Lambda 的连接器时,需要以下权限才能调用 Athena DataCatalog API。请参阅创建连接器和 Athena 目录所需的权限。