Estoy buscando orientación sobre el cifrado de campos (y/o tablas si es posible) para MySQL. Me conformaré con un tutorial decente, pero realmente me gustaría recibir consejos específicos sobre la gestión de la transición de un esquema no encriptado a uno que utiliza campos encriptados. ¡Gracias!¿Mejores prácticas para el cifrado MySQL?
Respuesta
Junto con AES_ENCRYPT para el campos, si está almacenando información confidencial, mejor enable SSL sobre el cable también. También considere la separación de red (vlan) de las máquinas de base de datos sensibles y otras prácticas de seguridad estándar. El almacenamiento de clave es importante (¿dónde está la clave de Aes compartida, seguramente no en el servidor web?) Y considere el impacto en los índices/consultas, ya que buscar o unirse a los datos de la tabla ya no será tan simple como antes.
Hay (al menos) dos enfoques en realidad. Puede cifrar los datos almacenados en las tablas (utilizando EAS/funciones DES por ejemplo http://dev.mysql.com/doc/refman/5.1/en/encryption-functions.html)
o puede utilizar la partición del disco duro cifrado para almacenar sus carpetas de datos (por ejemplo, con TrueCrypt)
¿Piensa qué intenta lograr con el cifrado? Desafortunadamente, no hay una solución segura simple.
Recuerde que la clave que está utilizando para el cifrado puede obtenerse de su código. Por lo tanto, desde la perspectiva de los piratas informáticos, eludir ese cifrado es bastante fácil. Necesitas pensar tu arquitectura e infra también.
En el caso de una aplicación web, el código puede no ser accesible, dependiendo de la arquitectura. Un atacante tendría que comprometer tanto la base de datos como el servidor/contenedor web. – edoloughlin
¿Cuál es el valor de encriptar la base de datos en el nivel de campo? ¿Es esto lo que realmente quiere, o será suficiente cifrar en el nivel de sistema operativo o SAN? ¿Planeas enrollar las llaves, o simplemente mantener la misma clave de encriptación para la eternidad? ¿El cifrado romperá índices de tabla, referencias o tipos de campo? ¿Cómo compartirá la clave de cifrado en un clúster de base de datos?
sólo estoy criando a estos puntos ya que el cifrado de base de datos es generalmente algo administración quiere, pero nadie realmente puedo explicar el valor añadido o la forma en que se llevará a cabo ...
el valor agregado es cumplimiento HIPAA, al menos para algunos. –
En primer lugar, sólo los datos el cifrado no es la respuesta.
Debe saber y controlar "Quién puede acceder y acceder a los datos".
Aunque cifre los datos, el atacante puede obtener los datos cifrados. Para evitarlo, debe controlar el privilegio o autoridad de acceso. Además, debe saber quién accedió a los datos encriptados. Porque en estos días, los datos pueden ser robados no solo por usuarios externos, sino también por usuarios internos.
Debe cifrar los datos, controlar los privilegios y auditar a los que accedieron.
En aquellos días, esas tres (3) tecnologías se han desarrollado en todos los sentidos. La mayoría de las compañías han comprado cada solución.
Pero para el usuario personal, es difícil comprarlo y construir ese entorno. Además, la función de cifrado de MySQL no proporciona esas funciones.
Me gustaría revisar esto link que proporciona esas tres (3) funciones.
En mi experiencia, puede proporcionar cierta seguridad. (Soy CISO de SME.)
- 1. php y mysql, mejores prácticas
- 2. mejores prácticas para el almacenamiento eficiente hash MD5 en MySQL
- 3. Mejores prácticas para C#
- 4. Índices MySQL: ¿cuáles son las mejores prácticas?
- 5. Mejores prácticas para almacenar claves secretas
- 6. Mejores prácticas de replicación de MySQL
- 7. Mejores prácticas de MySQL para usar SQL_CACHE y SQL_NO_CACHE
- 8. Mejores prácticas para la copia de seguridad de MySQL
- 9. Mejores prácticas para el cifrado de bases de datos en SQL Server 2005
- 10. Mejores prácticas para almacenar configuraciones
- 11. Registro para ASP.NET - Mejores prácticas
- 12. Mejores prácticas para la depuración
- 13. ¿Mejores prácticas para API seguras?
- 14. Mejores prácticas para Magento Deployment
- 15. ¿Mejores prácticas para autoguardar borradores?
- 16. ¿Mejores prácticas para generar tokens de OAuth?
- 17. ¿Mejores prácticas para usar memcached en Rails?
- 18. Mejores prácticas para importar archivos CSV grandes
- 19. DTO: mejores prácticas
- 20. PHP/MySQL: ¿Mejores operaciones de dinero/prácticas de almacenamiento?
- 21. Lista de mejores prácticas Tipos de datos MySQL
- 22. UITableView Mejores prácticas
- 23. mejores prácticas de ctags
- 24. Mejores prácticas de Javascript
- 25. Mejores prácticas de Sitecore
- 26. Selenium, Nunit ¿Mejores prácticas?
- 27. Mejores prácticas de Maven
- 28. mejores prácticas en PHP y MySQL con cadenas internacionales
- 29. Credenciales de MySQL/Mejores prácticas de variables de hosts
- 30. Mejores prácticas de optimización de base de datos MySQL
Gracias, algunas consideraciones buenas aquí –