La creación de mashups empresariales y la seguridad del código
Martes 6 de noviembre de 2007
El concepto de los mashups ha revolucionado varias áreas de las tecnologías de la información forma más que notable. Por una parte han supuesto uno de los pilares sobre los que se basa el moderno concepto de Web 2.0 en cuanto a interactividad. Por otra parte han sido una revolución en cuanto a los principios de programación y gestión de datos.
Durante mucho tiempo el concepto clásico de programa era el del código que se encargaba de acceder a los datos, organizarlos y presentarlos de una determinada forma para que los usuarios finales interactúen de la forma que el programador ha dejado prevista. Una división de funciones en las cuales el programador es el eje de la gestión de los datos.
Los mashups rompen este esquema, ya que comienzan a estar disponibles herramientas que ni siquiera hacen necesarios conocimientos de programación para crearlos. Y las fuentes de datos disponibles son cada vez más abundantes. Además, como su propia definición indica, un mashup es un servicio que uniendo diversas fuentes de datos es capaz de crear un crear un nuevo servicio completo. Lo que facilita a su vez la creación de otros nuevos servicios.
En este número también tratamos un tema que no siempre la atención que se merece, como es la seguridad en el código, o cómo crear el código de forma que cumpla su función principal sin dejar resquicio para errores o fallos en su funcionamiento. Si de algo se quejan los usuarios finales es de los problemas asociados a las vulnerabilidades y los fallos en los programas. Con el agravante de que tanto unas como otras son aprovechadas, cada vez con mayor frecuencia, por delincuentes en busca de la información más preciada de las empresas o incluso del dinero, tanto de empresas como de particulares.
Para evitar los posibles fallos en una aplicación no sólo hay que tener buenas prácticas de programación, sino utilizar las herramientas de análisis que revisan detenidamente el código avisando de posibles defectos, como buffer overflow, o vulnerabilidades como inyección SQL o similares, para evitarlos en los programas creados.
El empleo sistemático de este tipo de herramientas deben ser una prioridad para toda empresa de desarrollo que se considere y todas las personas involucradas en la creación de un programa deben ser conscientes de su obligatoria aplicación para evitar todo tipo de problemas futuros.