パスワード認証 ユーザーのパスワードを暗号化する

PostgreSQL のパスワード認証で、パスワードを保管する方法は2種類あります。
データベース内にパスワードを保管する方法と、外部のファイルにパスワードを保管する方法です。

データベース内にパスワードを保管する場合、初期の設定では、パスワードは平文で保管され、スーパーユーザーなどの権限を持つユーザーにパスワードを読まれてしまいます。


/var/lib/pgsql/10/data/postgresql.conf の 以下のコメントを削除し、PostgreSQLを再起動することで、パスワードが暗号化されるようになります。

$ vi /var/lib/pgsql/10/data/postgresql.conf
# password_encryption = md5


PostgreSQLを再起動します。

# systemctl restart postgresql-10.service


パスワードが暗号化されたことを確認します。

# psql db名
db名=# SELECT * FROM pg_shadow;