RDS DB インスタンスのサーバー証明書は手動更新が必要ですか?
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
困っていた内容
RDS インスタンス証明書の有効期限が残り 1 年を切っております。(下記画像の赤枠の部分)
こちらはいずれ「メンテナンスとバックアップ」タブの「保留中のメンテナンス」として表示され、手動適用が必要なのでしょうか?
それとも自動更新されるのでしょうか?自動更新される場合、時期はいつ頃でしょうか?

どう対応すればいいの
上記画像を確認すると、認証機関(CA)が rds-ca-rsa2048-g1 となっており、証明書の自動ローテーションがサポートされています。
CA が証明書の自動ローテーションをサポートしている場合、証明書の有効期限が切れる前に自動的にローテーションが行われます。お客様による手動適用は不要ですため、ご安心ください。
CA 毎の自動ローテーションの有無については下記ドキュメントの表をご参照ください。
認証局 (CA) 説明 rds-ca-rsa2048-g1 ... この CA はサーバー証明書の自動ローテーションをサポートします。 rds-ca-rsa4096-g1 ... この CA はサーバー証明書の自動ローテーションをサポートします。 rds-ca-ecc384-g1 ... この CA はサーバー証明書の自動ローテーションをサポートします。
なお、自動ローテーションが行われるタイミングについては、ご利用中の DB エンジンにより異なります。
ご利用されている DB エンジンが「再起動なしのローテーション」をサポートしている場合、DB インスタンス証明書の有効期間の半減期(有効期間が 1 年の場合は 6 ヶ月経過後) になると、それ以降のメンテナンスウィンドウにてサーバー証明書の自動ローテーションが実施されます。
「再起動なしのローテーション」をサポートしていない場合、RDS は証明書の有効期間の半分が経過した時点、または有効期限の少なくとも3ヶ月前に Describe-pending-maintenance-actions API を介して "server-certificate-rotation" の保留中のメンテナンスを表示します。
そのため、まずはお客様にて describe-db-engine-versions コマンドを用いて SupportsCertificateRotationWithoutRestart の値をご確認ください。
本値が true の場合は、「再起動なしのローテーション」がサポートされています。
自動ローテーションの詳細については、下記ドキュメントに記載がありますため、こちらも併せてご一読ください。
ルート CA がサーバー証明書の自動ローテーションをサポートしている場合、RDS は DB サーバー証明書のローテーションを自動的に処理します。
...
DB サーバー証明書のローテーションと有効期間は DB エンジンによって異なります。
- DB エンジンが再起動なしのローテーションをサポートしている場合、ユーザーによるアクションがなくても、RDS は DB サーバー証明書を自動的にローテーションします。RDS は、DB サーバー証明書の半減期になった時点で、希望するメンテナンス期間に DB サーバー証明書のローテーションを試みます。新しい DB サーバー証明書は、12 か月間有効です。
- DB エンジンが再起動せずにローテーションをサポートしていない場合、Amazon RDS は、証明書の半分、または有効期限の少なくとも 3 か月前に、Describe-pending-maintenance-actions API を介して server-certificate-rotation 保留中のメンテナンスアクションを表示します。apply-pending-maintenance-action API を使用してローテーションを適用できます。新しい DB サーバー証明書は、36 か月間有効です。
describe-db-engine-versions コマンドを使用して、SupportsCertificateRotationWithoutRestart フラグを点検することで、再起動なしで DB エンジンバージョンが証明書のローテーションをサポートするかどうかを特定します。
参考情報








