Usar perfis vinculados ao serviço para o Lake Formation
O AWS Lake Formation usa um perfil do AWS Identity and Access Management (IAM) vinculado ao serviço. Um perfil vinculado ao serviço é um tipo exclusivo de perfil do IAM vinculado diretamente ao Lake Formation. O perfil vinculado ao serviço é predefinido pelo Lake Formation e inclui todas as permissões que o serviço exige para chamar outros serviços AWS em seu nome.
Um perfil vinculado ao serviço facilita a configuração do Lake Formation porque você não precisa criar um perfil e adicionar manualmente as permissões necessárias. O Lake Formation define as permissões de seu perfil vinculado ao serviço e, a menos que definido de outra forma, apenas o Lake Formation pode assumir suas funções. As permissões definidas incluem a política de confiança e a política de permissões, e essa política de permissões não pode ser anexada a nenhuma outra entidade do IAM.
Este perfil vinculado ao serviço confia nos seguintes serviços para assumir a função:
-
lakeformation.amazonaws.com
Quando você usa um perfil vinculado ao serviço na conta A para registrar uma localização do Amazon S3 que é de propriedade da conta B, a política de bucket do Amazon S3 (uma política baseada em recursos) na conta B deve conceder permissões de acesso ao perfil vinculado ao serviço na conta A.
nota
Os perfis vinculados ao serviço não são afetados pelas políticas de controle de serviços (SCPs).
Para ter mais informações, consulte Service control policies (SCPs) no Guia do usuário do AWS Organizations.
Permissões de perfil vinculado ao serviço para o Lake Formation
O Lake Formation usa o perfil vinculado ao serviço chamado AWSServiceRoleForLakeFormationDataAccess
. Essa função fornece um conjunto de permissões do Amazon Simple Storage Service (Amazon S3) que permitem que o serviço integrado Lake Formation (como o Amazon Athena) acesse locais registrados. Ao registrar um local de data lake, você deve fornecer um perfil que tenha as permissões de leitura/gravação necessárias do Amazon S3 nesse local. Em vez de criar um perfil com as permissões necessárias para o Amazon S3, você pode usar esse perfil vinculado ao serviço.
Na primeira vez que você nomeia o perfil vinculado ao serviço como o perfil com o qual registrar um caminho, o perfil vinculado ao serviço e uma nova política do IAM são criadas em seu nome. O Lake Formation adiciona o caminho à política embutida e o anexa ao perfil vinculado ao serviço. Quando você registra caminhos subsequentes com o perfil vinculado ao serviço, o Lake Formation adiciona o caminho à política existente.
Enquanto estiver conectado como administrador do data lake, registre um local do data lake. Em seguida, no console do IAM, pesquise o perfil AWSServiceRoleForLakeFormationDataAccess
e visualize as políticas anexadas.
Por exemplo, depois de registrar o local s3://my-kinesis-test/logs
, o Lake Formation cria a seguinte política embutida e a anexa a AWSServiceRoleForLakeFormationDataAccess
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationDataAccessPermissionsForS3", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:AbortMultipartUpload", "s3:ListMultipartUploadParts" ], "Resource": [ "arn:aws:s3:::
my-kinesis-test/logs/*
" ] }, { "Sid": "LakeFormationDataAccessPermissionsForS3ListBucket", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:ListBucketMultipartUploads" ], "Resource": [ "arn:aws:s3:::my-kinesis-test
" ] } ] }
Criar um perfil vinculado ao serviço para o Lake Formation
Não é necessário criar manualmente uma função vinculada ao serviço. Quando você registra uma localização do Amazon S3 com o Lake Formation no AWS Management Console, na AWS CLI ou na API da AWS, o Lake Formation cria o perfil vinculado ao serviço para você.
Importante
Essa função vinculada ao serviço pode aparecer em sua conta se você concluiu uma ação em outro serviço que usa os atributos compatíveis com essa função. Para saber mais, consulte Uma Nova Função Apareceu na minha Conta do IAM.
Se excluir essa função vinculada ao serviço e precisar criá-la novamente, você pode usar esse mesmo processo para recriar a função na sua conta. Quando você registra uma localização do Amazon S3 com o Lake Formation, o Lake Formation cria o perfil vinculado ao serviço para você outra vez.
Também é possível usar o console do IAM para criar um perfil vinculado ao serviço com o caso de uso do Lake Formation. Na AWS CLI ou na API do AWS, crie uma função vinculada ao serviço com o nome de serviço lakeformation.amazonaws.com
. Para obter mais informações, consulte Criar uma função vinculada ao serviço no Guia do usuário do IAM. Se você excluir essa função vinculada ao serviço, será possível usar esse mesmo processo para criar a função novamente.
Editar um perfil vinculado ao serviço para o Lake Formation
O Lake Formation não permite que você edite o perfil vinculado ao serviço AWSServiceRoleForLakeFormationDataAccess
. Depois que criar um perfil vinculado ao serviço, você não poderá alterar o nome do perfil, pois várias entidades podem fazer referência a ele. No entanto, será possível editar a descrição do perfil usando o IAM. Para obter mais informações, consulte Editar uma função vinculada a serviço no Guia do usuário do IAM.
Excluir um perfil vinculado ao serviço para o Lake Formation
Se você não precisar mais usar um atributo ou serviço que requer uma função vinculada a serviço, é recomendável excluí-la. Dessa forma, você não tem uma entidade não utilizada que não seja monitorada ativamente ou mantida. No entanto, você deve limpar os recursos de sua função vinculada ao serviço antes de excluí-la manualmente.
nota
Se o serviço Lake Formation estiver usando o perfil quando você tentar excluir os recursos, a exclusão poderá falhar. Se isso acontecer, espere alguns minutos e tente a operação novamente.
Para excluir os recursos do Lake Formation usados pelo Lake Formation
-
Se você usou o perfil vinculado ao serviço para registrar localizações do Amazon S3 com o Lake Formation, antes de excluí-lo, será necessário cancelar o registro da localização e registrá-la novamente usando um perfil personalizado.
Como excluir manualmente a função vinculada a serviço usando o IAM
Use o console do IAM, a AWS CLI ou a API da AWS para excluir a função vinculada ao serviço AWSServiceRoleForLakeFormationDataAccess
. Para obter mais informações, consulte Excluir uma função vinculada ao serviço no Guia do usuário do IAM.