Secrets Manager ローテーションのスケジュール式 - AWS Secrets Manager

Secrets Manager ローテーションのスケジュール式

自動ローテーションをオンにすると、cron() または rate() 式を使用して、シークレットをローテーションするスケジュールを設定できます。rate 式を使用すると、一定の日数の間隔で繰り返されるローテーションスケジュールを作成できます。cron 式を使用すると、ローテーション間隔よりも詳細なローテーションスケジュールを作成できます。Secrets Manager のローテーションスケジュールでは、UTC タイムゾーンが使用されます。

Secrets Manager は、ローテーションウィンドウ内の任意の時刻にシークレットをローテーションします。rate() 式の場合、ローテーションウィンドウは午前 0 時に自動的に開始されます。cron() 式の場合、ローテーションウィンドウは指定した時刻に開始されます。デフォルトでは、ローテーションウィンドウは 1 日の終わりに終了します。ウィンドウ期間を設定して、ローテーションウィンドウを短くすることができます。ローテーションウィンドウが次の UTC 日に入ってはなりません。つまり、開始時間にウィンドウ期間を加えた時間を 24 時間以下にする必要があります。

ローテーションの有効化については、以下を参照してください。

rate 式

Secrets Manager の rate 式は次のような形式です。Value は正の整数で、Unitday または days にできます。

rate(Value Unit)

例えば、rate(8 days) は、シークレットが 8 日ごとにローテーションされることを意味します。

cron 式

Cron 式の形式は次のようになります。

cron(Minutes Hours Day-of-month Month Day-of-week Year)
フィールド [] [ワイルドカード]

0 を指定してください

時間

0~23

1~31

, - * ? / L

1~12 または JAN~DEC

, - * /

曜日

1~7 または SUN~SAT

# , - * ? / L

* を指定してください

Secrets Manager の cron 式では、minutes フィールドに 0 が必要です。これは、Secrets Manager のローテーションウィンドウが正時に開始されるためです。year フィールドには * が必要です。これは、Secrets Manager では 1 年以上離れているローテーションスケジュールがサポートされていないためです。

ワイルドカード:

  • ワイルドカード [*] (アスタリスク) にはフィールドのすべての値が含まれます。Days フィールドで、* は毎日を意味します。

  • ワイルドカード [,] (カンマ) には追加の値が含まれます。Month フィールドで、JAN,APR,JUL,OCT は 1 月、4 月、7 月、10 月を意味します。

  • ワイルドカード [-] (ダッシュ) は範囲を指定します。Day フィールドで、1–15 は指定した月の 1 日から 15 日を意味します。

  • ワイルドカード [/] (スラッシュ) で増分を指定します。Days フィールドで、1/10 は 10 日ごとを意味します。

  • ? (疑問符) ワイルドカードは任意を意味します。cron 式の Day-of-month フィールドと Day-of-week フィールドを同時に指定することはできません。一方のフィールドに値を指定する場合、もう一方のフィールドで ? (疑問符) を使用する必要があります。

  • フィールドまたは フィールドの、ワイルドカード L は月または週の最終日を指定します。Day-of-monthDay-of-weekDay-of-month では、月の最後の指定した曜日を指定することもできます。例えば、SUNL は月の最後の日曜日を意味します。

  • Day-of-week フィールドの # ワイルドカードは、月内の曜日を指定します。例えば、TUE#3 は月の第 3 火曜日を意味します。

スケジュール (UTC) 表現

毎日午前 10:00。

cron(0 10 * * ? *)

毎週土曜日の午後 6:00。

cron(0 18 ? * SAT *)

毎月 1 日の午前 8:00。

cron(0 8 1 * ? *)

3 か月ごとに日曜日の午前 1:00。

cron(0 1 * 1/3 SUN *)

毎月最終日の午後 5:00。

cron(0 17 L * ? *)

月曜日から金曜日までの午前 8:00。

cron(0 8 ? * MON-FRI *)

毎月 1 日と 15 日の午後 4:00。

cron(0 16 1,15 * ? *)

毎月第 1 日曜日の午前 0:00。

cron(0 0 ? * SUN#1 *)