Alisson Viegas | Acsiv Sistemas escreveu: > Pessoal, > Por que a cláusula CREATEUSER do ALTER USER define a conta como superuser? > Não deveriam ser coisas diferentes? Para não perder a compatibilidade com o CREATE USER anterior a implementação de roles no PostgreSQL. Desde a versão 8.1, o CREATE USER é um alias para CREATE ROLE. Para fazer o que você está querendo basta utilizar a opção CREATEROLE. A opcão CREATEUSER está obsoleto e será removida daqui algumas versões. Veja:
psql (8.4devel) Type "help" for help. euler=# create role foo createrole login; CREATE ROLE euler=# \c - foo psql (8.4devel) Você está conectado ao banco de dados "euler" agora como usuário "foo". euler=> create role bar login; CREATE ROLE euler=> select rolname,rolcreaterole,rolcreatedb from pg_roles; rolname | rolcreaterole | rolcreatedb ---------+---------------+------------- euler | t | t foo | t | f bar | f | f (3 registros) euler=> set log_min_messages to DEBUG1; -- disponível p/ superusuário ERRO: permissão negada ao definir parâmetro "log_min_messages" COMANDO: set log_min_messages to DEBUG1; ERRO: permissão negada ao definir parâmetro "log_min_messages" euler=> \c - euler psql (8.4devel) Você está conectado ao banco de dados "euler" agora como usuário "euler". euler=# set log_min_messages to DEBUG1; -- disponível p/ superusuário SET euler=# -- Euler Taveira de Oliveira http://www.timbira.com/ _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
