Pgpool-II 4.1.1 文書 | |||
---|---|---|---|
前のページ | 上に戻る | 第 6章クライアント認証 | 次のページ |
以下の小節では、認証方式について詳細に説明します。
trust認証が指定されるとPgpool-IIは、サーバに接続できる全ての人に対してその人が指定する任意のデータベースユーザ名としてのアクセス権限が付与されていると想定します
この認証方法はMD-5ハッシュ化されたパスワードがクライアントから送信されるパスワードベースの認証方法です。 Pgpool-IIはPostgreSQLデータベースユーザパスワードを見ることができず、クライアントプリケーションはMD5ハッシュ化されたパスワードを送るのみです。 そのため、Pgpool-IIのmd5認証はpool_passwd認証ファイルを使ってサポートしています。
注意: Pgpool-IIをrawモードで使用している場合、あるいはバックエンドが1つしかない場合は、pool_passwdを設定する必要はありません。
md5認証を使用するには、pool_passwd認証ファイルに平文、md5またはAES暗号化形式のいずれかのユーザのパスワード が含まれている必要があります。
pool_passwdファイルは以下の形式の行を含みます。
"username:plain_text_passwd"
"username:encrypted_passwd"
以下がmd5認証を有効にする手順です。
1. データベースのOSユーザとしてログインし、"pg_md5 --md5auth --username=ユーザ名 パスワード" を実行します。 pool_passwdがまだ存在していなかった場合は、pg_md5コマンドが自動的にこれを生成します。
注意: ユーザ名とパスワードは、PostgreSQLに登録したものと完全に同じでなければなりません。
2. pool_hba.confにmd5認証のエントリを作成します。 詳細については項6.1を参照してください。
3. (もちろんpool_passwdとPostgreSQLの両方で)md5パスワードを変更したら、Pgpool-II設定の再読み込みを実行してください。
SCRAMとも呼ばれるこの認証方式は、信頼できない接続におけるパスワードの盗聴を防ぐチャレンジレスポンス認証です。 Pgpool-IIは、PostgreSQLデータベースユーザのパスワードの可視性を持たないため、SCRAM認証はpool_passwd認証ファイルを使用してサポートされています。
SCRAM認証を使用する場合、pool_passwd認証ファイルは平文もしくはAES暗号化ファーマットのユーザパスワードを含んでる必要があります。
"username:plain_text_passwd"
"username:AES_encrypted_passwd"
注意: pool_passwdファイル内のmd5形式のユーザパスワードはSCRAM認証に使用できません。
以下がscram-sha-256認証を有効にする手順です。
1- 平文またはAES暗号化フォーマットのデータベースユーザとパスワードのpool_passwdファイルエントリを作成します。 Pgpool-II付属のpg_encコマンドでpool_passwdファイル内にAES暗号化パスワードエントリを作成することができます。
注意: ユーザ名とパスワードはPostgreSQLサーバに登録されているものと一致している必要があります。
2- pool_hba.confに適切なscram-sha-256エントリを追加します。 詳細は項6.1を参照してください。
3- (もちろんpool_passwdとPostgreSQLの両方で)SCRAMパスワードを変更したら、Pgpool-IIの設定の再読み込みを実行してください。
この認証方式は認証を実施するためにSSLクライアント証明書を使用します。 この認証方式を使っている場合、Pgpool-IIはクライアントが提供する有効な証明書を要求します。 パスワードプロンプトがクライアントに送信されません。 証明書のcn(コモンネーム)の属性は要求されたデータベースユーザ名と比較され、一致した場合ログインが許可されます。
注意: 証明書認証はクライアントとPgpool-IIの間でのみ使用できます。 証明書認証はPgpool-IIとPostgreSQLの間では使用できません。 バックエンド認証にはその他の認証方式を使用できます。
この認証方式は認証機構としてPAM(Pluggable Authentication Modules)を使用します。 デフォルトのPAMサービス名はpgpoolです。 Pgpool-IIが稼働するホスト上のユーザ情報を使ったPAM認証を利用することができます。 PAMについての詳細はLinux-PAMページを読んでください
PAM認証を有効にするには、Pgpool-IIのサービス設定ファイルをシステムのPAM設定ディレクトリ(通常は"/etc/pam.d"にあります)に作成しなければなりません。 サービス設定ファイルのサンプルはインストールディレクトリ下に"share/pgpool-II/pgpool.pam"としてインストールされています。
注意: PAMサポートを有効にするには、Pgpool-IIが"--with-pam"をつけてconfigureされていなければなりません。