Para ambientes que utilizam o PostgreSQL, após a criação de um usuário no SGBD, pode-se escolher entre utilizar o schema public ou utilizar um schema próprio.
Caso seja escolhido utilizar um schema próprio, deve-se seguir os passos:
Criar o schema, com o comando:
CREATE SCHEMA myschema AUTHORIZATION postgres; |
onde myschema é o schema que será criado e postgres é o usuário com permissão de DBA que será owner do schema.
Dar GRANT ALL no schema para o usuário, com o comando:
GRANT ALL ON SCHEMA myschema TO "user"; |
onde myschema é o schema criado e user é o usuário criado.
Dizer que o usuário vai utilizar o schema criado, com o comando:
ALTER ROLE "user" IN DATABASE mydb SET search_path TO 'myschema'; |
onde mydb é o database que o usuário irá usar e myschema o schema criado.
Para pemitir que a finalização de uma conexão com instrução em execução no banco de dados através do DBAccess Monitor, é necessário liberar o direito de execução da função pg_kill_connection()
GRANT EXECUTE ON FUNCTION dbo.pg_kill_connection(pid integer) TO "user"; |
Deve-se notar que os objetos no PostgreSQL (tabelas, views, procedures etc) são criados em cada schema, logo, se mais de um usuário precisar acessar os mesmos dados, eles devem usar o mesmo schema. |