Encriptación con Mongo

11

¿Cómo puedo lograr los siguientes objetivos?

  • Toda la computación y el almacenamiento se ubicarán en la nube.
  • Cifrado en tránsito de todos los datos entre los nodos web y los nodos db que ejecutan MongoDB.
    • ¿Cómo configurar túneles? ¿Qué protocolos / herramientas?
  • Cifrado en el resto de los datos almacenados en MongoDB.
  • Se realiza una copia de seguridad de todos los datos (también en la nube) con frecuencia.
    • Las copias de seguridad se cifran en tránsito y en reposo.
  • Todos los problemas de cifrado y administración de claves se manejan en la infraestructura, no en la aplicación.
    • No debe requerir ningún cambio en el código de la aplicación.
  • Las claves para todo el cifrado en reposo pueden rotarse regularmente.
    • El proceso de rotación de claves es simple, programable y automatizable.
    • Los datos almacenados en el pasado deben ser recuperables en cualquier momento, incluso después de muchas rotaciones de teclas arbitrarias.
    • Las copias de seguridad deben ser recuperables durante un período de tiempo: deben sobrevivir al menos a una rotación clave.

Publique, incluso si solo tiene respuestas parciales o respuestas a un solo punto. Una solución para un objetivo secundario es parte de la solución para el objetivo general.

¡Gracias de antemano por tus respuestas!

    
pregunta yfeldblum 11.04.2011 - 18:10
fuente

2 respuestas

7

Sus requisitos no son específicos de la nube. Esta misma solución funcionará con un hosting tradicional. El sello distintivo de la computación en la nube es el consumo dinámico de recursos al arrancar las máquinas virtuales solo cuando las necesita.

1) Hasta donde sé MongoDB no es compatible con SSL . Para tener una conexión segura con MongoDB, tendrá que usar una VPN para crear un túnel seguro.

2) Casi siempre es mejor cifrar los datos antes de insertarlos en su base de datos. Desde una perspectiva de seguridad, si su base de datos se ocupa del cifrado, entonces requiere una clave y la base de datos está comprometida, entonces los datos cifrados también están comprometidos. Esto debe ser cuidado por su aplicación, también tenga en cuenta que un cifrado de flujo producirá mensajes más pequeños y ahorrará espacio. Los cifrados de flujo son seguros si se usan correctamente, (IV exclusivo para cada mensaje).

3) Hay muchos servicios de copia de seguridad que utilizan cifrado. Si está haciendo rodar el suyo, le recomiendo que utilice el proyecto de código abierto Bacula .

    
respondido por el rook 11.04.2011 - 18:55
fuente
3

MongoDB solo está relacionado con 1/10 de lo que estás preguntando, creo. Básicamente, desea saber cómo almacenar de forma segura los datos y las claves asociadas en la nube. Hay libros enteros escritos sobre esto ... :)

Su pregunta puede ser demasiado amplia para que pueda ofrecer una respuesta razonable, pero otros pueden hacerlo mejor.

Dicho esto, hay una gran guía de patrones y prácticas escrita por Microsoft en secure su aplicación en la nube . Sin embargo, esto es específico de Azure.

    
respondido por el Steve 11.04.2011 - 18:50
fuente

Lea otras preguntas en las etiquetas