Funções do Postgres
O provisionamento Lakebase é a oferta original Lakebase que usa compute de provisionamento que você escala manualmente. Para regiões compatíveis, consulte Disponibilidade por região. Para obter a versão mais recente do Lakebase, com compute, redução de recursos a zero, ramificação e restauração instantânea, consulte a documentação sobre escalonamento automáticoLakebase.
Novas instâncias do Lakebase serão criadas como projetos de escalonamento automático. O lançamento começará em 12 de março de 2026. Para mais detalhes, consulte dimensionamento automático por default.
Esta página explica as funções do Postgres que o senhor pode usar para controlar o acesso a uma instância do banco de dados do 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 Databricks cria automaticamente uma função Postgres para o usuário que criou a instância.
Função | Descrição | Privilégios herdados |
|---|---|---|
| A identidade Databricks do criador da instância (por exemplo, | Membro do |
| 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 |
Capacidades da função
Função | LOGIN | CRIADOB | CREATEROLE | IGNORAR RLS | Outros privilégios |
|---|---|---|---|---|---|
| NOLOGIN | — | — | — |
|
| ✅ | ✅ | ✅ | ✅ |
|
Funções do sistema criadas pela Databricks
Além das funções databricks_superuser e admin, o site Databricks cria funções de sistema necessárias para o serviço interno. 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 |
|---|---|
| Usado por componentes internos do Databricks para operações de gerenciamento |
| Utilizado pelo serviço de coleta de métricas internas |
| Função por banco de dados usada para criar e gerenciar tabelas sincronizadas |
| Função por banco de dados usada para ler tabelas registradas no Unity Catalog |
| Usado para conexões internas para gerenciar dados que atendem ao serviço |
Para saber como funcionam as funções, os privilégios e as associações de funções no Postgres, use o recurso a seguir na documentação do Postgres:
Criar funções do Postgres para identidades do Databricks
Uma função do Postgres para a identidade do proprietário da instância do banco de dados no Databricks é criada automaticamente. Para permitir que outras identidades Databricks façam log in, crie funções adicionais usando a interface do usuário ou consultas PostgreSQL .
As ações de gerenciamento de funções são regidas pelas permissões concedidas na instância do banco de dados. Certifique-se de ter o nível de acesso apropriado antes de tentar gerenciar funções.
- UI
- PostgreSQL
Usuários com permissão CAN USE podem view 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 do Databricks e remover qualquer função.
- Clique
Acesse os aplicativos no canto superior direito e selecione Lakebase Postgres .
- Clique em provisionamento para abrir a página de instâncias de provisionamento .
- Selecione sua instância de banco de dados.
- Selecione a página Funções na barra lateral do aplicativo Lakebase.
- Clique em Adicionar função .
- No menu suspenso Principal , selecione um usuário, grupo ou entidade de serviço.
- (Opcional) Selecione as funções do sistema para conceder
databricks_superuser(acesso de leitura e gravação a todos os dados). - (Opcional) Selecione os atributos do sistema para conceder
CREATEDB,CREATEROLEouBYPASSRLS. - Clique em Adicionar .
Requisitos:
- Você deve ter permissões
CREATEeCREATE ROLEno banco de dados. - Você precisa se autenticar com uma identidade Databricks. Sessões nativas do Postgres autenticadas não podem criar funções do Databricks.
- Seus tokens de autenticação devem ser válidos.
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');
As 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.
Visualizar funções de identidade Databricks
- UI
- PostgreSQL
Na página Funções , você pode ver quais usuários, grupos e entidades de serviço possuem uma função correspondente no Postgres.
- Clique
Acesse os aplicativos no canto superior direito e selecione Lakebase Postgres .
- Clique em provisionamento para abrir a página de instâncias de provisionamento .
- Selecione sua instância de banco de dados.
- Selecione a página Funções na barra lateral do aplicativo Lakebase.
Use a função databricks_list_roles da extensão databricks_auth para listar todas as funções de identidade Databricks — usuários, entidades de serviço e grupos adicionados para autenticar como funções do Postgres.
CREATE EXTENSION IF NOT EXISTS databricks_auth;
SELECT * from databricks_list_roles;
Remover uma função do Postgres
- UI
- PostgreSQL
- Clique
Acesse os aplicativos no canto superior direito e selecione Lakebase Postgres .
- Clique em provisionamento para abrir a página de instâncias de provisionamento .
- Selecione sua instância de banco de dados.
- Selecione a página Funções na barra lateral do aplicativo Lakebase.
- Para a função que deseja remover, clique
e clique em Soltar .
- (Opcional) Ative a opção "Reatribuir objetos pertencentes" para reatribuir os objetos que você possui antes de soltá-los.
- Clique em Confirmar .
Crie uma função baseada em identidade do Databricks da mesma forma que cria qualquer função do Postgres. Consulte a documentação do PostgreSQL sobre como remover funções (roles).