SSL/TLS を使用した DB インスタンスへの接続の暗号化
アプリケーションで Secure Socket Layer (SSL) または Transport Layer Security (TLS) を使用することで、MariaDB、Microsoft SQL Server、MySQL、Oracle、または PostgreSQL を実行する DB インスタンスへの接続を暗号化できます。
SSL/TLS 接続は、クライアントと DB インスタンスの間を移動するデータを暗号化することによって、1 つのセキュリティ層を提供します。サーバー証明書を使用すると、Amazon RDS DB インスタンスへの接続が確立されていることを検証することによって、追加のセキュリティレイヤーが提供されます。これを行うには、プロビジョニングしたすべての DB インスタンスに自動インストールされたサーバー証明書をチェックします。
Amazon RDS は、以下のセクションのリンクからダウンロードできる特定のサーバー証明書をサポートしています。証明書を使用して、接続に TLS 暗号化を実装できます。
各 DB エンジンには SSL/TLS を実装する独自のプロセスがあります。ご使用の DB インスタンスでの SSL/TLS の実装方法については、以下でご各 DB エンジンに対応するリンクを参照してください。
注記
証明書はすべて、SSL/TLS 接続を使用したダウンロードでのみ使用可能です。
認証局
認証局 (CA) は、証明書チェーンの最上位にあるルート CA を識別する証明書です。CA は、各 DB インスタンスにインストールされているサーバー証明書である、DB インスタンス証明書に署名します。サーバー証明書は DB インスタンスを信頼できるサーバーとして識別します。
Amazon RDS には DB インスタンスのサーバー証明書に署名するための、以下の CA が用意されています。
認証局 (CA) | 説明 |
---|---|
rds-ca-2019 |
DB インスタンスサーバー証明書には、RSA 2048 プライベートキーアルゴリズムと SHA256 署名アルゴリズムを備えた認証局を使用します。この CA は 2024 年に有効期限が切れ、サーバー証明書の自動ローテーションはサポートされていません。この CA を使用して同じ標準を維持したい場合は、rds-ca-rsa2048-g1 CA に切り替えることをお勧めします。 |
rds-ca-rsa2048-g1 |
大半の AWS リージョン では、DB インスタンスサーバー証明書に RSA 2048 プライベートキーアルゴリズムと SHA256 署名アルゴリズムを備えた認証局を使用します。 AWS GovCloud (US) Regions で、この CA は DB インスタンスサーバー証明書に RSA 2048 プライベートキーアルゴリズムと SHA384 署名アルゴリズムを備えた認証局を使用します。 この CA は rds-ca-2019 CA よりも長期間有効です。この CA はサーバー証明書の自動ローテーションをサポートします。 |
rds-ca-rsa4096-g1 |
DB インスタンスサーバー証明書には RSA 4096 プライベートキーアルゴリズムと SHA384 署名アルゴリズムを備えた認証局を使用します。この CA はサーバー証明書の自動ローテーションをサポートします。 |
rds-ca-ecc384-g1 |
DB インスタンスサーバー証明書には ECC 384 プライベートキーアルゴリズムと SHA384 署名アルゴリズムを備えた認証局を使用します。この CA はサーバー証明書の自動ローテーションをサポートします。 |
注記
AWS CLI を使用している場合は、describe-certificates を使用して、上記の認証局の有効性を確認できます。
rds-ca-rsa2048-g1、rds-ca-rsa4096-g1、または rds-ca-ecc384-g1 CA を DB インスタンスで使用すると、RDS は DB インスタンス上でサーバー証明書を管理します。RDS は有効期限が切れる前に自動ローテーションします。これらの CA 証明書は、地域およびグローバル証明書バンドルに含まれています。
DB インスタンスの CA は、以下のタスクの実行時に設定できます。
-
DB インスタンスの作成 – DB インスタンスの作成時に CA を設定できます。手順については、「Amazon RDS DB インスタンスの作成」を参照してください。
-
DB インスタンスの変更 – DB インスタンスを修正することにより CA を変更できます。手順については、「Amazon RDS DB インスタンスを変更する」を参照してください。
modify-certificates コマンドを使用して、AWS アカウント のデフォルト CA を設定できます。
使用可能な CA は、DB エンジンと DB エンジンのバージョンによって異なります。AWS Management Console を使用するとき、次の図に示すように、認証局の設定を使用して CA を選択できます。

