Como registrar um mecanismo de consulta de terceiros - AWS Lake Formation

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á.

Como registrar um mecanismo de consulta de terceiros

Antes que um mecanismo de consulta de terceiros possa usar as operações da API de integração de aplicativos, você precisa habilitar explicitamente as permissões para que o mecanismo de consulta chame as operações da API em seu nome. Isso é feito em algumas etapas:

  1. Você precisa especificar as AWS contas e as tags de sessão do IAM que exigem permissão para chamar as operações da API de integração de aplicativos por meio do AWS Lake Formation console, o AWS CLI ou a API/SDK.

  2. Quando o mecanismo de consulta de terceiros assume a função de execução em sua conta, o mecanismo de consulta deve anexar uma tag de sessão registrada no Lake Formation representando o mecanismo de terceiros. Lake Formation usa essa tag para validar se a solicitação for proveniente de um mecanismo aprovado. Para obter mais informações sobre tags de sessão, consulte Tags de sessão no Guia do usuário do IAM.

  3. Ao configurar um perfil de execução de mecanismo de consulta de terceiros, você deve ter o seguinte conjunto mínimo de permissões na política do IAM:

    { "Version": "2012-10-17", "Statement": {"Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:GetDatabase", "glue:GetDatabases", "glue:CreateDatabase", "glue:GetUserDefinedFunction", "glue:GetUserDefinedFunctions", "glue:GetPartition", "glue:GetPartitions" ], "Resource": "*" } }
  4. Configure uma política de confiança de perfil no perfil de execução do mecanismo de consulta para ter um controle de acesso preciso sobre qual par de chave-valor de tag de sessão pode ser anexado a esse perfil. No exemplo a seguir, esse perfil só pode ter a chave "LakeFormationAuthorizedCaller" da tag da sessão e o valor "engine1" da tag da sessão a serem anexados, e nenhum outro par de chave e valor da tag da sessão é permitido.

    { "Sid": "AllowPassSessionTags", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/query-execution-role" }, "Action": "sts:TagSession", "Condition": { "StringLike": { "aws:RequestTag/LakeFormationAuthorizedCaller": "engine1" } } }

Quando LakeFormationAuthorizedCaller chama a operação STS: AssumeRole API para buscar credenciais para o mecanismo de consulta usar, a tag da sessão deve ser incluída na AssumeRole solicitação. A credencial temporária retornada pode ser usada para fazer Lake Formation solicitações de API de integração de aplicativos.

Lake Formation As operações da API de integração de aplicativos exigem que o responsável pela chamada seja uma função do IAM. A função do IAM deve incluir uma tag de sessão com um valor predeterminado que tenha sido registrado com Lake Formation. Essa tag permite Lake Formation para verificar se a função usada para chamar as operações da API de integração de aplicativos tem permissão para fazer isso.