Redshift Spectrum e AWS Lake Formation
Este tópico descreve como usar o Redshift Spectrum com o Lake Formation. O Lake Formation é um serviço para compartilhar dados de analytics.
É possível usar o AWS Lake Formation para definir e impor de forma centralizada políticas de acesso no nível do banco de dados, da tabela e da coluna para os dados armazenados no Amazon S3. Depois que os dados forem registrados com um AWS Glue Data Catalog habilitado com o Lake Formation, será possível consultá-los usando vários serviços, incluindo o Redshift Spectrum.
O Lake Formation fornece a segurança e a governança do catálogo de dados. No Lake Formation, é possível conceder e revogar permissões para os objetos do catálogo de dados, como bancos de dados, tabelas, colunas e armazenamento subjacente do Amazon S3.
Importante
Você só pode usar o Redshift Spectrum com um catálogo de dados habilitado para Lake Formation nas regiões da AWS onde o Lake Formation está disponível. Para obter uma lista de regiões disponíveis, consulte Endpoints e cotas do AWS Lake Formation na Referência geral da AWS.
Usando o Redshift Spectrum com Lake Formation, você pode fazer o seguinte:
Use o Lake Formation como um local central para conceder e revogar permissões e políticas de controle de acesso em todos os dados do data lake. O Lake Formation fornece uma hierarquia de permissões para controlar o acesso aos bancos de dados e tabelas em um catálogo de dados. Para obter mais informações, consulte “Overview of Lake Formation permissions” (Visão geral das permissões do Lake Formation) no Guia do desenvolvedor do AWS Lake Formation.
Crie tabelas externas e execute consultas em dados no data lake. Antes que os usuários da conta possam executar consultas, um administrador da conta do data lake registra os caminhos existentes do Amazon S3 que contêm dados da fonte com o Lake Formation. O administrador também cria tabelas e concede permissões aos usuários. O acesso pode ser concedido em bancos de dados, tabelas ou colunas. O administrador pode usar filtros de dados no Lake Formation para conceder controle de acesso granular sobre seus dados confidenciais armazenados no Amazon S3. Para ter mais informações, consulte Usar filtros de dados para segurança em nível de linha e de célula.
Depois que os dados forem registrados no catálogo de dados, sempre que os usuários tentarem executar consultas, o Lake Formation verificará o acesso à tabela para essa entidade principal específica. O Lake Formation fornece credenciais temporárias para o Redshift Spectrum e a consulta é executada.
-
Execute consultas do Redshift Spectrum em um AWS Glue Data Catalog montado automaticamente usando credenciais do IAM obtidas com
GetCredentials
ouGetClusterCredentials
e gerencie as permissões do Lake Formation por usuário do banco de dados (IAMR:username ou IAM:username).
Quando você usa o Redshift Spectrum com um Catálogo de Dados habilitado para o Lake Formation, uma das seguintes opções deve estar em vigor:
Um perfil do IAM associado ao cluster que tem permissão para o Catálogo de Dados.
Uma identidade federada do IAM configurada para gerenciar o acesso a recursos externos. Para obter mais informações, consulte Usar uma identidade federada para gerenciar o acesso do Amazon Redshift aos recursos locais e às tabelas externas do Amazon Redshift Spectrum.
Importante
Não é possível encadear funções do IAM ao usar o Redshift Spectrum com um catálogo de dados habilitado para o Lake Formation.
Para saber mais sobre as etapas necessárias para configurar o AWS Lake Formation a ser usado com o Redshift Spectrum, consulte Tutorial: Creating a data lake from a JDBC source in Lake Formation no Guia do desenvolvedor do AWS Lake Formation. Especificamente, confira “Query the data in the data lake using Amazon Redshift Spectrum” (Consultar os dados no data lake usando o Amazon Redshift Spectrum) para obter detalhes sobre a integração com o Redshift Spectrum. Os dados e recursos da AWS usados neste tópico dependem das etapas anteriores do tutorial.
Usar filtros de dados para segurança em nível de linha e de célula
Você pode definir filtros de dados no AWS Lake Formation para controlar o acesso em nível de linha e célula de consultas do Redshift Spectrum aos dados definidos em seu catálogo de dados. Para configurar isso, execute as seguintes tarefas:
Crie um filtro de dados no Lake Formation com as seguintes informações:
Uma especificação de coluna com uma lista de colunas a serem incluídas ou excluídas dos resultados da consulta.
Uma expressão de filtro de linha que especifica as linhas a serem incluídas nos resultados da consulta.
Para obter mais informações sobre como criar um filtro de dados, consulte “Data filters in Lake Formation” (Filtros de dados no Lake Formation) no Guia do desenvolvedor do AWS Lake Formation.
Crie uma tabela externa no Amazon Redshift que faça referência a uma tabela em seu catálogo de dados habilitado para o Lake Formation. Para obter detalhes sobre como consultar uma tabela do Lake Formation usando o Redshift Spectrum, confira “Query the data in the data lake using Amazon Redshift Spectrum” (Consultar os dados no data lake usando o Amazon Redshift Spectrum) no Guia do desenvolvedor do AWS Lake Formation.
Depois que a tabela for definida no Amazon Redshift, você poderá consultar a tabela do Lake Formation e acessar somente as linhas e colunas permitidas pelo filtro de dados.
Para obter um guia detalhado sobre como configurar a segurança por linha e célula no Lake Formation, depois consultar usando o Redshift Spectrum, consulte Usar o Amazon Redshift Spectrum com políticas de segurança por linha e célula definidas no AWS Lake Formation