すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:RDS for PostgreSQL のクライアント SSL 接続の強制

最終更新日:Jun 23, 2026

SSL 暗号化を有効にした後でも、クライアントアクセス制御が設定されていない場合、クライアントは PGSSLMODE=disable パラメーターを使用して SSL なしで接続できます。すべてのクライアントに対して SSL 接続を強制するには、このトピックの手順に従ってください。

前提条件

操作手順

RDS for PostgreSQL では、クライアント接続に SSL 暗号化を強制するために、以下の方法が提供されています。

方法 1:クライアント ACL

クライアント CA 証明書を設定した後、RDS for PostgreSQL インスタンスでクライアント ACL を設定して、クライアントアクセスを管理できます。クライアントは、有効なクライアント証明書と秘密鍵を提示し、指定された認証方式を使用してデータベースに接続する必要があります。

説明
  • クライアント ACL を設定すると、PostgreSQL データベースインスタンスが約 1 分間利用できなくなります。

  • RDS for PostgreSQL データベースでクライアントアクセス制御が設定されていない場合、認証方式のデフォルトは prefer です。これにより、クライアントは PGSSLMODE=disable を使用して SSL なしで接続できます。非 SSL 接続をブロックするには、SSL 暗号化を有効にした後、クライアント ACL を設定して prefer 以外の認証方式を使用してください。

ACL の設定 の横にある 変更 をクリックし、クライアント接続のコントロールモードを選択します。

RDS for PostgreSQL インスタンスへの SSL 接続を強制するには、次のいずれかの認証方式を使用できます。

  • cert:パスワードの代わりにクライアント証明書を使用して認証します。接続を暗号化し、クライアント証明書を検証し、証明書内のコモンネーム (CN) がデータベースのユーザー名と一致することを確認します。

  • verify-ca:接続を暗号化し、設定された CA に対してクライアント証明書を検証します。

  • verify-full (RDS for PostgreSQL 12 以降でサポート):接続を暗号化し、設定された CA に対してクライアント証明書を検証し、証明書内の CN がデータベースのユーザー名と一致することを確認します。

方法 2:pg_hba.conf ファイル

SSL 暗号化を有効にした後、RDS for PostgreSQL の AD ドメインサービス設定 機能を使用して pg_hba.conf ファイルを変更できます。これにより、クライアントはデータベースに接続する際に SSL を使用することが強制されます。

  1. インスタンスページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、対象の RDS インスタンスを見つけ、インスタンスの ID をクリックします。

  2. 左側のナビゲーションウィンドウで、アカウント管理 をクリックし、ADドメインサービス情報 タブをクリックします。

  3. pg_hba.conf 設定ページのルールテーブルで、最初のレコードを変更し、TYPEhostssl に、DATABASEUSERall に、ADDRESS0.0.0.0/0 に、METHODmd5 に設定します。

  4. 提出 をクリックします。

    説明

    [送信] をクリックすると、インスタンスステータスが約 1 分間 メンテナンス中 に変わります。新しい設定は、新しい接続にのみ適用されます。既存の接続に変更を適用するには、切断してから再接続する必要があります。