Secrets Manager 轮换中的计划表达式 - AWS Secrets Manager

Secrets Manager 轮换中的计划表达式

在启用自动轮换时,可以使用 cron()rate() 表达式来设置轮换密钥的计划。使用 rate 表达式,可以创建以天为间隔重复的轮换计划。使用 cron 表达式,可以创建比轮换间隔更详细的轮换计划。Secrets Manager 轮换计划使用 UTC 时区。

Secrets Manager 将在轮换时段内随时轮换您的密钥。对于 rate() 表达式,轮换时段将自动从午夜开始。对于 cron() 表达式,轮换时段将在您指定的时间开始。默认情况下,轮换时段将在一天结束时结束。您可以设置 Window duration(时段持续时间)以缩短轮换时段。轮换时段不得包含下一个 UTC 日,或者换句话说,开始时间加上时段持续时间必须小于或等于 24 小时。

要启用轮换,请参阅:

Rate 表达式

Secrets Manager rate 表达式采用以下格式,其中是正整数,单位可以是 daydays

rate(Value Unit)

例如,rate(8 days) 意味着每八天轮换一次密钥。

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 表达式的分钟字段必须填写 0,因为 Secrets Manager 轮换时段将在整点开始。其年份字段必须填写 *,因为 Secrets Manager 不支持相隔一年以上的轮换计划。

通配符:

  • *(星号)通配符包含该字段中的所有值。在 Days 字段中,* 表示每天。

  • ,(逗号)通配符包含其他值。在 Month 字段中,JAN,APR,JUL,OCT 表示 1 月、4 月、7 月和 10 月。

  • -(破折号)通配符用于指定范围。在 Day 字段中,1–15 表示指定月份的第 1 天 - 第 15 天。

  • /(正斜杠)通配符用于指定增量。在 Days 字段中,1/10 表示每 10 天。

  • ?(问号)通配符用于指定一个或另一个。您无法在同一 cron 表达式中为 Day-of-monthDay-of-week 字段同时指定值。如果您在其中一个字段中指定了值,则必须在另一个字段中使用 ?(问号)。

  • 字段中的 Day-of-monthLDay-of-week 通配符用于指定月或周的最后一天。在 Day-of-month 中,您还可以指定该月的最后一个指定日期,例如 SUNL 表示该月的最后一个星期日。

  • Day-of-week 字段中的 # 通配符用于指定某一月内的星期几。例如,TUE#3 表示该月的第三个星期二。

示例

计划 (UTC) 表达式

每天上午 10:00。

cron(0 10 * * ? *)

每星期六下午 6:00。

cron(0 18 ? * SAT *)

每月第 1 天上午 8:00。

cron(0 8 1 * ? *)

每三个月第一个星期日凌晨 1:00。

cron(0 1 ? 1/3 SUN#1 *)

每月最后一天下午 5:00。

cron(0 17 L * ? *)

星期一到星期五上午 8:00。

cron(0 8 ? * MON-FRI *)

每月第 1 天和第 15 天下午 4:00。

cron(0 16 1,15 * ? *)

每月第一个星期日午夜。

cron(0 0 ? * SUN#1 *)