Chakray gestión de identidades en aplicaciones web

5
CASO DE ÉXITO Sistema de Gestión de Identidades en Aplicaciones Web y en entornos SOA/BPM Nuestro Cliente, una importante Consultora en LATAM. Especialistas en Proyectos ENTERPRISE PERFORMANCE MANAGEMENT (EPM), con más de trece años de experiencia de Exito en países de Latinoamérica Para uno de sus Grandes Clientes, Una de las mas grandes petroleras del mundo , situada en LATAM, nos pidió una Solución de Integracion para un importante proyecto de Consolidacion Financiera en entornos Heterogeneos : Java, Portal (LIFERAY), SAP , BI (Pentaho), Bonita BPM. Después de una primera consultoría donde se propusieron diferentes alternativas objetivadas en base a los requerimientos de la futura solución y unas pruebas de concepto, se acaba de implementar una primera fase con Gran éxito basaba en Identity Server de WSO2 y Penrose Server Gestion de Identidades : La Gestión de Identidades es la mixtura de procesos de negocio y tecnologías usadas para gestionar información de usuarios en los Sistemas Informáticos y Aplicaciones. Esta es una definición clásica, aunque ahora en estos tiempos, donde las Aplicaciones son muy heterogéneas y muchas veces están en modo SaaS, la definición sigue siendo válida, pero ya no la tecnología subyacente. Como es obvio, la heterogeneidad hace que se la tecnología se oriente a estándares más abiertos e interoperables, es por ello que la selección de los mejores productos alineados a estos estándares hace posible abordar todos los procesos de negocio relacionados a las identidades (ciclo de vida de las identidades). Procesos relacionados a la Gestión de Identidades Cualquier Sistema de Gestión de Identidades debe ser capaz de cubrir todos o gran parte de los procesos o funciones relacionadas a las identidades o credenciales dentro de una Organización. Existen una gran variedad de aplicaciones comerciales y free-open source que cubren todas estas necesidades, algunas mejor adaptadas que otras ya que en un entorno Corporativo podemos encontrarnos aplicaciones muy heterogéneas. Los procesos relacionados son los siguientes: 1. Gestión de Identidades Aprovisionamiento de credenciales Desaprovisionamiento de credenciales Sincronización 2. Control de acceso Autenticación

description

Gestión de identidades en aplicaciones web

Transcript of Chakray gestión de identidades en aplicaciones web

Page 1: Chakray  gestión de identidades en aplicaciones web

CASO DE ÉXITO

Sistema de Gestión de Identidades en Aplicaciones Web y en entornos

SOA/BPM

Nuestro Cliente, una importante Consultora en LATAM. Especialistas en Proyectos ENTERPRISE

PERFORMANCE MANAGEMENT (EPM), con más de trece años de experiencia de Exito en países de

Latinoamérica

Para uno de sus Grandes Clientes, Una de las mas grandes petroleras del mundo , situada en LATAM,

nos pidió una Solución de Integracion para un importante proyecto de Consolidacion Financiera en

entornos Heterogeneos : Java, Portal (LIFERAY), SAP , BI (Pentaho), Bonita BPM.

Después de una primera consultoría donde se propusieron diferentes alternativas objetivadas en base a

los requerimientos de la futura solución y unas pruebas de concepto, se acaba de implementar una

primera fase con Gran éxito basaba en Identity Server de WSO2 y Penrose Server

Gestion de Identidades:

La Gestión de Identidades es la mixtura de procesos de negocio y tecnologías usadas para gestionar

información de usuarios en los Sistemas Informáticos y Aplicaciones. Esta es una definición clásica,

aunque ahora en estos tiempos, donde las Aplicaciones son muy heterogéneas y muchas veces están en

modo SaaS, la definición sigue siendo válida, pero ya no la tecnología subyacente.

Como es obvio, la heterogeneidad hace que se la tecnología se oriente a estándares más abiertos e

interoperables, es por ello que la selección de los mejores productos alineados a estos estándares hace

posible abordar todos los procesos de negocio relacionados a las identidades (ciclo de vida de las

identidades).

Procesos relacionados a la Gestión de Identidades

Cualquier Sistema de Gestión de Identidades debe ser capaz de cubrir todos o gran parte de los

procesos o funciones relacionadas a las identidades o credenciales dentro de una Organización.

Existen una gran variedad de aplicaciones comerciales y free-open source que cubren todas estas

necesidades, algunas mejor adaptadas que otras ya que en un entorno Corporativo podemos

encontrarnos aplicaciones muy heterogéneas.

Los procesos relacionados son los siguientes:

1. Gestión de Identidades

Aprovisionamiento de credenciales

Desaprovisionamiento de credenciales

Sincronización

2. Control de acceso

Autenticación

Page 2: Chakray  gestión de identidades en aplicaciones web

CASO DE ÉXITO

Autorización

3. Administración de Identidades

Gestión de Usuarios

Gestión de Contraseñas

Delegación

Directorio o Repositorio de credenciales

El Escenario de partida

