Implementación de autenticación federada con WSO2 Identity Server 5.1
-
Upload
wso2-inc -
Category
Technology
-
view
464 -
download
5
Transcript of Implementación de autenticación federada con WSO2 Identity Server 5.1
Quiénes Somos
Presentación Corporativa
CHAKRAY : “Palabra Quechua que describe el buen uso que en el mundo Andino se le ha dado a la Tecnología para el trabajo con la tierra.”
Aportamos excelencia en la Arquitectura, Soporte al Desarrollo y
Formación de Sistemas de Información Críticos basados en los
productos WSO2 tanto a Integradoras como a Clientes Finales.
“ Haciendo Bien las cosas con WSO2”
Preferent Partner
www.Chakray.com
Nuestros Principios
• Hacemos bien las cosas. Sabemos que la Tecnología es Soporteal Negocio y conocemos su Criticidad
• Somos Especialistas en las soluciones que proponemos
• No reinventamos la rueda .Trabajamos con ArquitecturasEscalables bajo una Orientación a Servicios SOA (ServiceOriented Architecture) sobre una Arquitectura de ReferenciaProbada.
• Aplicamos la Seguridad a todos los niveles de la Solución
• Nuestra Solución es Virtualizable y orientada a la Nube
Nuestros Servicios
Consultoría Tecnológica
Planificación estratégica Arquitectura.
Optimización de procesos Oficina Técnica
Soporte al Desarrollo , Implantación y Despliegue
Formación
Formadores Acreditados por WSO2 para impartir sus cursos Oficiales .
Nuestros Servicios
RFP
Soporte al Arranque Modelo de Ciclo de Vida
Oficina Técnica del ProyectoSoporte Extendido y Mantenimiento
Formación
Arquitectura (Fis. & Log.)
PoC
Ofrecemos Arquitectura de Solución, Acompañamiento durante el Proyecto(Especialistas en modo total o Parcial, Presencial o Remoto) , Formación delequipo mixto, Puesta en Producción y Soporte .
Somos Especialistas y nos agregamos al equipo de Proyectoaportando el conocimiento de primer nivel, contando con el soportede los fabricantes.
Consultoria Tecnologica
El servicio de consultoría especializada serealiza por personal altamente cualificadoy certificado por el fabricante.
La finalidad de la consultoría es servir decanalización hacia una solución viabledentro de un marco tecnológicopreestablecido de forma que, a partir delinforme de consultoría, se puedan seguir lasdirectrices marcadas por el consultor.
El resultado del servicio de consultoría serála elaboración de uno o varios informes ydocumentos que describan, tanto laidentificación del problema, como lasolución, viabilidad o acciones correctivasnecesarias.
Alta Disponibilidad Diseño de Arquitectura de HASelección de tecnología para implementar HAFormación a SistemasDocumentación
Integraciones Definición de requisitos, alcanceEstrategia de IntegraciónPrueba de concepto IntehgraciónDocumentación
MigracionesDiseño de estrategia Inventario de recursosMigración en brutoResolución de incidencias de migraciónPruebas de migración
Integraciones avanzadas Integración con Legacy Systems
Pruebas de Concepto (PoCs)
Toda prueba de concepto esta referenciada a un proyecto global que el cliente quiereacometer en breve y del que extraemos una fracción representativa donde aplicar yvalidar los requisitos previamente definidos.
INICIO FASE 1 FASE n FIN
La elaboración de una Prueba de Concepto (PoC) tiene como objetivo:
Validar una serie de aspectos técnicos y funcionales deuna solución específica por parte de las diferentes áreasimplicadas
La prueba de concepto es una herramienta que va a permitir al cliente minimizar losriesgos en el momento de afrontar un proyecto de envergadura en inversión dadoque podrá contrastar aspectos críticos del proyecto.
“PoC”
Prueba de Concepto
Formacion
Estamos Acreditados por WSO2 para impartir los cursos de Certificaciónoficiales. Unica Empresa que imparte en Castellano (e Ingles) tantopresencialmente, como Online
La formación será impartida por consultores y formadores certificados en lamateria a abordar. El número de jornadas y la duración de las mismasdependerá del tipo de formación que se requiera.
http://wso2.com/training/training-courses
El ecosistema de productos WSO2 está soportado sobre unasuite que permite el manejo de diversos escenarios para lagestión de identidades y procesos de autorización y autenticación.
Dentro del ecosistema WSO2 existe un producto denominadoIdentity Server que cumple con todos los requerimientos deseguridad existente en la gran mayoría de los Sistemas deInformación.
UNA VISION SOBRE WSO2 Identity Server
WSO2 IS - Características
• WSO2 Identity Server proporciona gestión deidentidades para aplicaciones web, servicios y Apis.
• Identity Server actúa como un Bus Empresarial deIdentidad (BEI), una red troncal centralizada paraconectar y gestionar múltiples identidades.
• Soporta múltiples User Store.
• Soporta los estándares XACML 2.0/3.0 y SAML.
• Soporta control de acceso basado en roles (RBAC).
• Permite el control de políticas de acceso y derechosmediante interfaces de usuario.
• Proporciona un Api de servicios para la gestión deidentidades que puede ser utilizado por aplicaciones.
• Soporta Single Sign-On (SSO) via OpenID, SAML2, yKerberos KDC.
• Provee servicios de delegación vía OAuth 1.0a, OAuth2.0, y WS-Trust
WSO2 IS - Características
• Soporta Federación vía OpenID, SAML2, y WS-TrustSTS.
• Soporta políticas de control de acceso fino via XACML.
• Implementa seguridad sobre servicios REST con OAuth2.0 y XACML.
• Permite despliegues en HA y Dockerizados.
• Integrado con WSO2 Enterprise Service Bus paraautorización y todos los productos WSO2 Carbon.
• Políticas de validación/expiración de passwords.
• Recuperación de cuentas vía email.
• Preguntas secretas.
WSO2 IS – Conjunto de componentes Open Source
• WSO2 Carbon
• Apache Axis2 (SOAP)
• Apache Axiom (High performance XML Object Model)
• Apache Rampart/Apache WSS4J (WS-Security, WS-SecureConversation)
• Apache Rahas (WS-Trust)
• WS-Addressing implementation in Axis2
• Apache Neethi (WS-Policy)
• WS-SecurityPolicy implementation in Axis2
• Apache XML Schema
• OpenID4Java
• SunXACML
• OpenSAML2
• Apache Directory Server
• Apache Oltu
WSO2 IS – Arquitectura interna
Aplicando Seguridad a una Organizacion
• Primera fase:
• Gestión de Accesos e Identidades (IAM).
• User credential lifecycle Management
• Modelo de usuarios
• Servicio de Autenticación
• Servicio de Autorización
• Servicio de SSO
• Segunda fase:
• Seguridad de la Información
• PKI, Firma Digital
• Gestión Centralizada de Documentos
• Tercera fase:
• Security Compliance:
• Gestión de Riesgos de activos de la empresa
• Continuidad de Negocio
• Cuarta fase:
• Auditabilidad y “no repudio”
Federated User
Management
(Penrose Virtual
Directory)
Portal B2B (WSO2 UES, BAM, AM, ES)
Service-oriented Infraestructure (SOI) e IAM
BAM, BI
& BigData
(WSO2 SS,
BAM, CEP)
Enterprise Service Bus (WSO2 ESB)
Portal B2C (Liferay Portal)Identity Management
(WSO2 IS)
Web Portlets Mobile B2B APIAuthentication,
Authorization
Single Sign-On
Consolidation
of Identities
New Business
Application
Systems
Dashboard OpenDataCollaboration
Presentation
Layer
Orchestration
Layer
Business Service
Layer
CONTROLLER
MODEL
VIEW
SE
CU
RIT
Y
PHP, Ruby, Python,
Java
User Management
Social Login
BPM Applications
(Bonita BPM)
Existing Business
Applications
Openia CRM
Alfresco ECM
Openbravo ERP Bonita Studio
Bonita Workflow
Engine
Bonita UX Portal
SERVICES
GOVERNED SERVICES
Desplegando IAM en la Organización (1/2)
• La implantación o el desarrollo de un proyecto de IAM en la Organización se aborda como un Proyecto de Integración siguiendo los Principios SOA/SOI.
*
*
*
*
*
*
*
*
*
*
Federated User
Management
Portal B2B (WSO2 UES, BAM, AM, ES)
Identificando Productos y Tecnología para IAM
BAM, BI
& BigData
(WSO2 SS,
BAM, CEP)
BPM Applications
(Bonita BPM)
(WSO2 ESB)
Portal B2C (Liferay Portal)Identity Management
Web, Collab, Mobile, Portlets B2B API
(Penrose Virtual
Directory)
Existing Business
ApplicationsNew Business
Application
SystemsBonita Studio
Bonita Workflow
Engine
Dashboard OpenData
Presentation
Layer
Orchestration
Layer
Business Service
Layer
CONTROLLER
MODEL
VIEW
SE
CU
RIT
Y
Bonita UX Portal
SERVICES
PHP, Ruby, Python,
Java2
3
4
5
6
7
9
10
8
(WSO2 IS)
1
GOVERNED SERVICES
9
9
Desplegando IAM en la Organización (2/2)
1. User Credentials Management
IAM - uses cases
• WSO2 Identity Server:
• Multiples User Storages.
• User Storage using LDAP embeded,
LDAP external and external DB.
• Authentication, Authorization and SSO.
• Exposes complete API to user
management.
• Provisioning via SCIM.
• Policies
• Penrose Virtual Directory
• Can integrated existing LDAP and DB
storing user credentials.
• Exposes a LDAP interface that can be
used as external LDAP for WSO2 IS.
• Bidirectional sync (LDAP in read/write
mode)
2. AuthN and AuthZ for Ad-hoc Applications
• WSO2 Identity Server exposes API to user
management.
• Recovery.
• Change password.
• Update profile.
• WSO2 IS exposes AutheN/AuthZ Services
using serveral strategies/protocols:
• OpenID, SAML, OAuth, XACML, RBAC,
etc.
IAM - uses cases
3. AuthN and AuthZ for existing ERP and ECM
• Centralized User Management.
• Openia CRM is a module for Openbravo
ERP. Openbravo ERP already have
functionalities to user management, then
Openbravo should be configurated
pointing to the embeded LDAP of WSO2
IS or Penrose Virtual Directory.
• In similar way, Alfresco ECM should be
configures with this LDAP.
• Authentication and Authorization.
• It is not necessary if you extend ERP or
ECM because user credentials and roles
are in LDAP storage.
• Calling Services of Openbravo ERP or
Alfresco ECM requires HTTP Basic
Authentication. Try it using HTTP over
SSL.
IAM - uses cases
5. AuthN and AuthZ for Bonita BPM
• Any BPM Suite has 3 components:
• Designer (Bonita Studio)• In time of processes modeling, obtain
representation of hierarchy of users,
groups, roles is a great help for
business process expert.
• Bonita Studio is based in Eclipse IDE
and It is possible to model following this
representation of hierarchy of users,
groups and roles using “Bonita’s Actor
Filter”.
• Workflow engine (Bonita Workflow
Engine)• In this case we should cofigure
Workflow engine to get hierarchy from
external LDAP server.
• TaskList Portal (Bonita UX Portal)• AuthN and AuthZ process is delegated
to external LDAP. Bonita UX Portal has
to configure pointing to LDAP server.
IAM - uses cases
4. AuthN and AuthZ for existing Services
• User Storage in WSO2 IS can be used as
User Storage for WSO2 ESB.
• Authentication and Authorization:
• In WSO2 ESB you can enable/disable
security over the exposed services.
• WSO2 IS offers several protocols and
strategies as a Trusted-third-party, of this
way, you can reach SSO and Federation of
Identities.
IAM - uses cases
7. AuthN and AuthZ for the Presentation Layer
• Any Web Portal server commonly has a
LDAP connector to sync users, groups
and/or roles. Also, any Web Portal has
connectors to do authentication and
authorization, for example, Liferay has tools
for these purposes.
• WSO2 IS provides OpenID functionality that
can be used with Liferay Portal easily.
• Review the strategies to authentication,
authorization and SSO of WSO2IS suitable
to our environment.
IAM - uses cases
1. Start login process
2. Pass login process to Bonita
3. Bonita passes login process
4. OB passes login process
5. WSO2IS sends response
6. OB redirects response
7. Bonita redirects response
8. Liferay receive response
Authentication in Openbravo
1. Start login process
2. Pass login process to Bonita
3. Validate credentials
4. WSO2IS sends response
5. Bonita redirects response
6. Liferay receives response
Authentication in Bonita
1. Start login process
2. Validate credentials
3. WSO2IS sends response
4. Liferay receives response
Authentication in Liferay
Deploy WSO2
Identity Server,
create several users
and roles.
Consolidate user
credentials (Penrose
Virtual Directory) and
Deploy LDAP WSO2 IS
Configure LDAP
Authentication in
Liferay pointing to
the embedded LDAP
of WSO2 IS.
Enable Users and
Roles (Group) sync.
In this step is possible to
do LDAP Authentication
and User syncronization.
Configure LDAP
Authentication and
users sync in Bonita
pointing to the
embedded LDAP of
WSO2 IS.
Right now this
functionality is available
in Bonita BPM
Teamwork version
(http://www.bonitasoft.co
m/products/product-
comparison).
Configure LDAP
Authentication and
users sync in
OpenBravo pointing
to the embedded
LDAP of WSO2 IS.
Configure LDAP
Authentication and User
syncronization of
OpenBravo with
embedded LDAP of
WSO2 IS.
Check the
authentication flow
and user sync flow
in all the system.
Testining authentication
an sync of users.
LIFERAY WSO2IS BONITA OPENBRAVO
LIFERAY WSO2IS BONITA OPENBRAVO
1.
2.
3.
4.
5.
IAM – flow diagram
WSO2 IS – Beneficios
• Permite la conformación de un proveedor único de identidad para laautenticación y autorización.
• Se fomenta la utilización de un sistema basado en el reconocimiento,eliminando por completo el modelo de nombre de usuario / contraseña.
• Elimina el riesgo creado a partir de múltiples nombres de usuario ycontraseñas.
• Soporta los estándares para el inicio de sesión único como (SSO): OpenID,OAuth, SAML2 y Kerberos.
• Se fomenta el uso de autenticación basada en tokens y certificados.
• Soporte de federación, en la cual las instituciones del Ecuador pueden abrirsus servicios de autenticación y autorización de forma segura utilizandoprotocolos como SAML2, OpenID, OAuth, Seguridad Token Service (STS)e InfoCards.
• Soporta la delegación de Identidad mediante OAuth.
• Soporta políticas de autorización mediante los tipos de control de accesobasado en roles y atributos.
• Soporte del estándar de facto para la autorización XACML mediante dosasistentes de políticas.
WSO2 IS – Recomendaciones (1/2)
• Utilizar una estrategia de implementación soportada por Role-BasedAccess Control (RBAC) en conjunto con el estándar XACML. Ambossistemas son gestionados por el WSO2 Identity Server.
• Utilizar el estándar XACML para proporcionar políticas de autorización degrano fino, la cual incluye servicios de administración de políticas deautorización, de intercepción, evaluación e información de solicitudes.
• Utilizar el estándar XACML sobre los protocolos OpenID, SAML2 oKerberos.
• Conformar un API transversal de servicios que estandarice laadministración de servicios de autenticación y autorización en el estado delEcuador mediante un middleware de soluciones WSO2 Open Sourcesólido, ágil y pragmático.
• Utilizar un modelo de políticas de acceso a recursos dinámico, flexible ybasado en la web para autenticación y autorización basado en WSO2 IS.
• Interoperar con el Bus de Servicios de la Organización.
• Utilizar las interfases ya disponibles en WSO2 IS para soportar losrequerimientos de control de políticas y roles.
WSO2 IS – Recomendaciones (2/2)
• De cara a abordar el Proyecto desde una visión global, considerar siempre que losProyectos de Gestión de Identidades son Proyectos de “INTEGRACIÓN” donde lasfuncionalidades relacionadas a la IdM deben ser expuestas como “APIs” para distintos“CANALES”, donde el uso y la salud de la plataforma debe ser “MONITORIZADO” paratomar las mejores decisiones basado en “MÉTRICAS”. Esto se traduce en:
• INTEGRACIÓN
• Uso como un Hub de Integración de diferentes fuentes de datos de identidades(Credenciales provenientes de las redes sociales, Certificados digitales (X.509),DNI Eletrónico, BDs de Usuarios, Servidores LDAP existentes, etc.
• SCIM como Interfase estándar para gestionar el ciclo de vida de las identidades“consolidadas”.
• CANALES
• Servicios de Gestión de Identidades para WebApps
• Servicios de Gestión de Identidades para dispositivos móviles
• Servicios de Gestión de Identidades para comunicación entre Organismos Públicos(B2B)
• MONITORIZADO
• Conocimiento en tiempo real de lo que está pasando en la plataforma.
• MÉTRICAS
• Cuadro de Mandos (Dashboard) con los indicadores (KPI) más relevamente para elsoporte a toma de decisiones.
Para Importante Cliente Banca: Plataforma de Integración e
Interoperabilidad
WSO2 ESB
WSO2 DSS
WSO2 IS
WSO2 BAM/CEP
Referencias
Detalle:
Se definió e implantó una Plataforma WSO2 que soporta una aplicación debanca electrónica la cual interactúa con la data del negocio a través de laplataforma de integración basada en productos WSO2. Las aplicacionesestán alojadas en servidores JBOSS, el repositorio de usuarios corporativose desplegó en una instancia de Open LDAP. Todas las peticiones a loscomponentes principales de la plataforma de integración pasan por elbalanceador de carga NGINX y dichos componentes también reportan sustransacciones a servidores BAM / CEP para su monitoreo en caliente y porlotes.La seguridad en este caso es máxima, se aplica a nivel de transporte httpsobre SSL, los servicios REST se aseguraron utilizando OAUTH2 y losservicios Proxy y de Back End se consumen usando mensajes firmados yencriptados; la autenticación se realiza obteniendo un token SAML y lasautorzaciones a través de la validación de credenciales y roles contra unaserie de políticas XACML
Referencias
Para el Servicio de Educación Pública de Mexico: Plataforma de
Integración e Interoperabilidad
WSO2 ESB
WSO2 DSS
WSO2 IS
WSO2 AS
Referencias
Detalle
Despliegue de la plataforma WSO2 combinada con otros productos paraimplementar un sistema de generación de una nómina para el pago depersonal de una Organización del gobierno mexicano.
El sistema facilita la asignación de las partidas presupuestarias, la generaciónde los reportes y sobres de pago así como la consulta de ellos en línea porparte de cada uno de los trabajadores; el número de trabajadores de estanómina supera los 600000 que acceden a la plataforma a través de internetsobre SSL
Se definen en la Plataforma, sobre WSO2 IS, las políticas de Autorización yAutentificación requeridas por SEP
Referencias
Para RSI (Rural Servicios Informáticos) : HUB de Seguridad
WSO2 ESB
WSO2 IS
ORACLE
OSB
Referencias
Detalle:
El Hub de Seguridad fue desplegado sobre una arquitectura basada en Suse11 SP4 como sistema operativo, WSO2 ESB como Gateway integrando unActive Directory a su repositorio de usuarios/grupos y WSO2 IS como IDP.
El Hub de seguridad fue integrado a dos plataformas ESB, específicamenteWSO2 ESB y ORACLE ESB.
Fueron desplegados diversos patrones de integración en el WSO2 ESB paraque este pudiera delegar las actividades de autenticación y autorización sobreel WSO2 IS, mediante la inyección de políticas a apis y servicios soappresentes. La implementación fue soportada por una arquitectura de serviciosen HA y clustering permitiendo que este pueda escalar mediante la inyecciónde nuevos nodos.
Referencias
External
IdP
Consumer
s
External
CloudGW Store GW Store GW Store
Third Party
Developers
Internal Cloud
/ On PremiseAdmi
nPublis
herBR
SIdentity
Serve
r
ES
B
M.Broker
Internal Backend Systems
Data SS.
V
P
N
Cloud Services
Monitoring &
Persistance
Desktop
Apps.
Mobile
Apps.
Internal IdPIdentity
Federation
Para fabricante Mundial Automoviles : Federación de Identidades
junto al despliegue de una Plataforma Orientada a la API Economy
WSO2 ESB
WSO2 IS
WSO2 API M
WSO2 Store
WSO2 DSS
WSO2 MQ
WSO2 DAS
Referencias
Detalle:
Sobre Cloud público , se define una Arquitectura Midlleware completa, basadaen toda la Suite de WSO2. Define la Integración con el Back End del Cliente yla exposición, Mediante API M y Store de los Servicios a Consumir porClientes, Proveedores y Aplicaciones móviles
Mediante WSO2 IS de define un sistema de Federación de Identidades, queextiende SSO a diferentes dominios dentro de la Organización. TambiénDefine las políticas globales de Autorización y Autentificación corporativas
Referencias
Para Cable Visión , Sector Comunicaciones: Integración WSO2 IS ,
WSO2 API M y OSB (ORACLE) . Exposición de APIs Seguras desde
Servicios definidos en OSB
WSO2 ESB
WSO2 IS
ORACLE
OSB
Referencias
Soporte y Acompañamiento en el HUB de Interoperabilidad de RSI (RuralServicios Informáticos) Banca. Acompañamiento puesta en Producción deWSO2 ESB + IS
SATEC – Angola Telecom. Acompañamiento en la Implantación de WSO2 API-M+ ESB
HUB de Interoperabilidad con Capgemini para Importante Proyecto en UK APIM – ESB – IS – DSS – BAM – MQ
Plataforma WSO2 (ESB, CEP, BAM, IS) y Orquestación con Bonita BPM.Implementación de Front End usando Liferay para el sistema de ConsolidaciónFinanciera SAP de PDVSA (Venezuela)
Acompañamiento a SolInt (Chile), Consultora Chilena para variasimplantaciones en sus clientes.
Acompañamiento a KioNetwork para la puesta en Producción de un ecosistemaWSO2 de misión crítica para SEP (Servicio Educación Pública) de México
Acompañamiento en Diferentes Proyectos en Banco Grupo InteraccionesMéxico
Referencias
Vaesa post-venta (Intranet de servicios post-venta para tiendas. DesarrolloFrontend Liferay: tema, personalización gráfica) . Back End WSO2 ESB –Konakart - CRM
Volkswagen Store (eCommerce integración Liferay/Konakart. Desarrollo LiferayFrontend: tema, personalización de portlets, hooks, plantillas. DesarrolloBackend: integración de las herramientas). http://store.volkswagen.es
AudiClass (Intranet de servicio post-venta. Desarrollo Liferay Frontend: tema,personalización de portlets y hooks, estructuras y plantillas Liferay WCM,Alloy/jQuery,. Desarrollo Backend: personalización y desarrollo de portlets amedida). http://www.audiclass.com
Messe Dusseldorf en España (Catálogo de ferias. Desarrollo Liferay Frontend:tema, personalización de portlets, desarrollo Liferay ADT y WCM,Alloy/jQuery). http://messedusseldorf.es
Sphera Global (Portal de servicios a cliente final. Desarrollo Liferay: Backend yFrontend)
Andorra Telecom (Portal de servicios a cliente final. Desarrollo Liferay: Backendy Frontend) www.andorratelecom.ad
Referencias
Gracias por la atención
Haciendo Bien las cosas con WSO2