
Estoy configurando un nuevo servidor de base de datos que pretendo utilizar como servidor para muchos servicios. Por lo general, cada uno de estos servicios solo se preocupa por una única base de datos en el sistema, por lo que me gustaría aislar las cuentas con las que se conecta cada servicio para poder acceder solo a esa base de datos. Las aplicaciones de servicio administran su propio esquema, por lo que quiero otorgarles privilegios de administrador para su base de datos, pero no deberían poder tocar nada más.
¿Hay alguna manera de configurar esto en postgres?
Esta pregunta en ServerFaultsugiere un método para otorgar privilegios a un usuario a nivel de todo el esquema; sin embargo, esto no funciona para bases de datos ( Alter Default Privileges In Database xx
me da un error de sintaxis Database
).
Respuesta1
Encontré la respuesta casi tan pronto como pregunté. El comando mágico que estaba buscando es:
Alter Database xxx Owner To user_xxx;
Esto está documentado en el Alter Database
manual de comando:
https://www.postgresql.org/docs/current/sql-alterdatabase.html