本主题介绍了 Amazon Athena 中可用于预编译语句的 IAM 权限。每当您使用 IAM 策略时,请确保遵循 IAM 最佳实践。有关更多信息,请参阅 IAM 用户指南中的 IAM 安全最佳实践。
有关预编译语句的更多信息,请参阅 使用参数化查询。
创建、管理和执行预编译语句需要以下 IAM 权限。
athena:CreatePreparedStatement athena:UpdatePreparedStatement athena:GetPreparedStatement athena:ListPreparedStatements athena:DeletePreparedStatement
如下表所示,使用这些权限。
要执行的操作 | 使用这些权限 |
---|---|
运行 PREPARE 查询 |
athena:StartQueryExecution
athena:CreatePreparedStatement |
重新运行 PREPARE 查询以更新现有预编译语句 |
athena:StartQueryExecution
athena:UpdatePreparedStatement |
运行 EXECUTE 查询 |
athena:StartQueryExecution
athena:GetPreparedStatement |
运行 DEALLOCATE PREPARE 查询 |
athena:StartQueryExecution
athena:DeletePreparedStatement |
示例
在以下示例中,IAM 策略授予对指定账户 ID 和工作组管理和运行预编译语句的权限。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"athena:StartQueryExecution",
"athena:CreatePreparedStatement",
"athena:UpdatePreparedStatement",
"athena:GetPreparedStatement",
"athena:DeletePreparedStatement",
"athena:ListPreparedStatements"
],
"Resource": [
"arn:aws:athena:*:111122223333
:workgroup/<workgroup-name>
"
]
}
]
}