As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Configuração de permissões para unidades de compartilhamento de dados do Amazon Redshift
Este tópico descreve as etapas que você precisa seguir para aceitar um convite de unidade de compartilhamento de dados, criar um banco de dados federado, e conceder permissões. Você pode usar o console Lake Formation ou o AWS Command Line Interface (AWS CLI). Os exemplos neste tópico mostram o cluster produtor, o catálogo de dados, e o consumidor de dados na mesma conta.
Para saber mais sobre os recursos de entre contas do Lake Formation, consulte Compartilhamento de dados entre contas no Lake Formation.
Como configurar permissões para uma unidade de compartilhamento de dados
Analise e aceite um convite de unidade de compartilhamento de dados.
- Console
-
-
Faça login no console do Lake Formation como administrador do data lake em https://console.aws.amazon.com/lakeformation/. Navegue até a página Compartilhamento de dados.
-
Revise as unidades de compartilhamento de dados que você tem autorização para acessar. A coluna Status indica seu status atual de participação na unidade de compartilhamento de dados. O status Pendente indica que você foi adicionado a uma unidade de compartilhamento de dados, mas ainda não o aceitou ou rejeitou o convite.
-
Para responder ao convite da unidade de compartilhamento de dados, selecione o nome da unidade de compartilhamento de dados e escolha Examinar convite. Em Aceitar ou rejeitar unidade de compartilhamento de dados, examine os detalhes do convite. Selecione Aceitar para aceitar o convite ou Rejeitar para recusar o convite. Se você rejeitar o convite, não terá acesso à unidade de compartilhamento de dados.
- AWS CLI
-
Os exemplos a seguir mostram como exibir, aceitar e registrar o convite. Substitua o ID da Conta da AWS por um ID da Conta da AWS válido. Substitua data-share-arn
pelo nome do recurso da Amazon (ARN) real que faz referência à unidade de compartilhamento de dados.
-
Visualize um convite pendente.
aws redshift describe-data-shares \
--data-share-arn 'arn:aws:redshift:us-east-1:111122223333:datashare:abcd1234-1234-ab12-cd34-1a2b3c4d5e6f/federatedds' \
-
Aceitar uma unidade de compartilhamento de dados.
aws redshift associate-data-share-consumer \
--data-share-arn 'arn:aws:redshift:us-east-1:111122223333:datashare:abcd1234-1234-ab12-cd34-1a2b3c4d5e6f/federatedds' \
--consumer-arn 'arn:aws:glue:us-east-1:111122223333:catalog
-
Registre a unidade de compartilhamento de dados na conta do Lake Formation. Use a operação da API de RegisterResource para registrar a unidade de compartilhamento de dados no Lake Formation. DataShareArn
é o parâmetro de entrada para ResourceArn
.
Este é uma etapa obrigatória.
aws lakeformation register-resource \
--resource-arn 'arn:aws:redshift:us-east-1:111122223333:datashare:abcd1234-1234-ab12-cd34-1a2b3c4d5e6f/federatedds'
-
Crie um banco de dados.
Depois de aceitar um convite de unidade de compartilhamento de dados, você precisa criar um banco de dados que aponte para o banco de dados do Amazon Redshift associado à unidade de compartilhamento de dados. Você deve ser administrador de data lake para criar um banco de dados.
- Console
-
-
Selecione a unidade de compartilhamento de dados no painel Convites e selecione Definir informações do banco de dados.
-
Em Definir informações do banco de dados, insira um nome e um identificador exclusivos para a unidade de compartilhamento de dados. Você usa esse identificador para mapear a unidade de compartilhamento de dados internamente na hierarquia de metadados (dbName.schema.table).
-
Selecione Avançar para conceder permissões a outros usuários no banco de dados e nas tabelas compartilhados.
- AWS CLI
-
Use o código de exemplo a seguir para criar um banco de dados que aponta para o banco de dados do Amazon Redshift compartilhado com o Lake Formation por meio da AWS CLI.
aws glue create-database --cli-input-json \
'{
"CatalogId": "111122223333",
"DatabaseInput": {
"Name": "tahoedb",
"FederatedDatabase": {
"Identifier": "arn:aws:redshift:us-east-1:111122223333:datashare:abcd1234-1234-ab12-cd34-1a2b3c4d5e6f/federatedds",
"ConnectionName": "aws:redshift"
}
}
}'
-
Conceder permissões
Depois de criar o banco de dados, você pode conceder permissões a outros usuários em sua conta ou a Contas da AWS e organizações externas. Não será possível conceder permissões de gravação de dados (inserir e excluir) e permissão de metadados (alterar, eliminar e criar) no banco de dados federado que está associado a uma unidade de compartilhamento de dados do Amazon Redshift. Para obter mais informações sobre a concessão de permissões, consulte Gerenciando permissões do Lake Formation
Como administrador do data lake, você só pode exibir tabelas nos bancos de dados federados. Para executar qualquer outra ação, você precisa conceder a si mais permissões nessas tabelas.
- Console
-
-
Na tela Conceder permissões, selecione os usuários aos quais planeja conceder permissões.
-
Selecione Conceder.
- AWS CLI
-
Use os exemplos a seguir para conceder permissões de banco de dados e tabelas usando a AWS CLI:
aws lakeformation grant-permissions --input-cli-json file://input.json
{
"Principal": {
"DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/non-admin"
},
"Resource": {
"Database": {
"CatalogId": "111122223333",
"Name": "tahoedb"
}
},
"Permissions": [
"DESCRIBE"
],
"PermissionsWithGrantOption": [
]
}
aws lakeformation grant-permissions --input-cli-json file://input.json
{
"Principal": {
"DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/non-admin"
},
"Resource": {
"Table": {
"CatalogId": "111122223333",
"DatabaseName": "tahoedb",
"Name": "public.customer"
}
},
"Permissions": [
"SELECT"
],
"PermissionsWithGrantOption": [
"SELECT"
]
}