に以下を入力して、md5
ユーザーの認証を構成しました。foo
pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD
local all foo md5
psql
Linux ユーザーとして (を使用して)foo
接続しようとするpsql
と、パスワードが要求され、接続は成功します。ただし、psql
他の Linux ユーザーとして実行すると、次のエラーが表示されます。
psql: FATAL: password authentication failed for user "foo"
この動作の理由は何ですか? peer
これは、またはident
認証方法を使用する場合にのみ必要であるという印象を受けています。
編集:コマンドpsql -U foo -W
を使用して接続しています。コマンドの前に付けるsudo -u foo
と機能します。そうしないと、上記のエラーが発生します。元の質問を投稿する際にこれについて言及しなかったことをお詫びします。
編集2:
以下は、私のコメントからのすべての行をpg_hba.conf
順番に並べたものです。
# TYPE DATABASE USER ADDRESS METHOD
local all postgres peer
local all foo md5
local all all 127.0.0.1/32 md5
local all all ::1/128 md5