23 oct 2010

Seguridad en Ruby on Rails

Ruby on Rails (RoR o simplemente Rails) es un marco de desarrollo para aplicaciones Web de código abierto que está gozando de una gran popularidad en los últimos años. Rails sigue el paradigma de la arquitectura Modelo Vista Controlador (MVC) y se caracteriza por un elevado nivel de productividad en comparación a su curva de aprendizaje. Se basa en dos principios, "No te repitas", es decir, las definiciones deberían hacerse una sola vez y "Convención sobre configuración" , que se refiere al hecho de que el programador sólo necesita definir aquella configuración que no es convencional.

Desde su concepción a finales del año 2005, Rails ha ido evolucionando apoyado por un creciente número de desarrolladores hasta convertirse en un framework de programación Web sólido, escalable, bien documentado, preparado para el entorno empresarial y con una concienciación sobre la seguridad que ya apuntaba maneras desde sus orígenes.

Actualmente, aunque la última versión disponible de Rails es la 2.3.5 , el salto a la nueva generación (versión 3) tras la fusión con Merb -- otro framework de desarrollo Web sobre Ruby -- parece inminente, y dado el grado de avance del proyecto, está previsto que se produzca a lo largo de este año 2010.

Desde el punto de vista de la seguridad, la nueva generación de Rails ofrece interesantes posibilidades, como el uso de middleware a medida utilizando rack (http://guides.rails.info/rails_on_rack.html), además de incorporar de forma oficial soluciones que en las versiones anteriores de rails estaban implementadas en plugins.

Tanto si estamos desarrollando con Rails en la rama 2.3.x como si tenemos en mente acometer la migración o el desarrollo de una nueva aplicación empresarial basada en la versión 3 de Rails, existen una serie de consideraciones que deberemos tener en cuenta si queremos implementar un adecuado nivel de seguridad en nuestra aplicación Web.

Primeramente, veremos algunos de los errores típicos que se cometen durante el desarrollo y que tendrán implicaciones en mayor o menor medida en la seguridad de nuestra aplicación. Obvia decir que los ejemplos utilizados están muy simplificados para facilitar su comprensión.

En la segunda parte de este documento se ofrecen recomendaciones y consideraciones a tener en cuenta durante el desarrollo. Además se comentan algunas soluciones disponibles en forma de plugins que contribuirán a mejorar la seguridad de las aplicaciones desarrolladas con Rails.

Suscríbete a nuestro Boletín

0 Comments:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info.

Gracias por comentar!