Olaa... Tenho a intenção de criar um usuário que irá realizar a conexão com o banco quando eu criar minha aplicação, porque não é seguro realizar tal tarefa com o 'postgres' ou outro superusuário qualquer. Quero dar somente permissão de SELECT, UPDATE, DELETE ao usuário que irá acessar o banco, para tal realizei os seguintes procedimentos, conforme mostrado abaixo: CREATE DATABASE controle;
CREATE USER acesso_banco WITH ENCRYPTED PASSWORD '123456';
CREATE SCHEMA ocorrencia AUTHORIZATION acesso_banco;
CREATE SEQUENCE ocorrencia.ident_seq;
CREATE TABLE ocorrencia.relato(
id INTEGER NOT NULL PRIMARY KEY DEFAULT NEXTVAL('ocorrencia.id_seq'),
nome VARCHAR(50) NOT NULL );
GRANT INSERT,DELETE,UPDATE on ocorrencia.relato to acesso_banco Mas mesmo depois de eu ter dado o GRANT permitindo somente o INSERT, DELETE, UPDATE eu consigo criar tabelas, dropar tabelas, etc.Como permitir somente ao usuário acesso_banco somente realizar INSERT, DELETE, UPDATE nas tabelas desse schema, não permitindo ao mesmo criar, deletar ou outra operação nas tabelas desse schema ?? Desde já, agradeço.