funções
As funções do Postgres controlam o acesso aos seus bancos de dados, esquemas, tabelas e outros objetos do banco de dados Postgres. Utilize a interface do usuário do Lakebase para criar e gerenciar funções para sua equipe.
Antes de trabalhar com funções, veja como se conectar ao seu banco de dados e autenticar usando tokens OAuth ou autenticação de senha nativa do Postgres.
Visão geral da função
Ao criar um projeto, uma função do Postgres é criada automaticamente para sua identidade do Databricks (por exemplo, user@databricks.com). Esta função é proprietária do banco de dados default databricks_postgres e é membro de databricks_superuser, o que lhe confere amplos privilégios para gerenciar objetos de banco de dados. Você pode criar funções adicionais na ramificação default do seu projeto ou em ramificações filhas.
O estado de função do Postgres é independente entre as ramificações. Ao criar uma ramificação, ela reflete as funções, bancos de dados, associações de funções e permissões do Postgres pai no momento da criação da ramificação. Após a ramificação, cada ramo evolui independentemente — funções e bancos de dados criados, permissões GRANT e REVOKE aplicadas e atributos de função ou associações modificadas em um ramo não têm efeito em nenhum outro ramo, incluindo o ramo pai. Não existe sincronização automática do estado das funções entre as filiais.
As permissões de projeto (PODE USAR, CAN MANAGE) funcionam de forma diferente: elas se aplicam a todo o projeto e a todas as suas ramificações. Consulte as permissões de gerenciamento do projeto.
Criar uma função
Use a caixa de diálogo Adicionar função no aplicativo Lakebase para criar uma função OAuth para uma identidade do Databricks ou uma função de senha nativa do Postgres.
Criar uma função OAuth
As funções OAuth estão vinculadas a uma identidade Databricks (usuário, entidade de serviço ou grupo) e autenticam-se usando tokens OAuth, que expiram após uma hora.
Ao criar uma ramificação filha, ela reflete a função da ramificação pai e o estado do banco de dados no momento da criação da ramificação. Depois disso, o papel de cada ramo evolui de forma independente. Para grupos, apenas grupos em nível workspacesão suportados.
Opcionalmente, conceda databricks_superuser (herda pg_read_all_data, pg_write_all_data e pg_monitor) ou atributos padrão do Postgres (CREATEDB, CREATEROLE, BYPASSRLS). Consulte os atributos de função na documentação do PostgreSQL.
Para criar uma função OAuth , navegue até Funções e Bancos de Dados > Adicionar função > tab OAuth , selecione uma identidade na dropdown Principal , configure as permissões e clique em Adicionar .

Você também pode criar funções OAuth usando a extensão databricks_auth com SQL ou a API REST. Consulte Criar funções do Postgres.
Criar uma função de senha
As funções com senha usam uma senha estática do Postgres e não estão vinculadas a uma identidade do Databricks. São úteis para aplicações ou ferramentas que requerem credenciais de banco de dados tradicionais.
O aplicativo Lakebase gera uma senha segura automaticamente. Copie-o imediatamente após a criação — ele não será exibido novamente. Se precisar de uma senha personalizada, defina-a posteriormente usando SQL. As mesmas permissões opcionais da função OAuth se aplicam (databricks_superuser, CREATEDB, CREATEROLE, BYPASSRLS). Os nomes de funções devem ser identificadores válidos do Postgres e não podem exceder 63 caracteres.
Para criar uma função de senha, acesse Funções e Bancos de Dados > Adicionar função > tab Senha , insira um nome para a função, configure as permissões, clique em Adicionar e copie a senha gerada.

ver funções
Para view todas as funções em uma filial, acesse a tab Funções e Bancos de Dados da sua filial no aplicativo Lakebase.

Gerenciar conexões de senha
Conexões por senha são desabilitadas por default para novos projetos de autoscale do Lakebase. Os projetos existentes não são afetados por este default.
Para ativar as conexões de senha, navegue até as Configurações do seu projeto > Conexões do banco de dados e marque Senha (funções nativas do Postgres) .
Para desativar as conexões por senha, navegue até as Configurações do seu projeto > Conexões com o banco de dados e desmarque Senha (Funções nativas do Postgres) . As funções de senha existentes não são excluídas, mas não podem autenticar enquanto as conexões de senha estiverem desativadas.
Você também pode controlar isso por endpoint de compute. Nas configurações de compute do seu branch, selecione **Editar** > **Conexões de banco de dados** e marque ou desmarque **Senha (funções do Postgres)**.

