

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Programación de rotación
<a name="rotate-secrets_schedule"></a>

Secrets Manager rota su secreto durante el periodo de rotación programado que configure. Para configurar la programación y el periodo, utilice una expresión **cron()** o **rate()** junto con la duración del periodo. Secrets Manager rota el secreto en cualquier momento durante el periodo de rotación. Se puede rotar un secreto con una frecuencia máxima de cuatro horas en un periodo de rotación de, como mínimo, una hora. 

Para activar la rotación, consulte:
+ [Rotación gestionada de AWS Secrets Manager secretos](rotate-secrets_managed.md)
+ [Configurar la rotación automática de secretos de Amazon RDS, Amazon Aurora, Amazon Redshift o Amazon DocumentDB](rotate-secrets_turn-on-for-db.md)
+ [Configurar la rotación automática para secretos que no son de bases de datos AWS Secrets Manager](rotate-secrets_turn-on-for-other.md)

Las programaciones de rotación de Secrets Manager utilizan la zona horaria UTC.

## Periodos de rotación
<a name="rotate-secrets_rotation-windows"></a>

Un periodo de rotación de Secrets Manager es similar a un periodo de mantenimiento. Se establece el periodo de rotación cuando se quiere rotar el secreto, y Secrets Manager lo hace en algún momento durante ese periodo. 

