SSL 接続を必要とする DB 接続のための AWS Secrets Manager シークレットをローテーションするにはどうすればよいですか?

所要時間1分
0

AWS Secrets Manager のローテーション機能が、Secure Socket Layer (SSL) を使用して Amazon Relational Database Service (Amazon RDS) インスタンスに接続することができません。以下のようなエラーが表示されます。 ": setSecret: Unable to log into database with previous, current, or pending secret of secret"

解決方法

Amazon RDS (Oracle 用 Amazon RDS を除く) および Amazon DocumentDB のローテーション機能は、SSL/TLS が利用可能であれば、自動的に SSL/TLS を使用してデータベースに接続します。SSL または TLS が使用できない場合、ローテーション機能は暗号化されていない接続を使用します。

2021 年 12 月 20 日より前にシークレットローテーションを設定した場合、ローテーション機能が SSL/TLS をサポートしていない古いテンプレートに基づいている可能性があります。SSL/TLS を使用する接続をサポートするには、ローテーション関数を再作成する必要があります。詳細については、「データベースには SSL/TLS 接続が必要だが、AWS Lambda ローテーション機能が SSL/TLS を使用していない」を参照してください。

DB ユーザーのデータベースへの接続を確認して、シークレットを取得します。

1.    Amazon RDS インスタンスに接続するには、「Amazon RDS DB インスタンスへの接続」を参照してください。

2.    Amazon DocumentDB に接続するには、「Amazon DocumentDB を使用した開発」を参照してください。

3.    シークレットを取得するには、「AWS Secrets Manager からコードでシークレットを取得する」を参照してください。

4.    シークレットを自動的にローテーションするには、「Amazon RDS、Amazon DocumentDB、または Amazon Redshift シークレットを自動的にローテーションする」を参照してください。


関連情報

Secrets Manager の Lambda ローテーション関数をカスタマイズする

サポートされていないデータベースのために AWS Secrets Manager シークレットでローテーション関数を作成するにはどうすればよいですか?

AWS Secrets Manager でデータベースシークレットのローテーション時に SSL 接続が自動的に有効に

AWS公式
AWS公式更新しました 2年前
コメントはありません