Políticas de catálogos de datos de ejemplo
En esta sección se incluyen políticas de ejemplo que puede utilizar para habilitar varias acciones en catálogos de datos.
Un catálogo de datos es un recurso de IAM administrado por Athena. Por lo tanto, si la política de catálogo de datos utiliza acciones que toman datacatalog
como entrada, debe especificar el ARN del catálogo de datos de la siguiente manera:
"Resource": [arn:aws:athena:
<region>
:<user-account>
:datacatalog/<datacatalog-name>
]
El <datacatalog-name>
es el nombre del catálogo de datos. Por ejemplo, para un catálogo de datos denominado test_datacatalog
, especifíquelo como recurso de la siguiente manera:
"Resource": ["arn:aws:athena:us-east-1:123456789012:datacatalog/test_datacatalog"]
Para obtener una lista completa de las acciones de Amazon Athena, consulte los nombres de acciones de la API en la Referencia de API de Amazon Athena. Para obtener más información sobre las políticas de IAM, consulte Creación de políticas con el editor visual en la Guía del usuario de IAM. Para obtener más información acerca de la creación de políticas de IAM para grupos de trabajo, consulte Control del acceso a los catálogos de datos con políticas de IAM.
ejemplo Ejemplo de política para el acceso completo a todos los catálogos de datos
La siguiente política permite el acceso completo a todos los recursos de catálogos de datos que podrían existir en la cuenta. Le recomendamos que utilice esta política para aquellos usuarios en su cuenta que deben administrar catálogos de datos para los demás usuarios.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "athena:*" ], "Resource":[ "*" ] } ] }
ejemplo Ejemplo de política para el acceso completo a un catálogo de datos especificado
La siguiente política permite acceso completo al recurso de catálogo de datos específico individual, denominado datacatalogA
. Puede utilizar esta política para los usuarios con control total sobre un catálogo de datos en particular.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "athena:ListDataCatalogs", "athena:ListWorkGroups", "athena:GetDatabase", "athena:ListDatabases", "athena:ListTableMetadata", "athena:GetTableMetadata" ], "Resource":"*" }, { "Effect":"Allow", "Action":[ "athena:StartQueryExecution", "athena:GetQueryResults", "athena:DeleteNamedQuery", "athena:GetNamedQuery", "athena:ListQueryExecutions", "athena:StopQueryExecution", "athena:GetQueryResultsStream", "athena:ListNamedQueries", "athena:CreateNamedQuery", "athena:GetQueryExecution", "athena:BatchGetNamedQuery", "athena:BatchGetQueryExecution", "athena:DeleteWorkGroup", "athena:UpdateWorkGroup", "athena:GetWorkGroup", "athena:CreateWorkGroup" ], "Resource":[ "arn:aws:athena:us-east-1:123456789012:workgroup/*" ] }, { "Effect":"Allow", "Action":[ "athena:CreateDataCatalog", "athena:DeleteDataCatalog", "athena:GetDataCatalog", "athena:GetDatabase", "athena:GetTableMetadata", "athena:ListDatabases", "athena:ListTableMetadata", "athena:UpdateDataCatalog" ], "Resource":"arn:aws:athena:us-east-1:123456789012:datacatalog/datacatalogA" } ] }
ejemplo Ejemplo de política para consultar un catálogo de datos especificado
En la siguiente política, un usuario puede ejecutar consultas en el datacatalogA
especificado. El usuario no tiene permiso para realizar las tareas de administración para el catálogo de datos en sí, como, por ejemplo, actualizarlo o eliminarlo.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "athena:StartQueryExecution" ], "Resource":[ "arn:aws:athena:us-east-1:123456789012:workgroup/*" ] }, { "Effect":"Allow", "Action":[ "athena:GetDataCatalog" ], "Resource":[ "arn:aws:athena:us-east-1:123456789012:datacatalog/datacatalogA" ] } ] }
ejemplo Ejemplo de política para operaciones de administración en un catálogo de datos especificado
En la siguiente política, se permite a un usuario crear, eliminar, obtener detalles y actualizar un catálogo de datos datacatalogA
.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:CreateDataCatalog", "athena:GetDataCatalog", "athena:DeleteDataCatalog", "athena:UpdateDataCatalog" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:datacatalog/datacatalogA" ] } ] }
ejemplo Ejemplo de política para generar listas de catálogos de datos
La siguiente política permite a todos los usuarios enumerar todos los catálogos de datos:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListDataCatalogs" ], "Resource": "*" } ] }
ejemplo Ejemplo de política para realizar operaciones de metadatos en catálogos de datos
La siguiente política permite operaciones de metadatos en catálogos de datos:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:GetDatabase", "athena:GetTableMetadata", "athena:ListDatabases", "athena:ListTableMetadata" ], "Resource": "*" } ] }