Los periodos de rotación de Secrets Manager siempre comienzan cada hora. En un programa de rotaciones que usa una expresión `rate()` en días, el periodo de rotación se inicia a medianoche. Puede establecer la hora de inicio del periodo de rotación mediante una expresión `cron()`. Para ver ejemplos, consulte [Expresiones cron](#rotate-secrets_schedule-cron). 

De forma predeterminada, el periodo de rotación se cierra después de una hora para un programa de rotación en *horas*, y al final del día para un programa de rotación en *días*. 

Establezca el valor de **Duración del periodo** para cambiar la duración del periodo de rotación. Puede configurar el intervalo de rotación en, como mínimo, una hora. El periodo de rotación no debe prolongarse hasta el siguiente periodo de rotación. En otras palabras, para un programa de rotación en *horas*, verifique que el periodo de rotación sea inferior o igual al número de horas entre rotaciones. Para un programa de rotación en *días*, confirme que la suma de la hora de inicio más la duración del periodo sea inferior o igual a 24 horas.

## Expresiones de frecuencia
<a name="rotate-secrets_schedule-rate"></a>

Las expresiones de tasa de Secrets Manager tienen el siguiente formato, donde {{Value}} es un entero positivo y {{Unit}} puede ser `hour``hours`,`day`, o`days`:

```
rate({{Value}} {{Unit}})
```

Se puede rotar un secreto con una frecuencia máxima de cuatro horas. El periodo máximo de rotación es de 999 días. Ejemplos:
+ `rate(4 hours)` significa que el secreto se rota cada cuatro horas.
+ `rate(1 day)` significa que el secreto se rota todos los días.
+ `rate(10 days)` significa que el secreto se rota cada 10 días.

## Expresiones cron
<a name="rotate-secrets_schedule-cron"></a>

Las expresiones cron de Secrets Manager tienen el siguiente formato:

```
cron({{Minutes}} {{Hours}} {{Day-of-month}} {{Month}} {{Day-of-week}} {{Year}})
```

Una expresión cron que incluye incrementos de horas se restablece todos los días. Por ejemplo, `cron(0 4/12 * * ? *)` significa 4:00 h, 16:00 h, y al día siguiente 4:00 h, 16:00 h. Las programaciones de rotación de Secrets Manager utilizan la zona horaria UTC.


| Ejemplo de programación | Expression | 
| --- | --- | 
| Cada ocho horas a partir de la medianoche.  |  `cron(0 /8 * * ? *)`  | 
| Cada ocho horas a partir de las 8:00 h.  |  `cron(0 8/8 * * ? *)`  | 
| Cada diez horas a partir de las 2:00 h. Los períodos de rotación comenzarán a las 2:00 h, 12:00 h y 22:00 h, y luego al día siguiente a las 2:00 h, 12:00 h y 22:00 h.  |  `cron(0 2/10 * * ? *)`  | 
| Todos los días a las 10:00 h. |  `cron(0 10 * * ? *)`  | 
|  Todos los sábados a las 18:00 h.  |  `cron(0 18 ? * SAT *)`  | 
|  El primer día de cada mes a las 08:00 h.  |  `cron(0 8 1 * ? *)`  | 
|  Los domingos a la 01:00 h, cada tres meses.  |  `cron(0 1 ? 1/3 SUN#1 *)`  | 
|  El último día de cada mes a las 17:00 h.  |  `cron(0 17 L * ? *)`  | 
|  De lunes a viernes a las 08:00 h.  |  `cron(0 8 ? * MON-FRI *)`  | 
|  Los días 1 y 15 de cada mes a las 16:00 h.  |  `cron(0 16 1,15 * ? *)`  | 
|  El primer domingo de cada mes a medianoche.  |  `cron(0 0 ? * SUN#1 *)`  | 
|  A partir de enero, cada 11 meses el primer lunes a medianoche.  |  `cron(0 0 ? 1/11 2#1 *)`  | 

### Requisitos para expresiones cron en Secrets Manager
<a name="rotate-secrets_schedule-cron-ASM"></a>

En Secrets Manager existen algunas restricciones en cuanto a qué se puede utilizar en las expresiones cron. Una expresión cron para Secrets Manager debe tener el valor **0** en el campo correspondiente a los minutos, ya que los periodos de rotación de Secrets Manager comienzan a la hora en punto. Debe tener **\*** en el campo correspondiente al año, ya que Secrets Manager no admite programaciones de rotación que tengan más de un año de diferencia. En la siguiente tabla se muestran las opciones que se pueden utilizar.


| **Campos** | **Valores** | **Caracteres comodín** | 
| --- | --- | --- | 
|  Minutos  | Debe ser 0 | Ninguno | 
|  Horas  |  0–23  |  Utilice **/** (barra diagonal) para especificar los incrementos. Por ejemplo, `2/10` significa cada 10 horas a partir de las 2:00 h. Se puede rotar un secreto con una frecuencia máxima de cuatro horas.   | 
|  D ay-of-month  |  1–31  |  Utilice **,** (coma) para incluir valores adicionales. Por ejemplo, `1,15` significa el primer día y el día 15 del mes. Utilice **-** (guion) para especificar un rango. Por ejemplo, `1–15` significa del día 1 al 15 del mes. Utilice **\*** (asterisco) para incluir todos los valores en el campo. Por ejemplo, `*` significa todos los días del mes. El comodín **?** (signo de interrogación) especifica uno u otro. No se pueden especificar los campos `Day-of-month` y `Day-of-week` en la misma expresión Cron. Si especifica un valor en uno de los campos, debe utilizar un **?** (signo de interrogación) en el otro. Utilice **/** (barra diagonal) para especificar los incrementos. Por ejemplo, `1/2` significa cada dos días a partir del día 1; es decir, los días 1, 3, 5, y así sucesivamente. Utilice **L** para especificar el último día del mes. Use **{{DAY}}L** para especificar el último día del mes indicado. Por ejemplo, `SUNL` significa el último domingo del mes.  | 
|  Mes  |  1–12 o ENE-DIC  |  Utilice **,** (coma) para incluir valores adicionales. Por ejemplo, `JAN,APR,JUL,OCT` significa enero, abril, julio y octubre. Utilice **-** (guion) para especificar un rango. Por ejemplo, `1–3` significa los meses del 1 al 3 del año. Utilice **\*** (asterisco) para incluir todos los valores en el campo. Por ejemplo, `*` significa todos los meses. Utilice **/** (barra diagonal) para especificar los incrementos. Por ejemplo, `1/3` significa cada tres meses a partir del mes 1; es decir, los meses 1, 4, 7 y 10.  | 
|  D ay-of-week  |  1–7 o DOM-SÁB  |  Utilice **\#** para especificar el día de la semana de un mes. Por ejemplo, `TUE#3` significa el tercer martes del mes.  Utilice **,** (coma) para incluir valores adicionales. Por ejemplo, `1,4` significa el primer y el cuarto día de la semana. Utilice **-** (guion) para especificar un rango. Por ejemplo, `1–4` significa los días del 1 al 4 de la semana. Utilice **\*** (asterisco) para incluir todos los valores en el campo. Por ejemplo, `*` significa todos los días de la semana. El comodín **?** (signo de interrogación) especifica uno u otro. No se pueden especificar los campos `Day-of-month` y `Day-of-week` en la misma expresión Cron. Si especifica un valor en uno de los campos, debe utilizar un **?** (signo de interrogación) en el otro. Utilice **/** (barra diagonal) para especificar los incrementos. Por ejemplo, `1/2` significa cada dos días de la semana a partir del primer día; es decir, los días 1, 3, 5 y 7. Utilice **L** para especificar el último día de la semana.  | 
|  Año  | Debe ser \* | Ninguno | 