Políticas de catálogo de dados de exemplo - Amazon Athena

Políticas de catálogo de dados de exemplo

Esta seção inclui exemplos de políticas que você pode usar para habilitar várias ações nos catálogos de dados.

Um catálogo de dados é um recurso do IAM gerenciado pelo Athena. Portanto, se sua política de catálogo de dados usa ações que usam o datacatalog como uma entrada, especifique o ARN do catálogo de dados da seguinte maneira:

"Resource": [arn:aws:athena:<region>:<user-account>:datacatalog/<datacatalog-name>]

O <datacatalog-name> é o nome do seu catálogo de dados. Por exemplo, para um catálogo de dados chamado test_datacatalog, especifique-o como um recurso da seguinte forma:

"Resource": ["arn:aws:athena:us-east-1:123456789012:datacatalog/test_datacatalog"]

Para obter uma lista completa de ações do Amazon Athena, consulte os nomes das ações de API na Referência de API do Amazon Athena. Para obter mais informações sobre as políticas do IAM, consulte Criar políticas com o editor visual no Guia do usuário do IAM. Para obter mais informações sobre como criar políticas do IAM para grupos de trabalho, consulte Políticas do IAM de acesso a catálogos de dados.

exemplo
Exemplo de política para acesso total a todos os catálogos de dados

A seguinte política permite acesso total a todos os recursos do catálogo de dados que podem existir na conta. Recomendamos que você use essa política para os usuários da sua conta que devem administrar e gerenciar catálogos de dados para todos os outros usuários.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "athena:*" ], "Resource":[ "*" ] } ] }
exemplo
Exemplo de política para acesso total a um catálogo de dados especificado

A seguinte política permite acesso total ao único recurso específico do catálogo de dados, denominado datacatalogA. Você pode usar essa política para os usuários com controle total sobre um determinado catálogo de dados.

{ "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" } ] }
exemplo
Exemplo de política para consulta em um catálogo de dados especificado

Na política a seguir, um usuário tem permissão para executar consultas no datacatalogA especificado. O usuário não tem permissão para executar tarefas de gerenciamento para o próprio catálogo de dados, como atualizá-lo ou excluí-lo.

{ "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" ] } ] }
exemplo
Exemplo de política para operações de gerenciamento em um catálogo de dados especificado

Na política a seguir, o usuário tem permissão para criar, excluir, obter detalhes e atualizar um catálogo de dados 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" ] } ] }
exemplo
Exemplo de política para listagem de catálogos de dados

A política a seguir permite que todos os usuários listem todos os catálogos de dados:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListDataCatalogs" ], "Resource": "*" } ] }
exemplo
Exemplo de política para operações de metadados em catálogos de dados

A política a seguir permite operações de metadados em catálogos de dados:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:GetDatabase", "athena:GetTableMetadata", "athena:ListDatabases", "athena:ListTableMetadata" ], "Resource": "*" } ] }