コンソールには、DB エンジンおよび DB エンジンのバージョンで利用可能な CA のみが表示されます。AWS CLI を使用しているとき、create-db-instance コマンドまたは modify-db-instance コマンドを使用して DB インスタンスの CA を設定できます。
AWS CLI を使用しているとき、describe-certificates コマンドを使用して、アカウントで使用可能な CA を確認できます。このコマンドでは、出力内の ValidTill
に各 CA の有効期限も表示されます。describe-db-engine-versions コマンドを使用すると、特定の DB エンジンと DB エンジンのバージョンで使用できる CA を検索できます。
次の例は、PostgreSQL DB エンジンのバージョンのデフォルト RDS で使用できる CA を示しています。
aws rds describe-db-engine-versions --default-only --engine postgres
以下のような出力が生成されます。使用可能な CA は SupportedCACertificateIdentifiers
に記載されます。出力には、DB エンジンのバージョンで、SupportsCertificateRotationWithoutRestart
の再起動なしで証明書のローテーションがサポートされるかどうかも表示されます。
{
"DBEngineVersions": [
{
"Engine": "postgres",
"MajorEngineVersion": "13",
"EngineVersion": "13.4",
"DBParameterGroupFamily": "postgres13",
"DBEngineDescription": "PostgreSQL",
"DBEngineVersionDescription": "PostgreSQL 13.4-R1",
"ValidUpgradeTarget": [],
"SupportsLogExportsToCloudwatchLogs": false,
"SupportsReadReplica": true,
"SupportedFeatureNames": [
"Lambda"
],
"Status": "available",
"SupportsParallelQuery": false,
"SupportsGlobalDatabases": false,
"SupportsBabelfish": false,
"SupportsCertificateRotationWithoutRestart": true,
"SupportedCACertificateIdentifiers": [
"rds-ca-2019",
"rds-ca-rsa2048-g1",
"rds-ca-ecc384-g1",
"rds-ca-rsa4096-g1"
]
}
]
}
DB インスタンスの CA に関する詳細を確認するには、次の画像のように、コンソール内の [Connectivity & security] (接続とセキュリティ) タブを表示します。

AWS CLI を使用している場合は、describe-db-instances コマンドを使用して DB インスタンスの CA の詳細を表示できます。
すべての AWS リージョン の証明書バンドル
すべての AWS リージョン の中間証明書とルート証明書の両方を含む証明書バンドルは、https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem
アプリケーションが Microsoft Windows 上にあり、PKCS7 ファイルが必要な場合は、PKCS7 証明書バンドルをダウンロードできます。このバンドルには、https://truststore.pki.rds.amazonaws.com/global/global-bundle.p7b
注記
Amazon RDS Proxy は AWS Certificate Manager (ACM) の証明書を使用します。RDS Proxy を使用している場合は、Amazon RDS 証明書をダウンロードしたり、RDS Proxy 接続を使用するアプリケーションを更新したりする必要はありません。RDS Proxy で TLS/SSL を使用する方法の詳細については、「RDS Proxy での TLS/SSL の使用」を参照してください。
特定の AWS リージョン の証明書バンドル
AWS リージョン の中間証明書とルート証明書の両方を含む証明書バンドルを取得するには、次の表の AWS リージョン のリンクからダウンロードします。
AWS GovCloud (US) 証明書
AWS GovCloud (US) Region の中間証明書とルート証明書の両方を含む証明書バンドルは、https://truststore.pki.us-gov-west-1.rds.amazonaws.com/global/global-bundle.pem
アプリケーションが Microsoft Windows 上にあり、PKCS7 ファイルが必要な場合は、PKCS7 証明書バンドルをダウンロードできます。このバンドルには、https://truststore.pki.us-gov-west-1.rds.amazonaws.com/global/global-bundle.p7b
AWS GovCloud (US) Region の中間証明書とルート証明書の両方を含む証明書バンドルを取得するには、次の表の AWS GovCloud (US) Region のリンクからダウンロードします。
AWS GovCloud (US) Region | 証明書バンドル (PEM) | 証明書バンドル (PKCS7) |
---|---|---|
AWS GovCloud (米国東部) | us-gov-east-1-bundle.pem |
us-gov-east-1-bundle.p7b |
AWS GovCloud (米国西部) | us-gov-west-1-bundle.pem |
us-gov-west-1-bundle.p7b |