Mostrando entradas con la etiqueta JOSSO. Mostrar todas las entradas
Mostrando entradas con la etiqueta JOSSO. Mostrar todas las entradas

Contribuciones a SoftwarePublico.cl

viernes, 17 de agosto de 2012 0 comentarios
Durante mi pasada estancia en Santiago de Chile, tuve el placer de asistir a la presentación de la iniciativa Software Publico del Gobierno de Chile. Esta iniciativa se fundamenta en el fomento del desarrollo de aplicaciones reutilizables por parte de las instituciones públicas, optimizando los procesos y acotando los tiempos de gestión, constituyendo un espacio de intercambio de desarrollo, contacto entre instituciones gubernamentales, empresas y abierto a la ciudadanía. Para ello se pone a disposición de las empresas proveedoras de servicios TI una forja de proyectos basada en Redmine, en la cual se van incluyendo proyectos que la administración pueda reutilizar. Os dejo aquí la presentación que realizo sobre dicho proyecto Patricio Astorga:



Entre estos proyectos se incluye en propio Redmine como herramienta de gestión de proyectos software, de tal forma que de forma conjunta con nuestros compañeros de Emergya administramos dicho proyecto y hemos llevado a cabo, desde nuestra filial chilena Ingenia Global un par de contribuciones dentro de este proyecto. Concretamente, se han proporcionado los plugins de integración de Redmine con JOSSO y Viafirma para facilitar la delegación de la responsabilidad de gestión de autenticación y autorización a estas herramientas.


Para más info sobre las contribuciones os dejo los siguientes enlaces:
Adicionalmente si os resulta de interes teneis disponible un resumen del evento de presentación de Software Publico en la web de Extenda.

Compárteme en: Eskup Facebook Tuenti Meneame Bitacoras Google Yahoo Windows Live

Mi pequeño grano de arena a Clinker

sábado, 19 de febrero de 2011 0 comentarios
Este es el post que acabo de redactar para los chicos de Klicap:

Uno de los ultimos hitos cumplidos dentro Clinker es el desarrollo de la integracion de este con Redmine, proporcionando la posibilidad de gestionar los usuarios de este último de forma centralizada mediante Clinker SSO. De esta forma se delega en Clinker SSO la responsabilidad de gestionar la autenticación y autorización de usuarios en Redmine garantizando la disponibilidad de este dentro de nuestro ecosistema software. Para llevar esto a cabo, se ha desarrollado un plugin para Redmine, parcialmente basado en el recientemente liberado Redmine JOSSO Authentication Plugin.

Este nuevo plugin tiene como objetivos: (i) gestionar las peticiones de autenticación en Redmine mediante Clinker SSO de tal forma que se gestione el acceso a zonas protegidas, (ii) gestionar los datos del usuario autenticado, sincronizando las propiedades del usuario registradas en Clinker SSO con Redmine, así como permitiendo crear de forma automatica usuarios en Redmine cuando no existan en la base de datos de este pero si en la de Clinker SSO, y por último, (iii) la autorizacion de estos usuarios estableciendo un mapeo entre los roles establecidos para los usuarios en Clinker SSO y su correspondencia en Redmine.

Este plugin, además, deberá ser capaz de recuperar un identificador de sesión de Clinker SSO generado en otra aplicación del ecosistema para autenticar y autorizar al usuario directamente en el momento que acceda a Redmine.

El desarrollo ha consistido en definir un nuevo agente de Clinker SSO para Redmine de tal forma que podamos establecer conexion con la WS API definida para este, y el rediseño del controlador de Redmine que gestiona las peticiones de autenticación de usuarios, AccountController. En el siguiente diagrama ilustra el diseño simplificado de la solución:

 Toda petición de acceso a Redmine nos redirige al formulario de login de Clinker SSO y en caso de autenticación correcta, se lleva a cabo en el controlador la gestión de permisos del usuario autenticado y la autorización del mismo a los recursos en Redmine sobre los que puede tener acceso en base a un determinado rol y para los proyectos en los que este sea miembro.
 Podeis acceder al post original aqui.

Compárteme en: Eskup Facebook Tuenti Meneame Bitacoras Google Yahoo Windows Live

Redmine JOSSO Authentication Plugin

miércoles, 2 de febrero de 2011 2 comentarios
Así es como se llama mi nuevo proyecto personal al que por fin he terminado de dar forma, intercalandose en el tiempo a la finalización de otro de mis plugins para Redmine, concretamente el de integración con Enterprise Architect. El objetivo de este plugin es poder gestionar el acceso a Redmine mediante un sistema de Single Sign-On (SSO), de tal forma que podamos reutilizar esa instancia de autenticación para acceder a otras aplicaciones donde se requieran credenciales de acceso. En esta ocasión he optado por hacer uso de JOSSO (Java Open Single Sign-On).

Tal y como anuncie ayer en mi Twitter, he llevado a cabo la liberación de este plugin en Github bajo licencia GNU GPL v2, asi como su publicación e indexación en el nuevo directorio de plugins oficiales de Redmine. 

El proceso de instalación del mismo es el habitual para otros plugins con la salvedad de que se requiere invocar a un pequeño script de inicialización que completa la gem josso-client para su correcto funcionamiento. A continuación, en función del entorno RAILS_ENV que se este usando para la instancia de Redmine sobre la que instalar el plugin, se llevara a cabo la configuración del mismo en el fichero config/josso_config.yml

1
2
3
4
5
6
7
8
9
development:
 enabled: true
 josso_root: http://localhost:8080/josso/
 partner_application_entry_url: http://localhost:81/redmine/login/
 session_timer: 1800
 josso_identity_manager: services/SSOIdentityManagerSoap
 josso_identity_provider: services/SSOIdentityProviderSoap
 josso_session_manager: services/SSOSessionManagerSoap
 josso_ws_timeout: 3000000

En este ejemplo podemos ver la configuración para el entorno de desarrollo, donde especificamos donde se encuentra la instancia de JOSSO sobre la que vamos a trabajar, asi como los puntos de acceso a los servicios web que nos proporciona, y la URL de Redmine sobre la que se va a realizar un punto de extension de su controlador para adaptarlo a nuestras necesidades.

En el siguiente video podeis ver un ejemplo del plugin en funcionamiento, en el cual se muestra como se gestiona el acceso de dos usuarios desde dos navegadores distintos, así como la gestión de permisos de estos dentro de Redmine una vez autenticados. 





Un par de detalles antes de concluir. Este plugin solo se ha centrado en la autenticación de los usuarios en Redmine, no en la gestión de los roles y/o permisos asociados de los mismos delegando esta responsabilidad totalmente a Redmine. Otra de las limitaciones es que no se posibilita por ahora la permutación de metodos de autenticación, así como el registro de nuevos usuarios, el cual no se sincroniza con los usuarios de JOSSO.  Por lo tanto, si queréis agregar nuevos usuarios tendréis que añadirlos también a JOSSO además de a Redmine. 


Compárteme en: Eskup Facebook Tuenti Meneame Bitacoras Google Yahoo Windows Live