En un escenario real nos encontramos con aplicaciones de negocio existentes muy heterogéneas que

necesitan unificar sus servicios de Autenticación, Autorización y la Administración de Identidades.

La mayoría de aplicaciones son de tipo web, otras exponen sus funcionalidades a través de una capa de

servicios (SOAP y/o REST), mientras que las restantes son ERPs o aplicaciones construídas sobre

tecnologías propietarias como SAP, Oracle, Microsoft.

Page 3: Chakray  gestión de identidades en aplicaciones web

CASO DE ÉXITO

El diagrama muestra la necesidad de integrar las funcionalidades de autenticación y autorización de

cada elemento que forma parte del ecosistema, evidentemente cada elemento requiere seguir una

estrategia de integración diferente ya que esto depende de diferentes elementos tales como:

Tipo de credenciales usados para autenticación.

Ya que es posible que una aplicación BPM puede requerir usuario y contraseña, mientras

que SAP requiere certificados X.509, además que muchas veces estas credenciales están en

repositorios de manera dispersa.

Modelo de permisos y roles.

Usando usuario y contraseña para acceder a Repositorio Documental tenemos permisos de

administrador, mientras que con las mismas credenciales accedemos como usuario de

lectura en Liferay Portal.

Protocolo de autenticación, autorización y SSO usado.

Para acceder a JBoss Drools requerimos autenticarnos usando vía LDAP, mientras que para

acceder a WSO2 ESB requerimos usar OpenID.

Nuestra Solución

En escenarios reales habría que identificar estos elementos que hacen que nuestro proyecto sea muy

particular y ante necesidades o requerimientos especiales hace que necesitemos cubrirlo con alguna

personalización, desarrollo nuevo o producto nuevo.

En este caso, con el uso de WSO2 Identity Server (WSO2 IS) y Penrose Server (Virtual LDAP) cubrimos

el 100% de necesidades.

Mientras que con WSO2 IS podemos resolver las necesidades de autenticación, autorización y SSO, con

Penrose Server podemos consolidar todas las fuentes de datos relacionadas a las credenciales e

identidades.

WSO2 Identity Server (www.wso2.com)

WSO2 IS es una plataforma que permite gestionar las identidades y la seguridad necesaria en las

Aplicaciones de negocio, servicios y el API desplegados a lo largo de la Organización. También permite

gestionar las identidades de uso interno, identidades compartidas y distribuidas en entornos SaaS.

Penrose Server como Virtual LDAP

Penrose Server es un Virtual Directory (LDAP) server construido en Java. Permite agregación

(consolidación) de base de datos de identidades provenientes de multiples heterogéneas fuentes como

LDAP Servers, Database Servers, Ficheros planos y Web Services (en tiempo real) y hace disponible una

interfaz LDAP que las Aplicaciones de Negocio puedan consumir dicha información sobre credenciales.

Page 4: Chakray  gestión de identidades en aplicaciones web

CASO DE ÉXITO

Arquitectura

En ecosistema tan heterogéneo como el mostrado en los diagramas, hacer Gestión de Identidades pasa

por hacer integración de sistemas donde los procesos a integrar serán los relacionados a seguridad

(autenticación y autorización), además los datos a integrar (agregar y consolidar) serán los relacionados

a las identidades o credenciales.

WSO2 IS es un producto que forma parte de la familia de productos de WSO2 orientados, que

básicamente son productos orientados a SOA, por tal motivos, WSO2 IS aprovecha mucho de esas

características haciendo la integración más fácil, escalable y adaptable a los diferentes elementos que

forman parte del ecosistema.

La propuesta arquitectónica se basa en el despliegue de WSO2 IS y usar todas sus funcionalidades para

integrar diferentes procesos de seguridad (autenticación, autorización y SSO) bajo diferentes protocolos.

Por otro lado, el uso de Penrose Server nos permite exponer una interfaz LDAP consolidada adaptable a

cada una de las aplicaciones de negocio que forman parte de nuestro ecosistema.

Page 5: Chakray  gestión de identidades en aplicaciones web

CASO DE ÉXITO

Procesos de integración realizados

Conclusiones

Un proyecto de Gestión de Identidades en entornos muy heterogéneos es y debe ser tratado como un

proyecto de integración de procesos de seguridad y de consolidación y agregación de datos de

identidades.

La Gestión de Identidades se divide en dos grandes fases, la primera está orientada a la Administración de

Identidades (consolidación y agregación de fuentes de datos de identidades), la segunda fase está

orientada al despliegue e implantación de cada uno de las estrategias de integración de seguridad

(autenticación, autorización y SSO).

El uso de WSO2 Identity Server nos permitió suficiente flexibilidad a la hora de desplegar las estrategias

de integración tanto para autenticación, autorización y SSO para cada una de las heterogéneas de las

aplicaciones existentes en nuestro ecosistema, esto quiere que WSO2 IS implementa una variedad de

protocolos alineados a facilitar la integración e interoperabilidad.

Para mas información: [email protected] y en www.chakray.com