BUG #15961: psql should be able to read password from stdin

From: PG Bug reporting form <noreply(at)postgresql(dot)org>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: rhpatrick(at)gmail(dot)com
Subject: BUG #15961: psql should be able to read password from stdin
Date: 2019-08-16 14:20:55
Message-ID: 15961-a17e673003b92f17@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 15961
Logged by: Robert Patrick
Email address: rhpatrick(at)gmail(dot)com
PostgreSQL version: 11.4
Operating system: Amazon Linux
Description:

I understand why psql does not include a mechanism to pass the password on
the command-line. Having worked with and built other similar applications
at Oracle, I tried to pipe the password into stdin of the psql command like
so:

echo P0stgr3s | psql --username=postgres

Unfortunately, psql ignores it and prompts me for the password.

My use case is that I am writing terraform scripts to standup Sonarqube in
AWS. After creating the AWS RDS PostgreSQL database, I need to be able to
create the sonarqube user and grant access to the sonarqube database that
was created with the RDS instance. I can work around this using the
PGPASSWORD environment variable but that seems to be deprecated. I don't
want to use the .pgpass solution since I don't want/need the postgres user's
credentials in my EC2 instance where the Sonarqube server will be running...

psql should really accept the value for the password prompt from stdin.

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message PG Bug reporting form 2019-08-16 23:24:05 BUG #15962: Cannot drop table that previously had a 'serial' column
Previous Message Ehrenreich, Sigrid 2019-08-16 13:34:39 RE: length of string containing blanks is 0, || behaves differently than concat on string of blanks