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á.
Solução de problemas do Lake Formation
Se você encontrar problemas ao trabalhar com o AWS Lake Formation, consulte os tópicos desta seção.
Tópicos
Solução de problemas gerais
Use as informações aqui para ajudá-lo a diagnosticar e corrigir vários problemas do Lake Formation.
Erro: permissões insuficientes do Lake Formation em <Amazon S3 location>
Foi feita uma tentativa de criar ou alterar um recurso do catálogo de dados sem permissões de localização de dados na localização do Amazon S3 apontada pelo recurso.
Se um banco de dados ou tabela do Data Catalog apontar para uma localização do Amazon S3, ao conceder as permissões do Lake Formation CREATE_TABLE
ou ALTER
, você também deverá conceder a permissão DATA_LOCATION_ACCESS
no local. Ao conceder permissões a contas ou organizações externas, é necessário incluir a opção de concessão.
Depois que essas permissões forem concedidas a uma conta externa, o administrador do data lake dessa conta deverá conceder as permissões às entidades principais (usuários ou funções) na conta. Ao conceder a DATA_LOCATION_ACCESS
permissão recebida de outra conta, você deve especificar a ID do catálogo (ID da AWS conta) da conta do proprietário. A conta do proprietário é a conta que registrou o local.
Para ter mais informações, consulte Controle de acesso a dados subjacente e Conceder permissões de localização de dados.
Erro: “Permissões de chave de criptografia insuficientes para GlueAPI”
Foi feita uma tentativa de conceder permissões ao Lake Formation sem as permissões AWS Identity and Access Management (IAM) na chave de AWS KMS criptografia para um catálogo de dados criptografado.
Minha consulta Amazon Athena ou do Amazon Redshift que usa manifestos está falhando
O Lake Formation não suporta consultas que usam manifestos.
Erro: "permissão(ões) do Lake Formation insuficiente(s): necessária a criação de tag no catálogo"
O usuário/função deve ser administrador do data lake.
Erro ao excluir administradores de data lake inválidos
Você deve excluir todos os administradores de data lake inválidos (IAMfunções excluídas que são definidas como administradores de data lake) simultaneamente. Se você tentar excluir separadamente administradores de data lake inválidos, o Lake Formation gerará um erro de entidade principal inválida.
Resolução de problemas de acesso entre contas
Use estas informações para ajudar a diagnosticar e corrigir problemas de acesso entre contas.
Tópicos
- Eu concedi uma permissão para várias contas do Lake Formation, mas o destinatário não consegue ver o recurso
- As entidades principais da conta do destinatário podem ver o recurso do catálogo de dados, mas não podem acessar os dados subjacentes
- Erro: “Falha na associação porque o chamador não foi autorizado” ao aceitar um convite de compartilhamento AWS RAM de recursos
- Erro: “não autorizado a conceder permissões para o recurso”
- Erro: “Acesso negado para recuperar informações AWS da organização”
- Erro: “organização <organization-ID> não encontrada”
- Erro: "permissões insuficientes do Lake Formation: combinação ilegal"
- ConcurrentModificationException em solicitações de concessão/revogação para contas externas
- Erro ao usar EMR a Amazon para acessar dados compartilhados por meio de contas cruzadas
Eu concedi uma permissão para várias contas do Lake Formation, mas o destinatário não consegue ver o recurso
-
O usuário na conta do destinatário é administrador do data lake? Somente administradores de data lake podem ver o recurso no momento do compartilhamento.
-
Você está compartilhando com uma conta externa à sua organização usando o método de recurso nomeado? Nesse caso, o administrador do data lake da conta do destinatário deve aceitar um convite de compartilhamento de recursos em AWS Resource Access Manager (AWS RAM).
Para obter mais informações, consulte Aceitando um convite de compartilhamento de recursos do AWS RAM.
-
Você está usando políticas de recursos em nível de conta (Catálogo de dados) no AWS Glue? Se sim, se você usar o método de recursos nomeados, deverá incluir uma declaração especial na política que autorize o compartilhamento AWS RAM de políticas em seu nome.
Para obter mais informações, consulte Gerenciando permissões entre contas usando ambos AWS Glue e Lake Formation.
-
Você tem as permissões AWS Identity and Access Management (IAM) necessárias para conceder acesso entre contas?
Para obter mais informações, consulte Pré-requisitos.
-
O recurso para o qual você concedeu permissões não deve ter nenhuma permissão do Lake Formation concedida ao grupo
IAMAllowedPrincipals
. -
Há uma declaração
deny
sobre o recurso na política em nível de conta?
As entidades principais da conta do destinatário podem ver o recurso do catálogo de dados, mas não podem acessar os dados subjacentes
Os diretores da conta do destinatário devem ter as permissões necessárias AWS Identity and Access Management (IAM). Para obter detalhes, consulte Como acessar os dados subjacentes de uma tabela compartilhada.
Erro: “Falha na associação porque o chamador não foi autorizado” ao aceitar um convite de compartilhamento AWS RAM de recursos
Depois de conceder acesso a um recurso em uma conta diferente, quando a conta receptora tenta aceitar o convite de compartilhamento de recursos, a ação falha.
$ aws ram get-resource-share-associations --association-type PRINCIPAL --resource-share-arns arn:aws:ram:
aws-region
:444444444444:resource-share/e1d1f4ba-xxxx-xxxx-xxxx-xxxxxxxx5d8d { "resourceShareAssociations": [ { "resourceShareArn": "arn:aws:ram:aws-region
:444444444444:resource-share/e1d1f4ba-xxxx-xxxx-xxxx-xxxxxxxx5d8d ", "resourceShareName": "LakeFormation-MMCC0XQBH3Y", "associatedEntity": "5815803XXXXX", "associationType": "PRINCIPAL", "status": "FAILED", "statusMessage": "Association failed because the caller was not authorized.", "creationTime": "2021-07-12T02:20:10.267000+00:00", "lastUpdatedTime": "2021-07-12T02:20:51.830000+00:00", "external": true } ] }
O erro ocorre porque o glue:PutResourcePolicy
é invocado por AWS Glue quando a conta receptora aceita o convite de compartilhamento de recursos. Para resolver o problema, permita a ação glue:PutResourcePolicy
pela função assumida usada pela conta do produtor/concedente.
Erro: “não autorizado a conceder permissões para o recurso”
Foi feita uma tentativa de conceder permissões entre contas em um banco de dados ou tabela pertencente a outra conta. Quando um banco de dados ou tabela é compartilhado com sua conta, como administrador do data lake, você pode conceder permissões sobre ele somente aos usuários da sua conta.
Erro: “Acesso negado para recuperar informações AWS da organização”
Sua conta é uma conta de gerenciamento da AWS Organizations e você não tem as permissões necessárias para recuperar informações da organização, como unidades organizacionais na conta.
Para obter mais informações, consulte Required permissions for cross-account grants.
Erro: “organização <organization-ID> não encontrada”
Foi feita uma tentativa de compartilhar um recurso com uma organização, mas o compartilhamento com organizações não está habilitado. Habilitar o compartilhamento de recursos com organizações.
Para obter mais informações, consulte Enable Sharing with AWS Organizations no Guia AWS RAM do Usuário.
Erro: "permissões insuficientes do Lake Formation: combinação ilegal"
Um usuário compartilhou um recurso do catálogo de dados enquanto as permissões do Lake Formation foram concedidas ao grupo IAMAllowedPrincipals
para o recurso. O usuário deve revogar todas as permissões do Lake Formation de IAMAllowedPrincipals
antes de compartilhar o recurso.
ConcurrentModificationException em solicitações de concessão/revogação para contas externas
Quando os usuários fazem várias solicitações simultâneas de concessão e/ou revogação de permissão para um diretor nas políticas de LF-Tag, o Lake Formation lança. ConcurrentModificationException Os usuários precisam capturar a exceção e tentar novamente a solicitação de concessão/revogação que falhou. Usando versões em lote das RevokePermissions
API operaçõesGrantPermissions
/- BatchGrantPermissionse BatchRevokePermissionsalivia esse problema até certo ponto, reduzindo o número de solicitações simultâneas de concessão/revogação.
Erro ao usar EMR a Amazon para acessar dados compartilhados por meio de contas cruzadas
Quando você usa EMR a Amazon para acessar dados compartilhados com você de outra conta, algumas bibliotecas do Spark tentarão chamar a Glue:GetUserDefinedFunctions
API operação. Como as versões 1 e 2 das permissões AWS RAM gerenciadas não oferecem suporte a essa ação, você recebe a seguinte mensagem de erro:
"ERROR: User: arn:aws:sts::012345678901:assumed-role/my-spark-role/i-06ab8c2b59299508a is not authorized to perform: glue:GetUserDefinedFunctions on resource: arn:exampleCatalogResource because no resource-based policy allows the glue:GetUserDefinedFunctions action"
Para resolver esse erro, o administrador do data lake que criou o compartilhamento de recursos deve atualizar as permissões AWS RAM gerenciadas anexadas ao compartilhamento de recursos. A versão 3 das permissões gerenciadas pelo AWS RAM
permite que as entidades principais executem a ação glue:GetUserDefinedFunctions
.
Se você criar um novo compartilhamento de recursos, o Lake Formation aplicará a versão mais recente da permissão AWS RAM gerenciada por padrão, e nenhuma ação será exigida por você. Para habilitar o acesso a dados entre contas para compartilhamentos de recursos existentes, você precisa atualizar as permissões AWS RAM gerenciadas para a versão 3.
Você pode ver as AWS RAM permissões atribuídas aos recursos compartilhados com você em AWS RAM. As permissões incluídas na versão 3 são estas:
Databases AWSRAMPermissionGlueDatabaseReadWriteForCatalog AWSRAMPermissionGlueDatabaseReadWrite Tables AWSRAMPermissionGlueTableReadWriteForCatalog AWSRAMPermissionGlueTableReadWriteForDatabase AllTables AWSRAMPermissionGlueAllTablesReadWriteForCatalog AWSRAMPermissionGlueAllTablesReadWriteForDatabase
Para atualizar a versão de permissões AWS RAM gerenciadas dos compartilhamentos de recursos existentes
Você (administrador do data lake) pode atualizar as permissões AWS RAM gerenciadas para uma versão mais recente seguindo as instruções no Guia do AWS RAM usuário ou revogar todas as permissões existentes para o tipo de recurso e concedê-las novamente. Se você revogar as permissões, AWS RAM excluirá o compartilhamento AWS RAM de recursos associado ao tipo de recurso. Quando você concede permissões novamente, AWS RAM cria novos compartilhamentos de recursos anexando a versão mais recente das permissões AWS RAM gerenciadas.
Solução de problemas em esquemas e fluxos de trabalho
Use as informações contidas aqui para ajudar a diagnosticar e corrigir problemas no esquema e no fluxo de trabalho.
Tópicos
- Meu plano falhou com “Usuário: <user- ARN > não está autorizado a executar: iam: PassRole on resource:<role- >” ARN
- Meu fluxo de trabalho falhou com “Usuário: <user- ARN > não está autorizado a executar: iam: PassRole on resource: <role- ARN >”
- Um crawler no meu fluxo de trabalho falhou com “o recurso não existe ou o solicitante não está autorizado a acessar as permissões solicitadas”
- Um rastreador no meu fluxo de trabalho falhou com “Ocorreu um erro (AccessDeniedException) ao chamar a CreateTable operação...”
Meu plano falhou com “Usuário: <user- ARN > não está autorizado a executar: iam: PassRole on resource:<role- >” ARN
Foi feita uma tentativa de criar um esquema por um usuário que não tem permissões suficientes para passar a função escolhida.
Atualize a IAM política do usuário para poder transmitir a função ou peça que ele escolha uma função diferente com as permissões de senha necessárias.
Para obter mais informações, consulte Referência de personas e IAM permissões do Lake Formation.
Meu fluxo de trabalho falhou com “Usuário: <user- ARN > não está autorizado a executar: iam: PassRole on resource: <role- ARN >”
A função que você especificou para o fluxo de trabalho não tinha uma política em linha que permitisse que a função se transmitisse sozinha.
Para obter mais informações, consulte (Opcional) Crie uma IAM função para fluxos de trabalho.
Um crawler no meu fluxo de trabalho falhou com “o recurso não existe ou o solicitante não está autorizado a acessar as permissões solicitadas”
Uma possível causa é que a função passada não tinha permissões suficientes para criar uma tabela no banco de dados de destino. Conceda à função a permissão CREATE_TABLE
no banco de dados.
Um rastreador no meu fluxo de trabalho falhou com “Ocorreu um erro (AccessDeniedException) ao chamar a CreateTable operação...”
Uma possível causa é que a função do fluxo de trabalho não tinha permissões de localização de dados no local de armazenamento de destino. Conceda permissões de localização de dados para a função.
Para obter mais informações, consulte DATA_LOCATION_ACCESS.