Funções do Postgres

Importante

O Lakebase Provisioned é a oferta original do Lakebase que utiliza cálculo computacional provisionado, permitindo-lhe escalar manualmente. Para regiões suportadas, consulte Disponibilidade de Regiões. Para a versão mais recente do Lakebase, com computação autoescalável, escalada até zero, ramificação e restauro instantâneo, consulte Lakebase Autoscaling.

Desde 12 de março de 2026, as novas instâncias do Lakebase são criadas enquanto projetos de Autoscaling. As instâncias Provisionadas existentes estão a ser atualizadas automaticamente para Autoscaling, a partir de junho de 2026. Para detalhes, veja Atualizar para Lakebase Autoscaling.

Esta página explica as funções do Postgres que você pode usar para controlar o acesso a uma instância de banco de dados do Azure Databricks Lakebase, incluindo seus privilégios, finalidade e configuração.

Funções pré-criadas

Depois que uma instância de banco de dados é criada, o Azure Databricks cria automaticamente uma função Postgres para o usuário que criou a instância.

Funções Description Privilégios herdados
<instance_owner_role> A identidade do Azure Databricks do criador da instância (por exemplo, myuser@databricks.com). Essa função pode fazer login e administrar a instância. Membro da databricks_superuser
databricks_superuser Uma função administrativa interna. Usado para configurar e gerenciar o acesso em toda a instância. Essa função recebe amplos privilégios e não deve ser usada em aplicativos automatizados. Herda de pg_read_all_data, pg_write_all_data, e pg_monitor.

Capacidades de função

Funções LOGIN CREATEDB CREATEROLE DESVIOS Outros privilégios
databricks_superuser SEM LOGIN
  • Todos os privilégios (com concessão) em todos os bancos de dados, esquemas, tabelas e sequências
  • EXECUTE sobre pg_stat_statements_reset()
<instance_owner_role>
  • Proprietário do banco de dados padrão databricks_postgres

Funções do sistema criadas pelo Azure Databricks

Além das funções databricks_superuser e admin, o Azure Databricks cria funções de sistema necessárias para serviços internos. Essas funções recebem os privilégios mínimos necessários para a funcionalidade. Modificá-los pode afetar o comportamento da instância.

Funções Propósito
databricks_control_plane Usado por componentes internos do Databricks para operações de gerenciamento
databricks_monitor Usado por serviços internos de coleta de métricas
databricks_writer_<dbid> Função por banco de dados usada para criar e gerenciar tabelas sincronizadas
databricks_reader_<dbid> Função por banco de dados usada para ler tabelas registradas no Unity Catalog
databricks_gateway Usado para conexões internas para serviços de serviço de dados gerenciados

Para saber como funções, privilégios e associações de função funcionam no Postgres, use os seguintes recursos na documentação do Postgres:

Criar funções Postgres para identidades Azure Databricks

É criada automaticamente uma função do Postgres para a identidade do Azure Databricks do proprietário da instância da base de dados. Para permitir que outras identidades do Azure Databricks façam login, crie papéis adicionais usando a UI ou as consultas PostgreSQL.

Observação

As ações de gerenciamento de função são regidas pelas permissões concedidas na instância do banco de dados. Certifique-se de ter o nível apropriado de acesso antes de tentar gerenciar funções.

IU

Os utilizadores com CAN USE permissão podem ver papéis existentes ou adicionar um papel para a sua própria identidade. Utilizadores com CAN MANAGE podem criar funções para outras identidades do Azure Databricks e remover qualquer função.

  1. Clique no ícone da App.Apps no canto superior direito e seleciona Lakebase Postgres.
  2. Clique em Provisionado para abrir a página de Instâncias Provisionadas.
  3. Selecione a instância da sua base de dados.
  4. Selecione a página Funções na barra lateral da aplicação Lakebase.
  5. Clica em Adicionar função.
  6. No menu pendente Principal, selecione um utilizador, grupo ou identidade de serviço.
  7. (Opcional) Selecione Funções do sistema para conceder databricks_superuser (acesso de leitura e escrita a todos os dados).
  8. (Opcional) Selecione Atributos do Sistema para conceder CREATEDB, CREATEROLE, ou BYPASSRLS.
  9. Clique em Adicionar.

PostgreSQL

Requisitos:

  • Tem de ter as permissões CREATE e CREATE ROLE na base de dados.
  • Deve autenticar-se como uma identidade do Azure Databricks. As sessões autenticadas nativas do Postgres não podem criar funções do Azure Databricks.
  • O seu token de autenticação tem de ser válido.

Utilize a função databricks_create_role da extensão databricks_auth:

CREATE EXTENSION IF NOT EXISTS databricks_auth;
-- Databricks user
SELECT databricks_create_role('myuser@databricks.com', 'USER');

-- Service principal (use application ID)
SELECT databricks_create_role('8c01cfb1-62c9-4a09-88a8-e195f4b01b08', 'SERVICE_PRINCIPAL');

-- Group
SELECT databricks_create_role('My Group 123', 'GROUP');

As novas funções apenas têm os privilégios atribuídos a PUBLIC. Use o Postgres GRANT e REVOKE comandos padrão para adicionar permissões.

Exibir funções de identidade do Azure Databricks

IU

Pode ver que utilizadores, grupos e identidades de serviço têm uma função do Postgres correspondente na página de Funções.

  1. Clique no ícone da App.Apps no canto superior direito e seleciona Lakebase Postgres.
  2. Clique em Provisionado para abrir a página de Instâncias Provisionadas.
  3. Selecione a instância da sua base de dados.
  4. Selecione a página Funções na barra lateral da aplicação Lakebase.

PostgreSQL

Utilize a função databricks_list_roles da extensão databricks_auth para listar todas as funções de identidade do Azure Databricks — utilizadores, entidades de serviço e grupos adicionados para serem autenticados como funções do Postgres.

CREATE EXTENSION IF NOT EXISTS databricks_auth;
SELECT * from databricks_list_roles;

Remover uma função no PostgreSQL

IU

  1. Clique no ícone da App.Apps no canto superior direito e seleciona Lakebase Postgres.
  2. Clique em Provisionado para abrir a página de Instâncias Provisionadas.
  3. Selecione a instância da sua base de dados.
  4. Selecione a página Funções na barra lateral da aplicação Lakebase.
  5. Para a função que queres retirar, clica no ícone do menu Kebab eclica em Largar.
  6. (Opcional) Ativa Reatribuir objetos possuídos para reatribuir objetos possuídos antes de largar.
  7. Clique em Confirmar.

PostgreSQL

Elimine uma função baseada em identidade do Azure Databricks tal como qualquer outra função do Postgres. Consulte a documentação do PostgreSQL sobre desistir de funções.