Usuario de postgresql y permisos (RESPONDIDO)

Buenas!
Quería consultarles sobre la creación de usuario de postgres a configurar en el bases.ini. ¿Cuáles serían los GRANTs para ese usuario teniendo base 2.5.0? ¿serviría ese usuario en los procesos de actualización o debe usarse postgres?

He realizado una consulta similar para Pilagá http://foro.comunidad.siu.edu.ar/index.php?topic=15791.0 pero aún no ha sido respondido.

Desde ya muchas gracias!

Un abrazo para todos.

Hola Juan Cruz,
El usuario/rol en postgres debe tener permisos de para crear base de datos, debe ser un superusuario ahora para dejar predeterminado un usuario en la instalación te paso un ejemplo:


CREATE ROLE diaguita_prueba LOGIN
  ENCRYPTED PASSWORD 'XXXXXXXXXXXXXXXXXXXXXXxx'
  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;

En este caso es solo para acceso a la base y/modificacion de elementos de la base de datos, pero no tiene permisos para eliminar,crear una base o hacer backups.

Lo Recomendable es instalar o actualizar con el supersuario(postgres por defecto) de la base de datos y luego configurar otro con las características en el ejemplo que te di arriba con menos privilegios para lograr una mayor control y seguridad.

Saludos Diego.

Hola Diego.
Gracias por la respuesta.

Te cuento que al crear el usuario tal como indicás obtengo el siguiente error al querer ingresar al sistema:

[Thu Oct 25 12:21:59.799372 2018] [:error] [pid 11006] [client 10.114.59.254:62036] toba_error_db: <p><b>SQLSTATE:</b> db_42P01</p><p><b>CODIGO:</b> 7</p><p><b>MENSAJE:</b> ERROR:  relation "apex_puntos_montaje" does not exist\nLINE 8:    FROM apex_puntos_montaje \n                ^</p><p><b>SQL:</b> SELECT id,\r\n\t\t\t\t\t  etiqueta, \r\n\t\t\t\t\t  proyecto,\r\n\t\t\t\t\t  proyecto_ref,\r\n\t\t\t\t\t  descripcion,\r\n\t\t\t\t\t  path_pm,\r\n\t\t\t\t\t  tipo\r\n\t\t\tFROM apex_puntos_montaje \r\n\t\t\tWHERE proyecto = 'diaguita' \r\n\t\t\tORDER BY etiqueta, id;</p>\n\n[TRAZA]toba_error_db: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "apex_puntos_montaje" does not exist\nLINE 8:    FROM apex_puntos_montaje \n                ^ in /var/www/html/siu/SIU-Diaguita-2.5.0/vendor/siu-toba/framework/php/lib/db/toba_db.php:468\nStack trace:\n#0 /var/www/html/siu/SIU-Diaguita-2.5.0/vendor/siu-toba/framework/php/nucleo/lib/toba_proyecto_db.php(584): toba_db->consultar('SELECT id,\\r\\n\\t\\t\\t...')\n#1 /var/www/html/siu/SIU-Diaguita-2.5.0/vendor/siu-toba/framework/php/nucleo/lib/toba_proyecto.php(621): toba_proyecto_db::get_pms(''diaguita'')\n#2 /var/w...SIGUE...

Entiendo que es una cuestión de GRANTs… ¿qué me está faltando?
Aclaro que no tengo experiencia en este sentido.

Con Pilagá, me ha pasado que tuve que ir dando permisos sobre esquemas, secuencias, relaciones… pero todo iba surgiendo a medida que aparecen los errores.

Un abrazo!

Hola Juan Cruz,
Te comento que ese error sucede cuando tu usuario/rol no tiene los permisos para acceder a la tabla o esquema eso debes dárselo según corresponda, es algo artesanal.
Espero te sirva.

Es que exactamente eso es lo que les consulto. Al ser ustedes los “dueños del producto” quizás podían facilitar todas las sentencias de permisos.

En base a esto, creé el usuario “diaguita” y fui agregando los permisos conforme saltaron lo errores.

GRANT ALL PRIVILEGES ON DATABASE diaguita TO diaguita;
GRANT ALL ON SCHEMA diaguita TO diaguita;
GRANT ALL ON SCHEMA toba_diaguita_logs TO diaguita;
GRANT ALL ON SCHEMA toba_diaguita TO diaguita;
GRANT ALL ON SCHEMA diaguita_auditoria TO diaguita;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA diaguita TO diaguita;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA toba_diaguita_logs TO diaguita;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA toba_diaguita TO diaguita;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA diaguita_auditoria TO diaguita;
GRANT ALL ON ALL SEQUENCES IN SCHEMA diaguita TO diaguita;
GRANT ALL ON ALL SEQUENCES IN SCHEMA toba_diaguita TO diaguita;
GRANT ALL ON ALL SEQUENCES IN SCHEMA toba_diaguita_logs TO diaguita;

Espero les sirva.

Saludos!

Hola Juan,

Gracias por compartir la información de configuración y puesta a punto de los permisos de la BD, si llegan a realizar configuraciones adicionales no duden en compartir, lo vamos a tener en cuenta para incorporar recomendaciones en futuras versiones de la documentación oficial e incluso desde la aplicación.

Estamos en contacto.

Saludos!,
Fernando.