On Fri, Feb 03, 2006 at 15:48:35 -0800,
David Lutterkort <dlutter@redhat.com> wrote:
> Hi,
>
> I want to run some sql scripts through psql from a process that runs as
> root. Since I have no reason to trust the sql scripts, I want to run
> them in psql as a specific database user that doesn't have a
> corresponding login account, i.e. I want to do something like
>
> [start as root]
> su - postgres
> psql DBNAME DBUSER < script.sql
>
> or
> [start as root]
> su - postgres
> psql
> \connect DBNAME DBUSER
> \i script.sql
>
> The problem is that I haven't been able to do this without being
> prompted for a password. Is this possible, i.e. is there a way to go
> from a superuser (postgres) to a less privileged user without having to
> supply the password ?
You could use ident authentication and let the OS 'postgres' user connect
as any postgres user.