Magic Quadrant™ para la gestión de acceso privilegiado 2025: Netwrix reconocida por cuarto año consecutivo. Descarga el informe.

Plataforma
Centro de recursosBlog
4 cosas que nunca debes almacenar en tu base de datos

4 cosas que nunca debes almacenar en tu base de datos

Feb 6, 2017

Las bases de datos se utilizan principalmente para dar soporte a diversas aplicaciones críticas para el negocio. Pueden almacenar muchos tipos de datos. Sin embargo, hay algunas cosas que nunca se deben guardar en una base de datos.

Estas técnicas básicas de seguridad de bases de datos ayudarán a proteger sus datos:

Credenciales no seguras

Probablemente esto sea obvio, pero no es una buena idea almacenar contraseñas en texto plano en tu base de datos.

Si un hacker obtiene acceso a los datos de esta tabla, tendrá una lista de todas las contraseñas de todos los usuarios. Estas contraseñas están en texto plano y legible, lo que se puede utilizar para iniciar sesión en el sistema como si el hacker fuera ese usuario. Esto podría no parecer un gran problema: si el hacker ya ha accedido al sistema, ¿por qué necesitaría un inicio de sesión? El problema es que las personas a menudo usan la misma contraseña para varias cuentas. Si un hacker tiene nombres de usuario y contraseñas, puede usar esa información en otros sitios. Entonces, ¿cómo solucionar este problema? Encripta la contraseña antes de almacenarla. Este proceso a menudo se llama “hashing” y también se puede combinar con “salting”.

El hashing consiste en aplicar un algoritmo a una contraseña ingresada, lo que la convierte en un valor cifrado. Este valor puede almacenarse luego en la base de datos. Para verificar una contraseña, el sistema realiza el mismo proceso de hashing con el valor que el usuario introduce y compara el resultado con el valor hash previamente guardado (es decir, la contraseña correcta).

Datos duplicados

Almacenar datos duplicados en su base de datos no es una buena idea. Ocupa más espacio en su base de datos, lo cual puede ser una cantidad considerable si tiene una base de datos grande. Además, puede causar problemas cuando necesita actualizar los datos, ya que necesita hacerlo en varios lugares. La única excepción a esto es cuando está creando un almacén de datos. Este tipo de bases de datos están optimizadas para consultas rápidas, en lugar de actualizaciones, y generalmente contienen datos duplicados.

Una de las ventajas de usar una base de datos relacional para almacenar datos es la capacidad de guardar los datos en múltiples tablas, con cada tabla representando una entidad, que luego se vinculan entre sí. A esto se le llama “normalización”. Te permite tener una sola tabla para cada entidad y usar números de identificación (u otros valores clave) para enlazar entre tablas.

Esto significa que es más fácil actualizar los datos si alguna vez necesitas hacer cambios en algunos valores. También ahorra espacio y a menudo puede mejorar el rendimiento al realizar cambios en los datos.

Archivos como imágenes

Las bases de datos te permiten almacenar archivos dentro de tablas en la base de datos, como imágenes.

Ahora, si bien puedes crear tablas y columnas para almacenar archivos (como el tipo de dato BLOB de Oracle), no significa que debas hacerlo. Almacenar un archivo en una tabla de base de datos significa que necesitas utilizar lógica de base de datos (y posiblemente lógica de aplicación) para acceder al archivo. Esto aumenta el tamaño de tu base de datos y degrada su rendimiento. También hace que los respaldos y la corrupción de datos sean más difíciles de manejar. Un enfoque mejor para almacenar archivos e imágenes es utilizar los servidores de archivos. Para eso están hechos. Hacerlo permite un acceso a archivos más rápido, un acceso más fácil a los metadatos de los archivos, y una funcionalidad de respaldo y restauración más sencilla.

Datos de tarjetas de crédito

Finalmente, no deberías almacenar información de tarjetas de crédito en tu base de datos a menos que sea absolutamente necesario.

Esto incluye nombres de propietarios de tarjetas de crédito, números, números CVV y fechas de vencimiento. Hay demasiado riesgo involucrado. Si un hacker obtiene acceso a los datos de tarjetas de crédito de su sistema, tiene un gran impacto en su empresa y sus clientes. También necesita ser auditado externamente para asegurarse de cumplir con estándares estrictos, a saber, PCI DSS, si almacena números de tarjetas de crédito. Esto crea más problemas para su departamento de TI y significa gastos adicionales. Un enfoque mejor es utilizar una solución existente, como Authorize.net o PayPal. Estas organizaciones ya han desarrollado el software, demostrado su cumplimiento y muchas otras empresas ya utilizan y confían en estas compañías. Es mejor evitar almacenar datos de tarjetas de crédito por completo. Hacerlo no vale la pena el riesgo, y otras empresas lo hacen mejor.

Compartir en

Aprende más

Acerca del autor

Asset Not Found

Ben Brumm

Desarrollador de Software & Analista de Negocios

Ben es un desarrollador de software y analista de negocios con más de 11 años de experiencia. Con base en Melbourne, Australia, ha estado trabajando con bases de datos y SQL tanto en su trabajo de tiempo completo, como fundador del sitio DatabaseStar.com donde enseña temas de bases de datos Oracle. Su pasión por el software y las bases de datos comenzó cuando inició clases de informática en la escuela secundaria a finales de los años 90 y ha ido creciendo desde entonces.