sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Otorgar privilegios en tablas futuras en PostgreSQL?

Parece que la solución es alterar los privilegios predeterminados para backup usuario:

alter default privileges in schema public grant all on tables to backup;
alter default privileges in schema public grant all on sequences to backup;

Del comentario de Matt Schaffer:

Como advertencia, el valor predeterminado solo se aplica al usuario que ejecutó el alter declaración. Esto me confundió ya que estaba manejando la mayoría de mis declaraciones de permisos del usuario de postgres pero creando tablas desde un usuario de la aplicación. En resumen, es posible que necesite algo como esto dependiendo de su configuración:

ALTER DEFAULT PRIVILEGES FOR USER webapp IN SCHEMA public GRANT SELECT ON SEQUENCES TO backup;
ALTER DEFAULT PRIVILEGES FOR USER webapp IN SCHEMA public GRANT SELECT ON TABLES TO backup;