PostgreSQLはマルチユーザで利用することができるデータベース。
外部からネットワーク経由での接続もでき、接続時には認証が必要となる。
PostgreSQLでの接続認証の設定は次のファイルに記述されている:
/var/lib/pgsql/data/pg_hba.conf
pg_hba.confの例:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# local is for Unix domain socket connections only
local all all ident
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
ここで各項目の設定は左から順に次のようになる。
・接続方法(TYPE)
クライアントがどのようにPostgreSQLに接続するかを指定する:
local PostgreSQLが実行されているホストと同じホストからの接続
host 外部からのTCP/IPを使った接続
hostssl 外部からのSSLを使った接続
・データベース(DATABASE)
接続認証の対象となるデータベースを指定する。
allと記述するとすべてのデータベースが対象となる。
・ユーザ(USER)
接続認証の対象となるユーザを指定する。
allと記述するとすべてのユーザが対象となる。
・認証方法(METHOD)
認証方式を指定する。
trust 認証なしに接続
reject 接続拒否
md5 MD5パスワード認証
password 平文パスワード認証
gss GSSAPI認証
sspi SSPI(WIndowsのみ)
krb5 Kerberos V5認証
ident IDENT認証
ldap LDAP認証
radius RADIUS認証
cert SSLクライアント証明書認証
pam PAM認証