Cuando ejecuto consultas de Amazon Athena en SQL Workbench/J o AWS Lambda, o cuando uso AWS SDK, aparece el siguiente error: "Unable to verify/create output bucket."
Resolución
Si estableces manualmente la ubicación de los resultados de la consulta, confirma que existe el bucket de Amazon Simple Storage Service (Amazon S3).
Si el bucket de S3 existe, comprueba las siguientes propiedades de la política de AWS Identity and Access Management (IAM) para el usuario o rol que ejecuta la consulta:
- Confirma que la política otorga los permisos necesarios, como s3:GetBucketLocation.
- Asegúrate de que la política de IAM no contenga ninguna instrucción Deny que utilice aws:SourceIp o aws:SourceVpc para restringir los permisos de Amazon S3.
Por ejemplo, la siguiente política permite al usuario o rol de IAM ejecutar la consulta:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetBucketLocation",
"s3:GetObject",
"s3:ListBucket",
"s3:ListBucketMultipartUploads",
"s3:ListMultipartUploadParts",
"s3:AbortMultipartUpload",
"s3:CreateBucket",
"s3:PutObject"
],
"Resource": [
"arn:aws:s3:::aws-athena-query-results-*",
"arn:aws:s3:::query-results-custom-bucket",
"arn:aws:s3:::query-results-custom-bucket/*"
]
}
]
}
Nota: En el caso de los buckets de S3 existentes, puedes eliminar el permiso s3:CreateBucket. Si defines manualmente la ubicación de los resultados de consultas, no incluyas arn:aws:s3:::aws-athena-query-results-* en la política. La política solo debe incluir arn:aws:s3:::query-results-custom-bucket y arn:aws:s3:::query-results-custom-bucket/* cuando definas la ubicación de los resultados de consultas manualmente.
Información relacionada
Control del acceso a Amazon S3 desde Athena
Ejemplos de políticas de bucket de Amazon S3
Control del acceso desde puntos de enlace de nube virtual privada (VPC) con políticas de bucket
Acciones de la política para Amazon S3