Uma vez precisei disso e crie essa função.. é só alterar para os comandos
que vc quiser. Espero ajudar:

CREATE OR REPLACE FUNCTION "public"."muda_dono" () RETURNS boolean AS
$body$
/* New function body */
declare
       tabela RECORD;
begin

     for tabela in (select tablename from pg_tables where schemaname =
'public') loop
         EXECUTE 'ALTER TABLE '||tabela.tablename||' OWNER TO mbs_convenio';
         EXECUTE 'GRANT ALL ON TABLE '||tabela.tablename||' TO
gmbs_convenio';

     end loop;

     for tabela in (select viewname from pg_views where schemaname =
'public' and viewname not like 'pg_%') loop
         EXECUTE 'ALTER TABLE '||tabela.viewname||' OWNER TO mbs_convenio';
         EXECUTE 'GRANT ALL ON TABLE '||tabela.viewname||' TO
gmbs_convenio';
     end loop;

     return true;

end;
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;

2010/1/7 Jorge Luiz <[email protected]>

> Prezados,
>
>   Alguem usa ou conhece alguma ferramenta para controle de acesso do
> postgresql que facilite o nosso trabalho de DBA?
>
>   Preciso implantar alguns controles de acesso a uma base, mas percebi
> que isso poderia ser mais facil com uma ferramenta ou com uma alteracao
> no postgresql.
>
>   EX: Falta algo do tipo.
>
>       Grant all [PRIVILEGES] to { nome_do_usuário | GROUP nome_do_grupo
> | PUBLIC }
>
>   O Fato de ter que especificar objeto por objeto gera muito trabalho
> postgresql.
>
>   Alguem pode ajudar?
>
>   Obrigado.
> --
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>



-- 
André Luiz Martins Pignata
Integral Convênios Odontológicos
Gerente de TI
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a