Esta é uma mudança de comportamento. Caso seus scripts de automação ou pipelines de CI criem novos projetos Lakebase Autoscaling e dependam de conexões de senha nativas do Postgres, será necessário agora habilitar explicitamente as conexões de senha após a criação do projeto.
Para ativar ou desativar conexões por senha programaticamente:
- CLI
- Python SDK
- curl
# Enable password connections
databricks postgres update-project projects/<project-id> spec.enable_pg_native_login \
--json '{"spec": {"enable_pg_native_login": true}}'
# Disable password connections
databricks postgres update-project projects/<project-id> spec.enable_pg_native_login \
--json '{"spec": {"enable_pg_native_login": false}}'
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.postgres import FieldMask, Project, ProjectSpec
w = WorkspaceClient()
# Enable password connections
w.postgres.update_project(
name="projects/<project-id>",
project=Project(spec=ProjectSpec(enable_pg_native_login=True)),
update_mask=FieldMask(field_mask=["spec.enable_pg_native_login"]),
).wait()
# Disable password connections
w.postgres.update_project(
name="projects/<project-id>",
project=Project(spec=ProjectSpec(enable_pg_native_login=False)),
update_mask=FieldMask(field_mask=["spec.enable_pg_native_login"]),
).wait()
# Enable password connections
curl -X PATCH "https://${DATABRICKS_HOST}/api/2.0/postgres/projects/<project-id>?update_mask=spec.enable_pg_native_login" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"spec": {"enable_pg_native_login": true}}' | jq
# Disable password connections
curl -X PATCH "https://${DATABRICKS_HOST}/api/2.0/postgres/projects/<project-id>?update_mask=spec.enable_pg_native_login" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"spec": {"enable_pg_native_login": false}}' | jq
Para autenticação, consulte Sobre autenticação.
Reset senha
Você pode redefinir a senha para funções de senha nativas do Postgres. As funções OAuth usam tokens OAuth para autenticação e não possuem senhas para redefinir.
Para redefinir a senha de uma função:
- Acesse a tab "Funções e Bancos de Dados" da sua filial no aplicativo Lakebase.
- Selecione Reset senha" no menu de funções e clique em Reset .
- Copie a nova senha gerada.
Redefina uma senha no aplicativo Lakebase. Redefina a senha para um valor gerado com entropia de 60 bits. Para definir sua própria senha, você pode redefini-la usando o editorSQL ou um cliente SQL como o psql com a seguinte sintaxe:
ALTER USER user_name WITH PASSWORD 'new_password';
A senha deve ter pelo menos 12 caracteres, com uma combinação de letras minúsculas, maiúsculas, números e símbolos. As senhas definidas pelo usuário são validadas no momento da criação para garantir entropia de 60 bits.
Obtenha novos tokens OAuth
Se você estiver usando a autenticação OAuth e precisar de novos tokens OAuth (tokens expiram após uma hora), você pode obter um na janela modal de Conexão:
- Acesse seu projeto no aplicativo Lakebase.
- Clique em Conectar para abrir a janela de conexão com o banco de dados.
- Selecione sua função OAuth na dropdown Funções .
- Clique em Copiar tokens OAuth para copiar novos tokens.
Saiba mais: Conecte-se com uma função OAuth | Sobre autenticação
Excluir uma função
Excluir uma função é uma ação permanente que não pode ser desfeita, e você não pode excluir uma função que seja proprietária de um banco de dados. O banco de dados deve ser excluído antes de excluir a função proprietária do banco de dados.
Para excluir uma função:
- Acesse a tab "Funções e Bancos de Dados" da sua filial no aplicativo Lakebase.
- Selecione "Excluir função" no menu de funções e confirme a exclusão.
O gerenciamento de funções de banco de dados requer a permissão de projeto CAN MANAGE ou CAN USE . Se você não tiver a permissão necessária, verá a mensagem "Permissões necessárias" ao tentar realizar uma ação relacionada à função. Contate um administrador workspace para solicitar acesso. Para mais informações, consulte gerenciar permissões do projeto.