Esta página apresenta 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 de 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: 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: função que recebe o atributo
LOGIN
. Os usuários podem autenticar e fazer login em clusters de banco de dados do AlloyDB.Grupo: 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 padrão do PostgreSQL baseada em senha: verifica a identidade do usuário comparando as credenciais fornecidas com as senhas armazenadas e com hash. Os métodos compatíveis incluem md5, scram-sha-256 e password.
- Autenticação do IAM: permite que os usuários do banco de dados se autentiquem usando o IAM para aumentar a segurança e o controle de acesso centralizado 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, essa função não tem privilégios. |
As subseções a seguir explicam a finalidade de alguns desses papéis.
Função no grupo alloydbsuperuser
O alloydbsuperuser
permite configurar o sistema de banco de dados e realizar outras tarefas de
superusuário. Essa função 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, é possível conceder a qualquer usuário do banco de dados
privilégios de superusuário do AlloyDB atribuindo a ele o papel
alloydbsuperuser
.
postgres
função do usuário
A função do usuário postgres
faz parte de alloydbsuperuser
. Ao criar um cluster do AlloyDB, você atribui uma senha a postgres
. Em seguida, faça login no sistema usando postgres
para realizar tarefas como criar bancos de dados ou funções adicionais.
alloydbimportexport
função do usuário
Ao criar um cluster do AlloyDB, o AlloyDB
cria 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.
alloydbagent
função do usuário
O papel alloydbagent
é um papel interno do sistema AlloyDB. Ele é gerenciado pelo serviço AlloyDB e não pode ser concedido manualmente a contas de banco de dados, o que garante o funcionamento adequado do banco de dados e dos recursos dele.
alloydbreplica
função do usuário
O papel alloydbreplica
é um papel interno do sistema AlloyDB. Ele é gerenciado pelo serviço AlloyDB e não pode ser concedido manualmente a contas de banco de dados, o que garante o funcionamento adequado do banco de dados e dos recursos dele.
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 padrão baseada em senha do PostgreSQL.
O AlloyDB não permite conceder alloydbiamuser
aos 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 padrão.
Saiba como gerenciar a autenticação do IAM.