Rotación automática de secretos de Cloud SQL

En este documento, se describe la rotación automática de secretos de Cloud SQL en Secret Manager. Con la rotación automática, Secret Manager genera una contraseña segura, actualiza el secreto en la instancia de base de datos de Cloud SQL de destino y almacena el nuevo secreto como la versión más reciente del secreto.

Beneficios de la rotación automática

La rotación automática proporciona las siguientes ventajas:

Conceptos clave

Para usar la rotación automática, debes comprender los siguientes conceptos:

Tipos de secretos

Puedes usar tipos de secretos para categorizarlos. Para habilitar la rotación automática, selecciona el tipo de secreto Cloud SQL DB credentials durante la creación. Para obtener más información, consulta Crea un secreto regional.

Los secretos existentes no admiten la rotación automática.

Identidades integradas para secretos

Los secretos son tipos de recursos con identidades integradas. Cada secreto tiene un identificador único que lo distingue de todos los demás recursos de tu proyecto Cloud de Confiance by S3NS . El sistema genera automáticamente este identificador único cuando creas un secreto y lo almacena en el campo iamPolicyUidPrincipal del recurso secreto. Para obtener más información, consulta Identidades integradas para recursos.

Debes otorgar a la identidad integrada los permisos necesarios para actualizar las credenciales en tu instancia de Cloud SQL. Esto garantiza que un secreto solo tenga los privilegios necesarios para rotar sus propias credenciales, lo que cumple con el principio de privilegio mínimo.

Programa y estado de rotación

Puedes usar programas de rotación para especificar con qué frecuencia deseas rotar los secretos. Por ejemplo, cada 30 o 90 días.

El sistema hace un seguimiento del estado del programa de rotación con el estado de rotación del secreto:

  • Enabled: El programa de rotación está habilitado y la rotación más reciente se realizó correctamente.
  • Disabled: Se pausó el programa de rotación. El estado también cambia a Disabled si falla un intento de rotación.

Estrategia de rotación

Cada secreto de Cloud SQL DB credentials administra un conjunto de credenciales de base de datos (ID de instancia de Cloud SQL, nombre de usuario y contraseña).

Durante la rotación, Secret Manager genera una contraseña segura para el usuario de Cloud SQL y actualiza el secreto tanto en Secret Manager como en la instancia de Cloud SQL de destino.

Ciclo de vida de la rotación

El proceso de rotación automática sigue un ciclo de vida específico que administra Secret Manager, y el flujo de trabajo incluye los siguientes pasos:

  1. Inicio: El proceso comienza según el programa de rotación configurado o una rotación manual a pedido.
  2. Generar: Secret Manager genera una contraseña segura que cumple con las políticas de contraseñas de Cloud SQL.
  3. Sincronizar: Secret Manager actualiza la contraseña en la instancia de Cloud SQL de destino y almacena el secreto nuevo como la versión más reciente del secreto. En esta etapa, la instancia de Cloud SQL tiene la contraseña nueva, pero el secreto alias aún apunta a la versión anterior.
  4. Actualiza el alias: Secret Manager actualiza el alias del secreto para que apunte a la nueva versión del secreto.
  5. Enviar notificación: Si está configurado, Secret Manager envía una notificación de Pub/Sub para alertarte sobre el éxito o el fracaso de la rotación.

Si falla la rotación, el sistema lo reintenta automáticamente. Si la falla persiste, Secret Manager establece el estado de rotación en Disabled. Para reanudar la rotación, debes resolver el problema subyacente y volver a habilitar la rotación.

¿Qué sigue?