martes, 7 de julio de 2009

Aspectos a tener en cuenta al crear sitios web públicos

Hace unos meses, un usuario de StackOverflow planteaba una interesante cuestión: ¿qué debería saber un desarrollador para construir un sitio web público? Es decir, ¿cuáles son aquellos aspectos importantes que deben tenerse en cuenta a la hora de crear un site de calidad, desde el punto de vista técnico?

Tras un tiempo de respuestas, ideas y debates, otro usuario ha realizado una recopilación de los aspectos y sugerencias más votadas y los ha publicado en forma de lista categorizada, donde podemos encontrar muy buenas ideas a tener en cuenta en nuestros propios desarrollos, y que me he permitido traducir.

Muchos de los puntos son obvios y seguro que ya los estáis teniendo en cuenta, quizás otros son demasiado exagerados, y seguro que alguno de ellos ni siquiera os los habíais planteado. En cualquier caso el resultado es una relación interesante y muy a tener en cuenta para mejorar nuestros sitios web.

Seguridad:

  • - Conocer la amplia guía de desarrollo OWASP, que cubre la seguridad de sitios web de forma muy completa.
  • - Conocer el fundamento de los ataques de inyección SQL y cómo prevenirlos.
  • - Jamás confiar en los datos introducidos por los usuarios.
  • - Evitar el almacenamiento de contraseñas en texto plano utilizando técnicas criptográficas como hashes y salts.
  • - No intentes utilizar tu magnífico y elaborado sistema de autenticación; es bastante probable que existan fallos impredecibles de los que sólo te darás cuenta después de haber sido hackeado.
  • - Usar SSL/HTTPS en las páginas de identificación de usuarios y, en general, en todas aquellas páginas donde sea introducida información sensible, como datos personales o bancarios.
  • - Evitar el secuestro de sesiones (session hijacking).
  • - Evitar los ataques XSS (Cross Site Scripting).
  • - Evitar los ataques XSRF (Cross Site Request Forgeries).
  • - Mantener tus sistemas actualizados con los últimos parches disponibles.
  • - Asegurarse de que la información de conexión a la base de datos está almacenada en un lugar lo suficientemente seguro.
  • - Mantener informado sobre las últimas técnicas de ataque y vulnerabilidades que afecten a la plataforma sobre la que trabajas.
  • - Conocer el manual The Google Browser Security Handbook.

Corrección de errores:

  • - Entender que pasarás el 20% del tiempo codificando y el 80% restante manteniéndolo, por tanto codifica apropiadamente.
  • - Configurar un buen sistema de notificación y gestión de errores.
  • - Habilitar sistemas para que los usuarios puedan contactar contigo y trasladarte críticas y sugerencias.
  • - Documentar cómo funciona la aplicación para facilitar el futuro soporte y mantenimiento del sistema.
  • - Poner a funcionar el sistema primero en Firefox y después en Internet Explorer.
  • - Hacer copias de seguridad frecuentes.

Para leer los puntos relacionado con "Interfaz y experiencia de usuario", "Rendimiento", "SEO" y "Tecnología" acceder al siguiente link.

Fuente Original: Variable not found.

Visto en www.variablenotfound.com


No hay comentarios: