PDA

Ver la Versión Completa : Nombre del Usuario de PostgreSQL


PallyRS
06-09-2012, 20:35:09
Hola Foro:

Tengo 2 cuestiones que me son problemática, haber si me pueden ayudar.

La primera...

Estoy desarrollando una aplicación con Delphi 2007 contra un servidor PostgreSQL v9.1.5, la última versión estable que se ha lanzado.

En dicha aplicación me es necesario asignar recursos de la misma en dependencia de la clasificación que tenga cada cliente, para ello me haría falta saber quien es el cliente que se ha conectado.

No lo he logrado hacer, por que una vía es determinar que usuario de Windows se ha conectado, pero no es conveniente, pues la politica de la información es que otro usuario de la aplicación podría conectarse desde un determinado usuario y realizar, por ejemplo, alguna consulta al programa.

Me es necesario determinar cual es el usuario de PostgreSQL que se ha conectado, como podría yo determinar u obtener dicho nombre de usuario, identificación ó algo que sirva como identificador único.

Existe esta función -- Function: getpgusername()


Pero la verdad esque nó se como sacarle trigo, si se le puede sacar.

La segunda...

Una vez que se optenga ese identificador (preferiblemente nombre del usuario), ¿Cómo hago para cambiar la contraseña en el momento que el usuario lo desee? ¿Como puedo hacer esto desde mi programa?

Les agradecería que en cuanto tengan alguna de las 2 respuesta, propuesta ó simplemente alguna ayuda, háganmelo saber.

Gracias de antemano

movorack
07-09-2012, 00:15:21
Hola PallyRS

en la misma documentacion de PostgreSQL http://www.postgresql.org/docs/9.0/static/functions-info.html puedes encontrar funciones de información de sistema.

la que buscas creo que es user que es el equivalente a current_user

y para lo otro no es por ser quisquilloso pero debes abrir otro hilo. Te adelanto que en la misma documentación también está.

Saludos.

PallyRS
06-06-2014, 18:01:22
Hola movorack:

Sabes, nunca recordé el volver a entrar aquí y darte las gracias, pues la solución fue implementar en una sentencia SQL,el uso del procedure current_user.

Esa es exactamente la solución.

Gracias nuevamente (aunque super atrazadas)

Saludos