Pré-requisitos
Antes de criar um catálogo federado para Tabelas do S3 no Catálogo de Dados do AWS Glue, certifique-se de que sua entidade principal do IAM (usuário ou função) tenha as permissões necessárias.
Permissões obrigatórias do IAM
A entidade principal do IAM precisa das seguintes permissões para habilitar a integração das tabelas do S3:
Permissões do AWS Glue:
glue:CreateCatalog: necessário para criar o catálogo federados3tablescatalogglue:GetCatalog: necessário para visualizar detalhes do catálogoglue:GetDatabase: necessário para visualizar namespaces do S3 como bancos de dadosglue:GetTable: necessário para visualizar tabelas do S3glue:passConnection: concede à entidade principal responsável pela chamada o direito de delegar a conexãoaws:s3tablesao serviço AWS Glue
Permissões de tabelas do S3 (para controle de acesso do IAM):
s3tables:CreateTableBuckets3tables:GetTableBuckets3tables:CreateNamespaces3tables:GetNamespaces3tables:ListNamespacess3tables:CreateTables3tables:GetTables3tables:ListTabless3tables:UpdateTableMetadataLocations3tables:GetTableMetadataLocations3tables:GetTableDatas3tables:PutTableData
Exemplo de política do IAM
A política do IAM a seguir fornece as permissões mínimas necessárias para permitir a integração das Tabelas do S3 com o catálogo de dados no modo IAM:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "GlueDataCatalogPermissions", "Effect": "Allow", "Action": [ "glue:CreateCatalog", "glue:GetCatalog", "glue:GetDatabase", "glue:GetTable" ], "Resource": [ "arn:aws:glue:region:account-id:catalog/s3tablescatalog", "arn:aws:glue:region:account-id:database/s3tablescatalog/*/*", "arn:aws:glue:region:account-id:table/s3tablescatalog/*/*/*" ] }, { "Sid": "S3TablesDataAccessPermissions", "Effect": "Allow", "Action": [ "s3tables:GetTableBucket", "s3tables:GetNamespace", "s3tables:GetTable", "s3tables:GetTableMetadataLocation", "s3tables:GetTableData" ], "Resource": [ "arn:aws:s3tables:region:account-id:bucket/*", "arn:aws:s3tables:region:account-id:bucket/*/table/*" ] } ] }