Funções de postgres

Importante

Lakebase Provisioned é a oferta original do Lakebase que usa a computação provisionada que você dimensiona manualmente. Para regiões com suporte, consulte a disponibilidade da região. Para obter a versão mais recente do Lakebase, com computação de dimensionamento automático, escala para zero, ramificação e restauração instantânea, consulte Lakebase Autoscaling.

Desde 12 de março de 2026, novas instâncias do Lakebase são criadas como projetos de dimensionamento automático. As instâncias provisionadas existentes estão sendo atualizadas automaticamente para o Dimensionamento Automático, a partir de junho de 2026. Para mais detalhes, consulte Fazer upgrade para o escalonamento automático do Lakebase.

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ção 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 do 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 privilégios amplos 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ção LOGIN CREATEDB CREATEROLE BYPASSRLS Outros privilégios
databricks_superuser NOLOGIN
  • Todos os privilégios (com concessão) em todos os bancos de dados, esquemas, tabelas e sequências
  • EXECUTE em 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 de databricks_superuser e administrador, 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ção Propósito
databricks_control_plane Usado por componentes internos do Databricks para operações de gerenciamento
databricks_monitor Usado pelos serviços de coleta de métricas internas
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 Catálogo do Unity
databricks_gateway Usado para conexões internas para serviços de gerenciamento de dados

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

Criar roles do Postgres para identidades do Azure Databricks

Uma função Postgres para a identidade Azure Databricks do proprietário da instância de banco de dados é criada automaticamente. Para permitir que outras identidades Azure Databricks façam logon, crie funções adicionais usando a interface do usuário ou consultas PostgreSQL.

Note

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

interface do usuário

Os usuários com CAN USE permissão podem exibir funções existentes ou adicionar uma função para sua própria identidade. Usuários com CAN MANAGE podem criar funções para outras identidades Azure Databricks e remover qualquer função.

  1. Clique no ícone aplicativo.Aplicativos no canto superior direito e selecione Lakebase Postgres.
  2. Clique em Provisionado para abrir a página Instâncias Provisionadas.
  3. Selecione sua instância de banco de dados.
  4. Selecione a página Funções na barra lateral do Aplicativo Lakebase.
  5. Clique em Adicionar função.
  6. No menu suspenso Principal, selecione um usuário, grupo ou entidade de serviço.
  7. (Opcional) Selecione Funções do Sistema para conceder databricks_superuser (acesso de leitura e gravação a todos os dados).
  8. (Opcional) Selecione atributos do sistema para conceder CREATEDB, CREATEROLEou BYPASSRLS.
  9. Clique em Adicionar.

PostgreSQL

Requisitos:

  • Você deve ter CREATE e CREATE ROLE permissões no banco de dados.
  • Você deve se autenticar como uma identidade do Azure Databricks. As sessões autenticadas do Postgres nativo não podem criar funções do Azure Databricks.
  • Seu token de autenticação deve ser válido.

Use 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');

Novas funções só têm privilégios concedidos a PUBLIC. Use os comandos padrão do Postgres GRANT e REVOKE para adicionar permissões.

Exibir funções de identidade do Azure Databricks

interface do usuário

Você pode ver quais usuários, grupos e entidades de serviço têm uma função Postgres correspondente na página Funções .

  1. Clique no ícone aplicativo.Aplicativos no canto superior direito e selecione Lakebase Postgres.
  2. Clique em Provisionado para abrir a página Instâncias Provisionadas.
  3. Selecione sua instância de banco de dados.
  4. Selecione a página Funções na barra lateral do Aplicativo Lakebase.

PostgreSQL

Use a função databricks_list_roles da extensão databricks_auth para listar todas as funções de identidade do Azure Databricks: usuários, entidades de serviço e grupos adicionados para autenticação como funções do Postgres.

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

Remover uma função postgres

interface do usuário

  1. Clique no ícone aplicativo.Aplicativos no canto superior direito e selecione Lakebase Postgres.
  2. Clique em Provisionado para abrir a página Instâncias Provisionadas.
  3. Selecione sua instância de banco de dados.
  4. Selecione a página Funções na barra lateral do Aplicativo Lakebase.
  5. Para a função que você deseja remover, clique no ícone de menu Kebab e clique em Soltar.
  6. (Opcional) Ative Reatribuir objetos atribuídos para reatribuir os objetos atribuídos antes de remover.
  7. Clique em Confirmar.

PostgreSQL

Remova uma função baseada em identidade do Azure Databricks da mesma forma que qualquer função do Postgres. Consulte a documentação do PostgreSQL sobre a remoção de funções.