Por que não conseguir criar um objeto no banco de dados postgres como um usuário comum?
Sintoma
- Criar um esquema como um usuário comum
Comando: CREATE SCHEMA my_schema;
Erro: ERROR: permission denied for database postgres
- Criar uma tabela como um usuário comum
Comando: CREATE TABLE my_table(id int PRIMARY KEY,name VARCHAR(30));
ERROR: permission denied for schema public
Solução
Um usuário comum não pode criar objetos no banco de dados postgres, mas um usuário root pode.
Alterne para o usuário root e assegure-se de que o kernel do banco de dados permita o escalonamento de privilégios de root. Para mais detalhes, consulte Privilégios do usuário root.
Privilégios do usuário root
O RDS for PostgreSQL não fornece permissões de superusuário, mas fornece permissões para o usuário root.
Para criar objetos em um banco de dados RDS for PostgreSQL sem riscos de operação, escalone sua conta para privilégios de root quando necessário.
A tabela a seguir descreve a escalação de privilégio raiz em diferentes versões.
Versão |
Se a escalar privilégios |
Versão inicial para escalonamento de privilégios |
---|---|---|
Pgcore9 |
Não |
N/D |
Pgcore10 |
Não |
N/D |
Pgcore11 |
Sim |
11.11 |
Pgcore12 |
Sim |
12.6 |
Pgcore13 |
Sim |
13.2 |
Pgcore14 |
Sim |
14.4 |
Escalone para privilégios de root quando precisar:
- Criar um gatilho de evento.
- Criar um wrapper.
- Criar uma publicação de replicação lógica.
- Criar uma assinatura de replicação lógica.
- Consultar e manter origens de replicação.
- Criar um usuário de replicação.
- Criar um modelo de índice de texto completo e um analisador.
- Executar o comando vacuum em uma tabela do sistema.
- Executar o comando analyze em uma tabela do sistema.
- Criar um plug-in.
- Conceder uma permissão de objeto a um usuário.
Permissão do banco de dados Perguntas frequentes
- Por que o usuário raiz não tem as super permissões?
- Quais são as diferenças entre ManageAccess do RDS e permissões do DAS?
- Contas integradas do RDS for MySQL
- O RDS for MySQL suporta várias contas?
- Vários usuários podem fazer logon no DAS ao mesmo tempo? As contas serão bloqueadas se eu digitar senhas erradas várias vezes seguidas?
- Por que não conseguir criar um objeto no banco de dados postgres como um usuário comum?
- O que fazer se uma função falhar ao ser excluída de uma instância do RDS for PostgreSQL?
- Por que minha migração do RDS for PostgreSQL falhou?
- Como conceder a permissão REPLICATION a um usuário de banco de dados RDS for PostgreSQL?
- Por que um erro é relatado quando tentar alterar um proprietário de tabela do banco de dados RDS for PostgreSQL?
- Como as permissões Login Name das instâncias de BD primárias/em espera do RDS for SQL Server 2017 Enterprise Edition são sincronizadas com suas réplicas de leitura?
- Depois que uma conta de instância primária é excluída e recriada no RDS for SQL Server, as permissões serão sincronizadas automaticamente?
- Como exibir bancos de dados autorizados depois que um cliente local é conectado a uma instância de BD?
Feedback
Esta página foi útil?
Deixar um comentáriomore