読者です 読者をやめる 読者になる 読者になる

【Rails】PG::ConnectionBad FATAL: Peer-Authentifizierung for Benutzer >>postgres<< fehlgeschlagen

Ruby Rails

 

Railsプロジェクトを作成(DBはpostgresql)しアクセスします。
環境:Vagrant


>rails new myapp -d postgresql

>cd myapp

>rails s -b 0.0.0.0

 

http://localhost:3000/ にアクセスするとエラー

PG::ConnectionBad
FATAL: Peer-Authentifizierung für Benutzer »postgres« fehlgeschlagen

 

 

<対策>

Peer認証が原因。
pg_hba.confの編集します。

 

>sudo su
>vi /var/lib/pgsql/9.5/data/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD
host all all peer ※変更前↓
host all all trust ※変更後

 

 

▼参考:Client Authentication

trust

無条件に接続を許可(パスワードを必要とせずに好きなPostgreSQLユーザとしてログイン可)

reject

無条件に接続を拒否

md5

MD5で暗号化されたパスワードをクライアントに要求

password

暗号化されていないパスワードを提供することを要求
パスワードはネットワーク上でクリアテキストで送信されるため信頼できないNWでは使用しない

gss

GSSAPIを使用して認証(TCP/IP接続でのみ使用)

sspi

SSPIを使用して認証(Windowsでのみ利用可能)

krb5

Kerberos V5を使用して認証(TCP/IP接続でのみ使用)

ident

クライアントのOSのユーザー名(クライアント上のidentサーバーに接続しOSからローカル接続する場合はTCP / IP接続用)を入手し要求されたデータベースのユーザー名と
一致するかどうかを確認

ldap

LDAPサーバーを使用して認証

cert

SSLクライアント証明書を使用して認証

pam

OSが提供するPAM(Pluggable Authentication Modules)サービスを使用して認証