Nesta página, apresentamos uma visão geral de como gerenciar usuários de banco de dados no AlloyDB para PostgreSQL e ativar a autenticação do Identity and Access Management (IAM) para esses usuários.
Como funciona o gerenciamento de usuários do banco de dados
O AlloyDB compartilha os mesmos conceitos de papéis, usuários e grupos do PostgreSQL. Para uma breve explicação, consulte as descrições a seguir:
Função:a designação de nível superior que descreve usuários e grupos de usuários do banco de dados em um cluster. As funções fornecem e restringem o acesso a objetos de banco de dados, como tabelas e funções.
Usuário:a função que recebe o atributo
LOGIN. Os usuários podem autenticar e fazer login em clusters de banco de dados do AlloyDB.Grupo:a função concedida a um ou mais usuários. O objetivo dos grupos é controlar os privilégios que muitos usuários têm como um todo.
Como funciona a autenticação de banco de dados
Para autenticar e fazer login nos clusters de banco de dados do AlloyDB, você tem duas opções:
- Autenticação integrada baseada em senha do PostgreSQL: para verificar a identidade do usuário, o AlloyDB compara as credenciais fornecidas com as senhas armazenadas e com hash. Os métodos compatíveis
incluem
md5,scram-sha-256epassword. - Autenticação do IAM: permite que os usuários do banco de dados se autentiquem usando o IAM. Isso oferece mais segurança e centraliza o controle de acesso em outros serviços doGoogle Cloud .
Papéis predefinidos
O PostgreSQL oferece papéis predefinidos com vários privilégios. Além desses papéis predefinidos, o AlloyDB oferece vários outros papéis predefinidos de usuário e grupo.
As tabelas a seguir listam os papéis e os privilégios de papel fornecidos pelo AlloyDB:
| Nome do papel | Privilégios |
|---|---|
alloydbsuperuser |
CREATEROLE, CREATEDB e LOGIN. |
postgres |
CREATEROLE, CREATEDB e LOGIN. |
alloydbimportexport |
CREATEROLE e CREATEDB. |
alloydbagent |
CREATEROLE e CREATEDB. |
alloydbreplica |
REPLICATION |
alloydbiamuser |
Por padrão, esse papel não tem privilégios. |
As subseções a seguir explicam os usos dessas funções.
Função no grupo alloydbsuperuser
alloydbsuperuser permite configurar o sistema de banco de dados e realizar outras
tarefas de superusuário. Esse papel tem os seguintes privilégios:
- Criar extensões que exigem privilégios de superusuário
- Criar gatilhos de eventos
- Criar usuários de replicação
- Criar publicações e assinaturas de replicação
Como um serviço gerenciado, o AlloyDB não permite conceder aos usuários a função superuser do PostgreSQL. Em vez disso, você pode conceder privilégios de superusuário do AlloyDB a qualquer usuário do banco de dados se conceder a ele o papel alloydbsuperuser.
Função do usuário postgres
A função de usuário postgres faz parte de alloydbsuperuser. Ao criar um cluster do AlloyDB, você pode atribuir uma senha a postgres para fazer login no sistema usando postgres e realizar tarefas, como criar bancos de dados ou outras funções.
Função do usuário alloydbimportexport
Ao criar um cluster do AlloyDB, o serviço
cria um usuário alloydbimportexport com o conjunto mínimo de privilégios necessários para
operações de importação e exportação.
É possível criar seus próprios usuários para realizar essas operações. Se você não criar um usuário alloydbimportexport personalizado, o sistema usará o usuário alloydbimportexport padrão para operações de importação e exportação.
alloydbimportexport é um usuário do sistema. Isso significa que não é possível usar diretamente o usuário alloydbimportexport para fazer login ou realizar outras operações nos bancos de dados PostgreSQL.
Função do usuário alloydbagent
A função alloydbagent é uma função interna do sistema AlloyDB. O serviço AlloyDB gerencia a função, e não é possível concedê-la manualmente a contas de banco de dados. Esse gerenciamento garante que o banco de dados e os recursos dele
funcionem corretamente.
Função do usuário alloydbreplica
A função alloydbreplica é uma função interna do sistema AlloyDB. O serviço AlloyDB gerencia a função, e não é possível concedê-la manualmente a contas de banco de dados. Esse gerenciamento garante que o banco de dados e os recursos dele
funcionem corretamente.
Função no grupo alloydbiamuser
Os usuários do banco de dados no grupo alloydbiamuser se autenticam com uma instância do AlloyDB usando o IAM, em vez da autenticação baseada em senha integrada do PostgreSQL.
O AlloyDB não permite conceder alloydbiamuser a usuários
usando o comando GRANT do PostgreSQL ou métodos semelhantes. Em vez disso, use as ferramentas administrativas do AlloyDB para criar e gerenciar usuários de banco de dados baseados no IAM. Para mais informações, consulte
Gerenciar a autenticação do IAM.
A seguir
Saiba como gerenciar papéis, usuários e grupos do PostgreSQL no AlloyDB usando a autenticação integrada.
Saiba como gerenciar a autenticação do IAM.