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

ApsaraDB RDS:データベースプロキシエンドポイントのSSL暗号化の設定

最終更新日:Jan 18, 2024

ApsaraDB RDS for MySQLは、データベースプロキシエンドポイントのSSL暗号化をサポートしています。 SSL暗号化機能を有効にし、アプリケーションにSSL証明書をインストールして、RDSインスタンスの接続セキュリティを向上させることができます。 このトピックでは、データベースプロキシエンドポイントのSSL暗号化を設定する方法について説明します。

SSLは、RDSインスタンスとアプリケーション間のトランスポート層でネットワーク接続を暗号化します。 これにより、転送中のデータのセキュリティと整合性が向上しますが、応答時間が長くなります。

前提条件

  • RDSインスタンスは、次のいずれかのMySQLバージョンを実行します。

    • RDS High-availability Editionの20200831以降のマイナーエンジンバージョンを使用したMySQL 8.0

    • RDSクラスターエディションのMySQL 8.0

    • RDSクラスターエディションのMySQL 5.7

    • RDS High-availability Editionの20200831以降のマイナーエンジンバージョンを使用したMySQL 5.7

    • RDS High-availability Editionの20200831以降のマイナーエンジンバージョンを使用したMySQL 5.6

    説明

    RDSインスタンスに読み取り専用RDSインスタンスがアタッチされている場合、読み取り専用RDSインスタンスは、「マイナーエンジンバージョンの更新」で説明されている要件を満たしている必要があります。

  • データベースプロキシ機能が有効になっています。 詳細については、「データベースプロキシ機能の有効化」をご参照ください。

  • データベースプロキシのバージョンは1.12.8以降です。 詳細については、「データベースプロキシバージョンのアップグレード」をご参照ください。

  • 保護する専用プロキシエンドポイントの合計長さが64文字を超えないようにします。

使用上の注意

  • SSL暗号化は、プロキシ端末ごとに1つの専用プロキシエンドポイントに対してのみ設定できます。

  • SSL暗号化を有効または無効にする、保護されたデータベースプロキシエンドポイントを変更する、またはSSL証明書の有効期間を更新すると、プロキシインスタンスが再起動します。 作業は慎重に行ってください。

SSL 暗号化の有効化

重要

この操作により、RDSインスタンスの再起動がトリガーされます。 作業は慎重に行ってください。

  1. ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDSインスタンスが存在するリージョンを選択します。 RDSインスタンスを見つけ、インスタンスIDをクリックします。

  2. 左側のナビゲーションペインで、[データベース] をクリックします。

  3. [接続情報] セクションで、データベースプロキシエンドポイントのIDにポインターを移動します。 表示されるダイアログボックスの [SSL暗号化の設定] セクションで、[SSL暗号化] の右側にある [有効化] をクリックします。

  4. 表示されるダイアログボックスで、暗号化するエンドポイントを選択し、[OK] をクリックします。

  1. SSL暗号化のステータスが有効になったら、SSL暗号化の横にある [CA証明書のダウンロード] をクリックします。

    説明
    • ダウンロードしたファイルは、次のファイルを含むパッケージです。

      • PEMファイル: ほとんどのシナリオに適しています。

      • JKSファイル: Javaアプリケーションに適しています。 ほとんどの場合、PEM形式のCA証明書ファイルは、JKSファイルに変換するためにトラストストアにインポートする必要があります。 JKSファイルはJavaアプリケーションで使用できます。 ファイルのパスワードはapsaradbです。

      • P7Bファイル: PKCS#7形式の証明書ファイルを必要とする少数のWindowsアプリケーションに適しています。

    • 設定されたSSL証明書を使用して、データベースサーバーの証明書を検証できます。

    • あなたが使用するとき。Java Development Kit (JDK) 7またはJDK 8でjksファイルを作成し、アプリケーションが存在するホストのjre/lib/security/java.securityディレクトリに移動し、次のコードを実行して2つの設定項目のデフォルト値を変更します。

      jdk.tls.disabledAlgorithms=SSLv3, RC4, DH keySize < 224
      jdk.certpath.disabledAlgorithms=MD2, RSA keySize < 1024 

      これらの設定を変更しないと、次のエラーが報告されます。 ほとんどの場合、他の同様のエラーも無効なJavaセキュリティ設定によって発生します。

      javax.net.ssl.SSLHandshakeException: DHPublicKeyはアルゴリズム制約に準拠していません

SSL証明書の設定

SSL暗号化を有効にしてCA証明書をダウンロードした後、SSL証明書を設定できます。 詳細については、「CA証明書のダウンロード」をご参照ください。

保護されたプロキシエンドポイントの変更

重要

この操作により、SSL証明書の有効期間が更新されます。 この操作により、RDSインスタンスの再起動もトリガーされます。 作業は慎重に行ってください。

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

  3. [接続情報] セクションで、データベースプロキシエンドポイントのIDにポインターを移動します。 表示されるダイアログボックスの [SSL暗号化の設定] セクションで、保護されたエンドポイントの下の [保護されたエンドポイントの変更] をクリックします。

  4. 暗号化するエンドポイントを選択し、[OK] をクリックします。

SSL証明書の有効期間を更新する

重要

この操作により、RDSインスタンスの再起動がトリガーされます。 作業は慎重に行ってください。

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

  3. [接続情報] セクションで、データベースプロキシエンドポイントのIDにポインターを移動します。 表示されるダイアログボックスの [SSL暗号化の設定] セクションで、[SSL証明書の有効期限] の右側にある [有効期限の更新] をクリックします。 表示されるダイアログボックスで、[OK] をクリックします。

SSL 暗号化の無効化

重要

この操作により、RDSインスタンスの再起動がトリガーされます。 作業は慎重に行ってください。

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

  3. [接続情報] セクションで、データベースプロキシエンドポイントのIDにポインターを移動します。 表示されるダイアログボックスの [SSL暗号化の設定] セクションで、[SSL暗号化] の右側にある [無効化] をクリックします。 表示されるダイアログボックスで、[OK] をクリックします。

関連する操作

操作

説明

ModifyDbProxyInstanceSsl

データベースプロキシエンドポイントのSSL暗号化を設定します。

GetDbProxyInstanceSsl

データベースプロキシエンドポイントのSSL暗号化設定を照会します。

参考資料

SSL経由でデータベースに接続するためのサンプルコード

詳細については、「アプリケーションコード」をご参照ください。

SSL暗号化に関するFAQ

詳細は、「よくある質問」をご参照ください。