Rotación automática de secretos
Puede planificar la rotación automática de secretos utilizando IBM Cloud® Secrets Manager.
Cuando se rota un secreto en la instancia de servicio, se crea una nueva versión de su valor. Programando la rotación automática de sus secretos a intervalos regulares, puede reducir la probabilidad de riesgos y asegurarse de que sus credenciales nunca caduquen.
La rotación automática sólo está disponible para los secretos generados por Secrets Manager. Si el secreto se ha importado inicialmente, debe proporcionar nuevos datos secretos para rotarlo. Para obtener más información, consulte Rotar secretos manualmente.
Antes de empezar
Antes de empezar, asegúrese de que tiene el nivel de acceso necesario. Para rotar secretos, necesita el rol de servicio Escritor o superior.
Tipos de secretos soportados
La rotación automática está soportada para certificados privados, certificados públicos, credenciales de usuario y credenciales de IAM. Dependiendo del tipo de secreto, la rotación automática se lleva a cabo inmediatamente en la fecha y hora que hayas establecido, o puede que sea necesario completar algunos pasos adicionales antes de que se pueda crear una nueva versión del secreto.
| Tipo | Descripción de la rotación |
|---|---|
| Certificados privados | El valor certificate existente se sustituye por el contenido de certificado nuevo. El tiempo de vida (TTL) del certificado renovado se establece de acuerdo con la plantilla de certificado que se seleccionó al crear el certificado por primera vez. Ten en cuenta que, una vez que el tiempo de vida (TTL) o el período de validez de un certificado privado supere el período de validez de la autoridad de certificación que lo
emitió, el certificado ya no podrá renovarse automáticamente. |
| Certificados públicos | Los certificados públicos se mueven al estado Activo, pendiente de rotación para indicar que se está procesando la solicitud para renovar el certificado. Secrets Manager utiliza la validación de DNS para verificar que es propietario de los dominios que se listan como parte del certificado. El proceso puede tardar algunos minutos en completarse. Si la validación se completa correctamente, el certificado se emite y su estado cambia a Activo. Si la validación no se completa correctamente, el estado del certificado cambia a Activo, Rotación fallida. |
| Credenciales de usuario | El valor password existente se sustituye por una contraseña de 32 caracteres generada aleatoriamente que contiene letras mayúsculas, letras minúsculas, dígitos y símbolos. El valor username no cambia. |
| Credenciales de IAM | El valor de clave de API del ID de servicio se sustituye por una nueva clave de API. La clave de API anterior permanece disponible durante el tiempo restante en el TTL definido. |
| Credenciales de servicio | El secreto de las credenciales de servicio se sustituye por uno nuevo. El secreto anterior permanece disponible durante el tiempo restante en el TTL definido. |
| Credenciales personalizadas | El secreto de la credencial personalizada se sustituye por uno nuevo. El secreto anterior permanece disponible durante el tiempo restante en el TTL definido. |
Tenga en cuenta que en el caso de las credenciales de servicio creadas para bases de datos, si además de la credencial también está alterando los permisos de base de datos para la credencial creada, estas no se sincronizarán una vez que se haya rotado la credencial de servicio. Al rotar una credencial de servicio de bases de datos, esto se considera una rotación de identidad.
Planificar la rotación automática en la interfaz de usuario
Puede planificar la rotación automática de secretos utilizando la interfaz de usuario de Secrets Manager.
Establecer una política de rotación automática para las credenciales de usuario
Si prefiere planificar las contraseñas para que se roten automáticamente a intervalos regulares, puede habilitar la rotación automática para las credenciales de usuario al crearlas. También puede habilitar la rotación automática editando los detalles de un secreto existente.
Si necesita más control sobre la frecuencia de rotación de un secreto, puede utilizar la API de Secrets Manager para establecer un intervalo personalizado utilizando unidades de tiempo de day o de month. Para obtener
más información, consulte el apartado Referencia de API.
- Si está añadiendo un secreto, habilite la opción de rotación.
- Si está editando un secreto existente, habilite la rotación automática actualizando sus detalles.
- En la tabla Secretos, vea una lista de sus secretos existentes.
- En la fila correspondiente al secreto que desea editar, pulse el menú Acciones
> Editar detalles.
- Utilice la opción Rotación automática para habilitar o inhabilitar la rotación automática para el secreto.
Cuando actualiza los valores de rotación de un secreto, desencadena una rotación inmediata.
Establecer una política de rotación automática para los certificados públicos
Si prefiere programar la renovación automática de sus certificados públicos SSL / TLS, puede activar la rotación automática de los certificados al solicitarlos. También puede habilitar la rotación automática editando los detalles de un certificado existente. En el siguiente ciclo de renovación del certificado, Secrets Manager comienza a intentar volver a solicitar el certificado 31 días antes de su fecha de caducidad. El servicio sigue intentando renovar el certificado diariamente hasta que sea satisfactorio.
-
Si está solicitando un certificado público, habilite las opciones de rotación.
- Para rotar el certificado automáticamente, cambie el conmutador de rotación a On. El certificado se vuelve a solicitar automáticamente 31 días antes de su fecha de caducidad.
- Para solicitar una nueva clave privada para el certificado en cada rotación, activa el interruptor de generación de nuevas claves.
-
Si está editando un certificado público existente, planifique la rotación automática actualizando sus detalles.
- En la tabla Secretos, vea una lista de los certificados públicos existentes.
- En la fila correspondiente al certificado que desea editar, pulse el menú Acciones
> Editar detalles.
- Utilice la opción Rotación automática para añadir o eliminar una política de rotación para el secreto.
Establecer una política de rotación automática para los certificados privados
Si prefiere planificar la renovación automática de los certificados SSL o TLS públicos, puede habilitar la rotación automática para los certificados al crearlos o editando los detalles de un certificado existente. El certificado debe
-
Si está creando certificados privados, habilite las opciones de rotación.
-
Para rotar el certificado automáticamente, cambie el conmutador de rotación a On.
-
Seleccione un intervalo y una unidad que especifique el número de días entre las rotaciones planificadas.
En función de la plantilla de certificado asociada con el certificado privado, es posible que se apliquen algunas restricciones en el intervalo de rotación del certificado. Por ejemplo, el intervalo de rotación no puede superar el tiempo de vida (TTL) definido en la plantilla. Para obtener más información, consulte Plantillas de certificados.
-
-
Si está editando un certificado privado existente, planifique la rotación automática actualizando sus detalles.
- En la tabla Secretos, visualice una lista de los certificados privados existentes.
- En la fila correspondiente al certificado que desea editar, pulse el menú Acciones
> Editar detalles.
- Utilice la opción Rotación automática para añadir o eliminar una política de rotación para el secreto.
Configuración de una política de rotación automática para las credenciales de IAM
Si prefiere planificar la clave de API para que se gire automáticamente a intervalos regulares, puede habilitar la rotación automática para las credenciales de IAM en su creación. También puede habilitar la rotación automática editando los detalles de un secreto existente. Elija entre un intervalo de rotación de 30, 60 o 90 días.
Si necesita más control sobre la frecuencia de rotación de un secreto, puede utilizar la API de Secrets Manager para establecer un intervalo personalizado utilizando unidades de tiempo de day o de month. Para obtener
más información, consulte el apartado Referencia de API.
- Si está añadiendo un secreto, habilite la opción de rotación seleccionando un intervalo de rotación de 30, 60 o 90 días.
- Si está editando un secreto existente, habilite la rotación automática actualizando sus detalles.
- En la tabla Secretos, vea una lista de sus secretos existentes.
- En la fila correspondiente al secreto que desea editar, pulse el menú Acciones
> Editar detalles.
- Utilice la opción Rotación automática para habilitar o inhabilitar la rotación automática para el secreto.
La rotación sólo está disponible para las credenciales de IAM donde la clave de reutilización está establecida en true. El intervalo de rotación definido no puede ser mayor que el tiempo de vida (TTL) definido. Puede establecer
el TTL para secretos utilizando unidades de tiempo minute, pero la rotación no está disponible para esos secretos.
Configuración de una política de rotación automática para las credenciales de servicio
Si prefiere programar el secreto de sus credenciales de servicio para que se rote automáticamente a intervalos regulares, puede activar la rotación automática para sus credenciales de servicio en el momento de su creación. También puede habilitar la rotación automática editando los detalles de un secreto existente. Elija entre un intervalo de rotación de 30, 60 o 90 días.
Si necesita más control sobre la frecuencia de rotación de un secreto, puede utilizar la API de Secrets Manager para establecer un intervalo personalizado utilizando unidades de tiempo de day o de month. Para obtener
más información, consulte el apartado Referencia de API.
- Si está añadiendo un secreto, habilite la opción de rotación seleccionando un intervalo de rotación de 30, 60 o 90 días.
- Si está editando un secreto existente, habilite la rotación automática actualizando sus detalles.
- En la tabla Secretos, vea una lista de sus secretos existentes.
- En la fila correspondiente al secreto que desea editar, pulse el menú Acciones
> Editar detalles.
- Utilice la opción Rotación automática para habilitar o inhabilitar la rotación automática para el secreto.
Configuración de una política de rotación automática para las credenciales personalizadas
Si prefiere programar la rotación automática de su secreto custom_credentials a intervalos regulares, puede activar la rotación automática de su secreto custom_credentials en el momento de su creación. También puede
habilitar la rotación automática editando los detalles de un secreto existente. Elija entre un intervalo de rotación de 30, 60 o 90 días.
Si necesita más control sobre la frecuencia de rotación de un secreto, puede utilizar la API de Secrets Manager para establecer un intervalo personalizado utilizando unidades de tiempo de day o de month. Para obtener
más información, consulte el apartado Referencia de API.
- Si está añadiendo un secreto, habilite la opción de rotación seleccionando un intervalo de rotación de 30, 60 o 90 días.
- Si está editando un secreto existente, habilite la rotación automática actualizando sus detalles.
- En la tabla Secretos, vea una lista de sus secretos existentes.
- En la fila correspondiente al secreto que desea editar, pulse el menú Acciones
> Editar detalles.
- Utilice la opción Rotación automática para habilitar o inhabilitar la rotación automática para el secreto.
Planificación de la rotación automática desde la CLI
Puedes programar la rotación automática de los secretos utilizando el complemento de la CLI de Secrets Manager.
Establecer una política de rotación automática para las credenciales de usuario
Planifique la rotación automática para las credenciales de usuario utilizando ibmcloud secrets-manager secret-metadata-update.
ibmcloud secrets-manager secret-metadata-update \
--id=SECRET_ID \
--rotation='{"auto_rotate": true,"interval": 30,"unit": "day"}'
Para eliminar una política, mantenga el bloque de recursos vacío.
Establecer una política de rotación automática para los certificados públicos
Planifique la rotación automática para certificados públicos utilizando ibmcloud secrets-manager secret-metadata-update.
ibmcloud secrets-manager secret-metadata-update \
--id=SECRET_ID \
--rotation='{"auto_rotate": true, "rotate_keys": true}'
Establecer una política de rotación automática para los certificados privados
Planifique la rotación automática para certificados privados utilizando ibmcloud secrets-manager secret-metadata-update.
ibmcloud secrets-manager secret-metadata-update \
--id=SECRET_ID \
--rotation='{"auto_rotate": true,"interval": 30,"unit": "day"}'
Configuración de una política de rotación automática para las credenciales de IAM
Planifique la rotación automática para las credenciales de IAM utilizando ibmcloud secrets-manager secret-metadata-update.
ibmcloud secrets-manager secret-metadata-update \
--id=SECRET_ID \
--rotation='{"auto_rotate": true,"interval": 30,"unit": "day"}'
Para eliminar una política, mantenga el bloque de recursos vacío.
Configuración de una política de rotación automática para las credenciales de servicio
Planifique la rotación automática para las credenciales de servicio utilizando ibmcloud secrets-manager secret-metadata-update.
ibmcloud secrets-manager secret-metadata-update \
--id=SECRET_ID \
--rotation='{"auto_rotate": true,"interval": 30,"unit": "day"}'
Para eliminar una política, mantenga el bloque de recursos vacío.
Configuración de una política de rotación automática para las credenciales personalizadas
Programe la rotación automática de las credenciales personalizadas mediante la opción ibmcloud secrets-manager secret-metadata-update.
ibmcloud secrets-manager secret-metadata-update \
--id=SECRET_ID \
--rotation='{"auto_rotate": true,"interval": 30,"unit": "day"}'
Para eliminar una política, mantenga el bloque de recursos vacío.
Planificación de la rotación automática con la API
Puede planificar la rotación automática de secretos utilizando la API de Secrets Manager.
Establecer una política de rotación automática para las credenciales de usuario
La siguiente solicitud de ejemplo crea una política de rotación automática para un secreto de credenciales de usuario (username_password) Cuando llame a la API, sustituya las variables de ID y la señal de IAM por los valores que
son específicos de la instancia de Secrets Manager.
curl -X PATCH
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H 'Content-Type: application/merge-patch+json' \
-d '{
"rotation": {
"auto_rotate": true,
"interval": 1,
"unit": "month"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/metadata"
Una respuesta correcta devuelve el valor de ID del secreto, junto con otros metadatos. Para obtener más información sobre los parámetros de solicitud necesarios y opcionales, consulte el apartado Referencia de API.
Para eliminar una política, mantenga el bloque de recursos vacío.
Establecer una política de rotación automática para los certificados públicos
Si prefiere planificar la renovación automática de los certificados, puede habilitar la rotación automática para los certificados al solicitarlos o editando los detalles de un certificado existente. En el siguiente ciclo de rotación del certificado, Secrets Manager vuelve a solicitar el certificado 31 días antes de que caduque.
Solicitar un certificado público que se renueva automáticamente
La solicitud de ejemplo siguiente solicita un certificado con la rotación automática habilitada. Cuando llame a la API, establezca la propiedad auto_rotate en true. Opcionalmente, puede establecer rotate_keys en true para solicitar una nueva clave privada para el certificado en cada rotación.
curl -X POST
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"rotation": {
"auto_rotate": true,
"rotate_keys": true
},
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets"
Una respuesta satisfactoria devuelve el valor de ID del certificado, junto con otros metadatos. Para obtener más información sobre los parámetros de solicitud obligatorios y opcionales, consulte el apartado Referencia de API.
Configuración de una política de rotación automática para las credenciales de IAM
La siguiente solicitud de ejemplo crea una política de rotación automática para un secreto de credenciales de IAM (iam_credentials). Cuando llame a la API, sustituya las variables de ID y la señal de IAM por los valores que son
específicos de la instancia de Secrets Manager.
curl -X PATCH
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H 'Content-Type: application/merge-patch+json' \
-d '{
"rotation": {
"auto_rotate": true,
"interval": 30,
"unit": "day"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/metadata"
Para eliminar una política, mantenga el bloque de recursos vacío.
Una respuesta correcta devuelve el valor de ID del secreto, junto con otros metadatos. Para obtener más información sobre los parámetros de solicitud necesarios y opcionales, consulte el apartado Referencia de API.
El intervalo de rotación definido no puede ser mayor que el tiempo de vida definido. La rotación sólo está disponible para las credenciales de IAM donde la clave de reutilización está establecida en true. Puede establecer el TTL
para secretos utilizando unidades de tiempo minute, pero la rotación no está disponible para esos secretos.
Configuración de una política de rotación automática para las credenciales de servicio
La siguiente solicitud de ejemplo crea una política de rotación automática para un secreto de credenciales de servicio (service_credentials). Cuando llame a la API, sustituya las variables de ID y la señal de IAM por los valores
que son específicos de la instancia de Secrets Manager.
curl -X PATCH
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H 'Content-Type: application/merge-patch+json' \
-d '{
"rotation": {
"auto_rotate": true,
"interval": 30,
"unit": "day"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/metadata"
Para eliminar una política, mantenga el bloque de recursos vacío.
Una respuesta correcta devuelve el valor de ID del secreto, junto con otros metadatos. Para obtener más información sobre los parámetros de solicitud necesarios y opcionales, consulte el apartado Referencia de API.
El intervalo de rotación definido no puede ser mayor que el tiempo de vida definido.
Configuración de una política de rotación automática para las credenciales personalizadas
La siguiente solicitud de ejemplo crea una política de rotación automática para un secreto de « custom_credentials ». Cuando llame a la API, sustituya las variables de ID y la señal de IAM por los valores que son específicos de
la instancia de Secrets Manager.
curl -X PATCH
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H 'Content-Type: application/merge-patch+json' \
-d '{
"rotation": {
"auto_rotate": true,
"interval": 30,
"unit": "day"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/metadata"
Para eliminar una política, mantenga el bloque de recursos vacío.
Una respuesta correcta devuelve el valor de ID del secreto, junto con otros metadatos. Para obtener más información sobre los parámetros de solicitud necesarios y opcionales, consulte el apartado Referencia de API.
El intervalo de rotación definido no puede ser mayor que el tiempo de vida definido.
Actualización del intervalo de rotación automática
Cuando se actualiza el intervalo de rotación automática de un secreto, Secrets Manager comprueba que la versión actual del secreto seguirá siendo válida hasta la próxima rotación programada.
Esta validación se aplica a los tipos de claves secretas que tienen una caducidad basada en el TTL:
Si la versión actual caduca antes de la próxima rotación programada, se rechaza la actualización del intervalo de rotación automática para evitar situaciones en las que un secreto caduque antes de que pueda rotarse. Si la validación falla, Secrets
Manager devuelve el error Error02009, lo que indica que la versión actual del secreto caducaría antes de la próxima rotación programada.
Por ejemplo, si la versión actual caduca dentro de 3 días y se establece un intervalo de rotación automática de 60 días, la actualización se rechaza porque la versión caducaría antes de la siguiente rotación.
En este caso, la versión actual caducaría antes de que se produzca la próxima rotación, por lo que no se permite la actualización.
Resolución de conflictos en la actualización del intervalo de autorrotación
Para resolver este problema, asegúrate de que la versión actual del secreto siga siendo válida más allá de la próxima fecha de rotación prevista. En función del tipo de secreto y de la configuración, puedes:
- Rota el clave para crear una nueva versión con una fecha de caducidad posterior.
- Actualiza el TTL del secreto (si es necesario) y renueva el secreto para que la versión activa actual siga siendo válida más allá de la próxima fecha de renovación programada.
Una vez que la fecha de caducidad de la versión actual se extienda más allá de la próxima fecha de rotación programada, el intervalo de rotación automática se podrá actualizar correctamente.