Olá pessoal segue como eu fiz...
CREATE ROLE desenvolvimento ENCRYPTED PASSWORD 'pass';
ALTER Role desenvolvimento NOSUPERUSER;
ALTER ROLE desenvolvimento LOGIN;
ALTER ROLE desenvolvimento SET search_path='public';
REVOKE ALL ON SCHEMA public FROM desenvolvimento;
-- Aqui eu gerei todos os selects para cada banco
select 'GRANT SELECT ON '|| relname || ' '||'TO desenvolvimento ;' from
pg_stat_all_tables where schemaname in ('public')
Obs: Esse usuario consegue criar uma tabela mas nao consegue excluir..
Emerson Martins
DBA Jr
Em 5 de junho de 2012 11:38, Edson neto <[email protected]> escreveu:
>
>
> Em 5 de junho de 2012 11:23, Emerson Martins
> <[email protected]>escreveu:
>
> Então pessoal fiz o seguinte:
>>
>> CREATE ROLE desenvolvimento LOGIN ENCRYPTED PASSWORD 'teste';
>>
>> Mas acessando via pgadmin percebi que o usuario estar tendo permissao até
>> de criar banco...Nao entendi
>> Meu postgres é 8.4.6.
>>
>>
> Isso é bem estranho, pois na documentação diz que quando não especificado
> o default é nocreatedb [1]
> Uma pratica que facilita o gerenciamento das roles é criar uma role
> container e executar os grants para essa role.
> Quando voce for criar as roles que irão se conectar na base você pode
> dizer que essa role herda as permissões da sua role container. Assim vc não
> precisa dar os grants para todas as suas roles qdo elas tem as mesmas
> permissões.
>
>
> [1]http://www.postgresql.org/docs/8.4/static/sql-createrole.html
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral