翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS Secrets Manager シークレットのマネージドローテーション
一部のサービスは、ユーザーに代わってローテーションの設定と管理を行うマネージドローテーションを提供しています。マネージドローテーションでは、データベース内のシークレットと認証情報の更新に AWS Lambda 関数が使用されません。
次のサービスは、マネージドローテーションを提供しています。
Amazon Aurora は、マスターユーザー認証情報のマネージドローテーションを提供します。詳細については、「Amazon Aurora ユーザーガイド」の「Amazon Aurora および AWS Secrets Manager でのパスワード管理」を参照してください。
Amazon ECS Service Connect は、AWS Private Certificate Authority TLS 証明書のマネージドローテーションを提供しています。詳細については、「Amazon Elastic Container Service Developer Guide」の「TLS with Service Connect」を参照してください。
Amazon RDS は、マスターユーザー認証情報のマネージドローテーションを提供します。詳細については、「Amazon RDS ユーザーガイド」の「Amazon RDS および AWS Secrets Manager でのパスワード管理」を参照してください。
Amazon Redshift は、管理者パスワードのマネージドローテーションを提供します。詳細については、「Amazon Redshift 管理ガイド」の「AWS Secrets Manager を使用して Amazon Redshift 管理者パスワードを管理する」を参照してください。
ヒント
他のすべてのタイプのシークレットについては、「Lambda 関数によるローテーション」を参照してください。
マネージドシークレットのローテーションは、通常 1 分以内に完了します。ローテーション中、シークレットを取得する新しい接続では、以前のバージョンの認証情報が取得される場合があります。アプリケーションでは、マスターユーザーを使用する代わりに、アプリケーションに必要な最小の特権で作成されたデータベースユーザーを使用するというベストプラクティスに従うことを強くお勧めします。アプリケーションユーザーの場合、可用性を最大限に高めるには、交代ユーザーローテーション戦略を使用できます。
マネージドローテーションのスケジュールを変更するには
Secrets Manager コンソールでマネージドシークレットを開きます。管理サービスからのリンクをたどるか、Secrets Manager コンソールでシークレットを検索できます。
-
[Rotation schedule] (ローテーションスケジュール) において、UTC タイムゾーンで [Schedule expression builder] (スケジュール式ビルダー) にスケジュールを入力するか、[Schedule expression] (スケジュール式) としてスケジュールを入力します。Secrets Manager は、スケジュールを
rate()
式またはcron()
式として保存します。[Start time] (開始時刻) を指定しない限り、ローテーションウィンドウは午前 0 時に自動的に開始されます。シークレットが 4 時間ごとにローテーションされるように設定できます。詳細については、「ローテーションスケジュール」を参照してください。 -
(オプション) [Window duration] (ウィンドウ期間) では、Secrets Manager がシークレットをローテーションするウィンドウの長さを選択します (3 時間のウィンドウの場合は
3h
など)。ウィンドウが次のローテーションウィンドウに重ならないようにしてください。時間単位のローテーションスケジュールでは、ウィンドウ期間を指定しない場合、ウィンドウは 1 時間後に自動的に終了します。日数単位のローテーションスケジュールの場合、ウィンドウは 1 日の終わりに自動的に終了します。 [Save] を選択します。
マネージドローテーションのスケジュールを変更するには (AWS CLI)
rotate-secret
を呼び出します。次の例では、月の 1 日と 15 日の 16 時から 18 時 (UTC) の間にシークレットがローテーションされます。詳細については、「ローテーションスケジュール」を参照してください。aws secretsmanager rotate-secret \ --secret-id MySecret \ --rotation-rules "{\"ScheduleExpression\": \"cron(0 16 1,15 * ? *)\", \"Duration\": \"2h\"}"