funcion para cambiar clave de un usuario SOLUCIONADO

From: suso <jlcubas(at)terra(dot)es>
To: Julio Cesar Rodriguez Dominguez <jurasec(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: funcion para cambiar clave de un usuario SOLUCIONADO
Date: 2009-09-15 23:06:33
Message-ID: 4AB01DF9.3020008@terra.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Aclaración, no funciona desde PGADMIN, pero SÍ desde código(cuando llamo a la función)...
Aprovechando este hilo, de esta manera, se puede acceder a comandos y demás de psql como pg_dump
y este tipo de cosas?.

Si es así, hay que tener algo en cuenta?.

Muchas gracias por la ayuda.

Un saludo
Suso

>
>
> El 15 de septiembre de 2009 16:11, suso <jlcubas(at)terra(dot)es
> <mailto:jlcubas(at)terra(dot)es>> escribió:
>
> Hola de nuevo, tenngo esta función para intentar cambiar el pass del
> usuario,pero me da error al intentar ejecutarla desde el mismo
> pgadmin, está mal escrita..
>
> El error me lo da en la línea del ALTER ROLE.
>
> CREATE OR REPLACE FUNCTION cambiar(clave character varying)
> RETURNS boolean AS
> $BODY$
> DECLARE
> nombre varchar;
> BEGIN
> nombre = current_user;
> ALTER ROLE nombre WITH PASSWORD clave;
> RETURN true;
> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE
>
> He buscado info en el manual de postgres, en internet, y
> "supuestamente" esta bien puesto, pero no es así, por qué, qué estoy
> haciendo mal?.
>
> Muchas gracias
> Un saludo
> Suso
>
>
> Imagino que el error que te marca es que no encuentra el role nombre.
> Para hacer esto tendrias que armar la sentencia del alter role con execute.
>
> CREATE OR REPLACE FUNCTION cambiar(clave character varying)
> RETURNS boolean AS
> $BODY$
> DECLARE
> --nombre varchar;
> BEGIN
> --nombre = current_user;
> execute 'ALTER ROLE '||current_user ||' WITH PASSWORD
> '''||clave||'''';
> RETURN true;
> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE;
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Espartano 2009-09-15 23:53:47 Re: Funciones en C ???De nuevo...
Previous Message Julio Cesar Rodriguez Dominguez 2009-09-15 22:39:01 Re: Consultas al catalogo de 8.3 y 8.4