Este documento describe la adopción y uso de Plone como sistema de gestión de contenidos en proyectos del gobierno venezolano. Explica brevemente qué es Plone y por qué se eligió, e informa sobre las experiencias, capacitación, mejoras y apoyo comunitario que se han desarrollado alrededor de su uso en sitios web gubernamentales y educativos.
Proyecto integrador. Las TIC en la sociedad S4.pptx
Plone CMS en el Proyecto CANAIMA GNU/Linux
1. Plone CMS en el Proyecto
CANAIMA GNU/Linux
“Experiencias reales hechas por
miembros comunitarios y través de la
organización social”
2. Licencia
Copyright (c) 2010 Leonardo J. Caballero G.
Permission is granted to copy, distribute and/or modify
this document under the terms of the GNU Free
Documentation License, Version 1.2 or any later version
published by the Free Software Foundation; with no
Invariant Sections, no Front-Cover Texts, and no Back-
Cover Texts. A copy of the license is included in the
section entitled "GNU Free Documentation License".
3. Agenda
¿Qué es Plone?, ¿Porque usar Plone?
Inicios del proyecto CANAIMA
Selección de plataformas
Plone como solución de CMS en CANAIMA GNU/Linux
Apropiación y transferencia tecnológica de Plone CMS.
Estado del arte actual.
Nuevas funcionalidades.
Próximas actividades, cayapas.
4. ¿Qué es Plone?
• Sistema de administración de contenido.
• Permite a usuarios no técnicos crear, editar y administrar un
sitio web.
• Fácil de instalar y utilizar.
• Prácticamente listo para producción desde la instalación.
• Es código abierto.
• Su nombre proviene de banda inglesa de musica, “The
Plones”.
5.
6. ¿Por qué usar Plone?
• Uno de los CMS Open Source más populares.
• Excelente plataforma para desarrollar aplicaciones de
contenido.
• En desarrollo constante y muy activo.
• Comunidad abierta y muy participativa.
• Respaldado por una fundación independiente.
7. Estado de Plone
• Versión 4,0, estable, liberada en 2010.
• Licencia: GNU General Public License (GPL).
• Es multiplataforma.
• Disponible en varios idiomas: inglés, español, entre
otros.
8. ¿Qué es Zope?
• Significa “Z Object Publishing Environment”
• Servidor de aplicaciones orientado a objetos.
• Utiliza el concepto de publicación de objetos.
• Larga historia, raíces desde 1995.
• Extensible a través de un mecanismo de productos
(plug-ins).
• Administrable a través del web con ZMI.
10. Zope Management Interface - ZMI
• Interfaz de administración de Zope.
• Muchas de las opciones de configuración de Zope y
Plone son a través de este mecanismo.
• Una de las grandes atracciones de Zope.
11. Instalación de Zope y Plone
• Binarios disponibles para Windows y Mac.
• Varias distribuciones de Linux incluyen paquetes.
• Para Linux o Unix, es más común compilar el propio.
• Lo recomendado, es usar el Instalador Unificado y la
herramienta buildout.
12. Tecnología de Plone
• Basado en el servidor de aplicaciones Zope.
• Extiende un producto de Zope llamado CMF (Content
Management Framework).
• Desarrollado en el lenguaje Python.
• Amplia utilización de estándares, como XHTML y CSS.
20. Declaración de Accesibilidad
“Nos hemos comprometido a utilizar nuestro
conocimiento y comprensión de las formas en que
distinta gente accede a Internet, para desarrollar
un sitio web que es claro y simple para que todo
el mundo lo utilice”
21. Accesibilidad
• Plone cumple un nivel de accesibilidad AA de las
Directrices de Accesibilidad para el Contenido Web
del W3C-WAI en su versión 1.0. Para validaciones
consulte http://www.tawdis.net/
• Soporte a aplicar contraste de colores para
daltónicos(as).
25. Estándares
• Soporte a Nivel de accesibilidad AA de las
Directrices de Accesibilidad para el Contenido
Web del W3C-WAI en su versión 1.0.
• Soporte a XHTML 1.0 y CSS valido, según lo
indicado por el W3C.
• Soporte a Dublin Core como meta-etiquetas
XHTML.
27. Problemas comunes de Seguridad
“Datos sin validar”
¿Cómo Plone lo soluciona?:
Los campos son validados
28. Problemas comunes de Seguridad
“Problemas de control de acceso”
¿Cómo Plone lo soluciona?:
Se basa en el modelo de seguridad de Zope.
ACL (Access Control List) y roles.
Seguridad basada en flujos de trabajos.
Perfiles predefinidos.
33. Problemas comunes de Seguridad
“Problemas con el manejo de sesiones y autenticación”
¿Cómo Plone lo soluciona?:
Autenticación se realiza en su propia base de datos.
Utiliza hash SHA-1 para las contraseñas.
Autenticación externa, se genera una sesión cifrada.
“Código desde sitio remoto”
¿Cómo Plone lo soluciona?:
Filtros para que no pueda introducirse código malicioso.
Las operaciones con posibles riesgos se chequean de
manera extra.
34. Problemas comunes de Seguridad
“Inyección SQL”
¿Cómo Plone lo soluciona?:
Plone no usa SQL.
Si lo usara, la comunicación se realiza por medio de un
conector que neutraliza ataques de este tipo.
“Incorrecto manejo de errores”
¿Cómo Plone lo soluciona?:
Plone no le presenta al usuario información interna.
Los errores son registrados en los archivos logs.
Un código de error se le entrega al usuario final.
35. Problemas comunes de Seguridad
“Ataque de denegación de servicio”
¿Cómo Plone lo soluciona?:
Configuración común en producción: Servidor proxy.
Squid, Varnish, Apache.
“Configuración insegura”
¿Cómo Plone lo soluciona?:
Estricta seguridad por defecto.
Corre sin privilegios en el servidor.
Usuarios web no tienen acceso al sistema de archivo.
36. Reporte de errores criticos
• Conjunto de tecnologías Plone/Zope/Python:
– Entradas CVE relacionadas con Plone: 10 (10)
– Entradas CVE relacionadas con Zope: 19 (4)
– Entradas CVE relacionadas con Python: 68 (46)
• Otras tecnologías basadas en PHP / Perl:
– Entradas CVE relacionadas con Drupal: 197 (183)
– Entradas CVE relacionadas con Joomla: 327 (314)
– Entradas CVE relacionadas con MySQL: 233 (136)
– Entradas CVE relacionadas con PostgreSQL: 66 (32)
– Entradas CVE relacionadas con PHP: 9,989 (7,276)
– Entradas CVE relacionadas con Perl: 2,544 (1,092)
69. Comunidades de usuarios de Plone
• Sitio Web
– http://www.plone.org/
• Listas de correo con tráfico constante:
– http://www.coactivate.org/projects/ploneve/lists
– http://lists.plone.org/mailman/listinfo/plone-conosur
– http://lists.sf.net/mailman/listinfo/plone-users
• Presencia mayor en IRC (Internet Relay Chat) en:
– http://webchat.freenode.net/?channels=plone-conosur
– http://webchat.freenode.net/?channels=plone
70. Comunidades de usuarios de Zope
• Sitio Web:
– http://www.zope.org/
• Listas de correo con tráfico constante:
– http://mail.zope.org/mailman/listinfo/zope
– http://mail.zope.org/mailman/listinfo/zope-dev
• Presencia mayor en IRC (Internet Relay Chat) en:
– http://webchat.freenode.net/?channels=zope
– http://webchat.freenode.net/?channels=zope-es
71. Comunidades de usuarios de Python
Sitio Web
– http://www.python.org/
Listas de correo con tráfico constante:
– http://www.coactivate.org/projects/pyve/lists
– http://mail.python.org/mailman/listinfo/python-list
Presencia mayor en IRC (Internet Relay Chat) en:
– http://webchat.freenode.net/?channels=python-ve
– http://webchat.freenode.net/?channels=python-es
72. ¡Gracias por su atención!
¡Visita mis sitios Web!
http://www.cenditel.gob.ve/
http://www.plone.org.ve/
http://lcaballero.wordpress.com/
¡Visita y descarga este trabajo!
http://www.slideshare.net/lcaballero/
¡Escribeme!
lcaballero@cenditel.gob.ve
leonardocaballero@gmail.com