Pular para o conteúdo principal

Configurar o controle de acesso do Lakewatch

info

Visualização

O Lakewatch está na Pré-visualização privada. Para solicitar acesso, entre em contato com sua account Databricks.

A configuração de grupos, um service principal de execução e concessões do Unity Catalog é a forma recomendada de configurar o controle de acesso do Lakewatch para uma equipe de segurança. Este guia configura um único catálogo Lakewatch com quatro grupos que separam as tarefas de ingestão, autoria de detecção e analista sob privilégio mínimo. Um único usuário que já tem acesso aos dados subjacentes pode usar o Lakewatch sem essa configuração. Para escolher entre os modelos de usuário único e baseados em equipe, consulte Modelos de implantação.

As concessões usam lakewatch como catálogo e lakewatch.prod como esquema. Substitua-os pelos seus próprios nomes e substitua <sp> pelo applicationId da Service Principal de execução.

Configurações​

A configuração provisiona quatro grupos, um por função em uma equipe de segurança típica. Grupos são recomendados, mas opcionais. Você pode conceder os mesmos privilégios a qualquer principal do Unity Catalog.

Grupo

Função

lakewatch-admins

Administrar o Lakewatch: gerenciar recursos, configurações e acesso para outros.

lakewatch-data-engineers

Integre e mantenha fontes de dados e carregue dados em tabelas.

lakewatch-detection-engineers

Autore e ajuste as regras de detecção e revise o que elas produzem.

lakewatch-analysts

Gerencie a fila de alertas: leia os alertas, atualize o status e query os dados.

Grupo

Função

lakewatch-admins

Administrar o Lakewatch: gerenciar recursos, configurações e acesso para outros.

lakewatch-data-engineers

Integre e mantenha fontes de dados e carregue dados em tabelas.

lakewatch-detection-engineers

Autore e ajuste as regras de detecção e revise o que elas produzem.

lakewatch-analysts

Gerencie a fila de alertas: leia os alertas, atualize o status e query os dados.

Pré-requisitos​

  • Administrador account para o passo 1. Criar grupos, a Service Principal e a delegação de execução como é uma tarefa no nível account.
  • Administrador do metastore, ou CREATE CATALOG no metastore, para o passo 2. O administrador da account não concede isso.
  • Um SQL warehouse e CAN_MANAGE nele para o passo 4. O warehouse é o compute no qual o Lakewatch é executado.
  • Direitos de proprietário em qualquer local externo, conexão ou tabela de origem que você conceder na etapa 6.

Execute os passos 2, 3, 5 e 6 como SQL em um notebook ou no editor SQL. Os passos 1 e 4 são ações únicas no console da account e na IU do Workspace.

1. Criar grupos, o Service Principal e a delegação de execução​

As fontes de dados agendadas e as regras de detecção fazem execução como um Service Principal . Portanto, crie um e dê aos grupos que operam o Lakewatch o direito de execução de recursos como ele. No console da account:

  1. Vá para Gerenciamento de usuários > Grupos e crie os quatro grupos: lakewatch-admins, lakewatch-data-engineers, lakewatch-detection-engineers e lakewatch-analysts.
  2. Vá para Gestão de utilizadores > Service Principal e crie a entidade de serviço de execução como Lakewatch. Copie o seu applicationId (um UUID) para usar como <sp> nos passos seguintes.
  3. Na tab Permissões da Service Principal, atribua Gerente de Service Principal a lakewatch-admins.
  4. Na mesma tab, atribua Usuário do Service Principal a lakewatch-data-engineers e lakewatch-detection-engineers. Isso permite que os membros desses grupos criem recursos que estão em execução como Service Principal.

2. Criar o catálogo e o esquema​

Crie o catálogo e o esquema que detêm os seus recursos Lakewatch. Execute o seguinte:

SQL
CREATE CATALOG IF NOT EXISTS lakewatch;
CREATE SCHEMA IF NOT EXISTS lakewatch.prod;

3. Conceder acesso aos dados da service principal​

O service principal de execução precisa de leitura e gravação de dados no esquema. Para conceder seu acesso de linha de base, execução o seguinte:

SQL
GRANT USE CATALOG ON CATALOG lakewatch TO `<sp>`;
GRANT USE SCHEMA ON SCHEMA lakewatch.prod TO `<sp>`;
GRANT CREATE TABLE ON SCHEMA lakewatch.prod TO `<sp>`;
GRANT MODIFY ON SCHEMA lakewatch.prod TO `<sp>`;
GRANT SELECT ON SCHEMA lakewatch.prod TO `<sp>`;

4. Conceda ao service principal o Can use em um SQL warehouse​

A Service Principal executa SQL em um warehouse. Conceder a ela o uso de um warehouse é uma permissão de workspace, não uma concessão do Unity Catalog:

  1. Vá para SQL Warehouses e abra o warehouse que você deseja que o Lakewatch use.
  2. Nas suas Permissões , conceda Pode usar à Service Principal. Isso requer CAN_MANAGE no warehouse.

5. Conceder privilégios a cada grupo​

Conceda a cada grupo seus privilégios no catálogo. Como os privilégios são herdados na hierarquia do Unity Catalog, uma concessão no catálogo se aplica a todos os recursos do Lakewatch abaixo dele. Para saber o que cada privilégio permite, consulte Funções e capacidades.

Para conceder os privilégios de administrador, execução o seguinte:

SQL
GRANT USE CATALOG ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT USE SCHEMA ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT MANAGE ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT READ_METADATA ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT SELECT ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT MODIFY ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT CREATE_DATASOURCE ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT CREATE_RULE ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT CREATE_SECRET ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT READ_SECURITY_DATA ON CATALOG lakewatch TO `lakewatch-admins`;
GRANT UPDATE_SECURITY_DATA ON CATALOG lakewatch TO `lakewatch-admins`;

Para conceder privilégios ao engenheiro de dados, execução o seguinte:

SQL
GRANT USE CATALOG ON CATALOG lakewatch TO `lakewatch-data-engineers`;
GRANT USE SCHEMA ON CATALOG lakewatch TO `lakewatch-data-engineers`;
GRANT CREATE_DATASOURCE ON CATALOG lakewatch TO `lakewatch-data-engineers`;
GRANT CREATE_SECRET ON CATALOG lakewatch TO `lakewatch-data-engineers`;
GRANT SELECT ON CATALOG lakewatch TO `lakewatch-data-engineers`;
GRANT MODIFY ON CATALOG lakewatch TO `lakewatch-data-engineers`;
GRANT CREATE TABLE ON CATALOG lakewatch TO `lakewatch-data-engineers`;
GRANT CREATE SCHEMA ON CATALOG lakewatch TO `lakewatch-data-engineers`;

Para conceder privilégios ao engenheiro de detecção, execução o seguinte:

SQL
GRANT USE CATALOG ON CATALOG lakewatch TO `lakewatch-detection-engineers`;
GRANT USE SCHEMA ON CATALOG lakewatch TO `lakewatch-detection-engineers`;
GRANT CREATE_RULE ON CATALOG lakewatch TO `lakewatch-detection-engineers`;
GRANT READ_METADATA ON CATALOG lakewatch TO `lakewatch-detection-engineers`;
GRANT READ_SECURITY_DATA ON CATALOG lakewatch TO `lakewatch-detection-engineers`;
GRANT SELECT ON CATALOG lakewatch TO `lakewatch-detection-engineers`;

Para conceder privilégios ao analista, execute o seguinte:

SQL
GRANT USE CATALOG ON CATALOG lakewatch TO `lakewatch-analysts`;
GRANT USE SCHEMA ON CATALOG lakewatch TO `lakewatch-analysts`;
GRANT READ_SECURITY_DATA ON CATALOG lakewatch TO `lakewatch-analysts`;
GRANT UPDATE_SECURITY_DATA ON CATALOG lakewatch TO `lakewatch-analysts`;
GRANT SELECT ON CATALOG lakewatch TO `lakewatch-analysts`;
GRANT READ_METADATA ON CATALOG lakewatch TO `lakewatch-analysts`;

6. Conceder acesso às fontes (opcional)​

Conceda essas permissões apenas para as fontes que você usa. Cada uma delas exige que você seja proprietário do item protegido ao qual você concede permissão.

Para permitir que o service principal faça a leitura de um local externo, execute o seguinte:

SQL
GRANT READ FILES ON EXTERNAL LOCATION <external_location> TO `<sp>`;

Para permitir que o Service Principal use todas as conexões no metastore, execução o seguinte:

SQL
GRANT USE CONNECTION ON METASTORE TO `<sp>`;

Para permitir que o service principal leia uma tabela de origem existente, execute o seguinte:

SQL
GRANT USE CATALOG ON CATALOG <src_catalog> TO `<sp>`;
GRANT USE SCHEMA ON SCHEMA <src_catalog>.<src_schema> TO `<sp>`;
GRANT SELECT ON TABLE <src_catalog>.<src_schema>.<src_table> TO `<sp>`;

7. Verificar​

Confirme se as concessões foram aplicadas. Para listar as concessões no catálogo e esquema, faça a execução do seguinte:

SQL
SHOW GRANTS ON CATALOG lakewatch;
SHOW GRANTS ON SCHEMA lakewatch.prod;

Limitações​

  • A concessão de USE CONNECTION ON METASTORE permite que o service principal use todas as conexões no metastore, o que é mais amplo do que o privilégio mínimo. Use-o apenas em um metastore dedicado ao Lakewatch.

Relacionado​