¿Los secretos de Docker están seguros?

¿Los secretos de Docker están seguros?

Me preguntaba sobre el nivel de seguridad de los secretos de Docker, ya que se consideran seguros. Cuando le otorgo acceso a un servicio a un secreto, como se esperaba, puedo presenciar un tempfs montado en la ruta del contenedor ( /var/lib/docker/containers/<container ID>/mounts/secrets) en el nodo que aloja la tarea del servicio. Sin embargo, pude capturar el archivo dentro de esta ruta y ver el contenido del secreto.

En ese momento me preguntaba qué hace que los secretos sean más seguros que las configuraciones. Que yo sepa, el hecho de que estén almacenados en discos RAM es la diferencia clave entre ellos y las configuraciones. Tanto las configuraciones como los secretos están cifrados dentro de la balsa, la única diferencia es que las configuraciones se almacenan en archivos en discos mientras están montadas en contenedores, a diferencia de los secretos que residen en discos RAM. Pero si puedo ver el contenido de los secretos, ¿realmente hay alguna diferencia?

Respuesta1

Desafortunadamente,estar segurono es un término fácil. Prefiero hablar deEvaluación de riesgosyaceptación de riesgo. Todo se trata de responder las preguntas, qué tan paranoico eres; qué tipo de solución afirma ser segura.

Por documentación,tenemos:

Cuando agrega un secreto al enjambre, Docker envía el secreto al administrador del enjambre a través de una conexión TLS mutua. El secreto se almacena en el registro de Raft, que está cifrado. Todo el registro de Raft se replica entre los demás administradores, lo que garantiza las mismas garantías de alta disponibilidad para los secretos que para el resto de los datos de administración del enjambre.

Disponibilidad de secretos.Por contenedorefímero. Nunca se sabe en qué nodo está funcionando su contenedor y no debería importarle mucho. Dicho esto, estos secretos deberían estar disponibles en todos los lugares donde se ejecuta el contenedor.

Secretos en la memoria.Hay una especie de artículo sobre cómo guardar secretos en la memoria,aquí. El problema es... si no confía en su sistema y en su administración de memoria, tiene un problema mucho mayor que simplemente la contraseña guardada en la memoria.

Diferencia.

  • Los secretos en el archivo generalmente se guardan en texto plano.configuración wpEs mucho mejor mantenerlos cifrados de forma persistente y no cifrados únicamente en la memoria.
  • Los secretos deben sergirado.

Dicho esto, puedes lograrcasilo mismo, manteniendo su archivo secreto cifrado conabresl, descifrelo y guarde el contenido no cifrado en la memoria. Todo eso lo harías manualmente.

información relacionada