[webinar] gestión identidades y control de acceso en los servicios usando wso2 is

36
Last Updated: June 2015 Gestión de Identidades y Control de Acceso en los Servicios usando WSO2 Identity Server

Upload: roger-carhuatocto

Post on 15-Apr-2017

803 views

Category:

Technology


7 download

TRANSCRIPT

Page 1: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

Last Updated: June 2015

Gestión de Identidades y Control de Acceso en los Servicios usando WSO2

Identity Server

Page 2: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

2

Agenda• Presentación de WSO2 y Chakray Consulting• Requerimientos de Seguridad en los Servicios

• Seguridad Holística no diferencia entre los Servicios, Aplicaciones e Información.

• Casos de uso o ejemplos de Seguridad• WSO2 Identity Server y WSO2 ESB• Aplicando Seguridad: Estrategias• Demostración• Preguntas y respuestas.

Page 3: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

SanjivaWeerawarana

Hola! somos

MMVenture Capital$30

3

Page 4: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

4

Una plataforma completa para crear negócios conectados

4

Page 5: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

Mountain View,

California, USA

BloomingtonIndiana, USA

London,United

Kingdom

Colombo,Sri Lanka

São Paulo,Brazil

Oficinas

5

Page 6: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

Equipo 500+

6

Page 7: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

Publication Category WSO2 Year

Gartner Magic Quadrant for Enterprise Application Platform as a Service Visionary 2014

Gartner Magic Quadrant for Application Services Governance Visionary 2013

Gartner Magic Quadrant for On-Premises Application Integration Suites Visionary 2013

Gartner Magic Quadrant for On-Premises Application Platforms Visionary 2013

The Forrester Wave API Management Platforms, Q1 Leader 2013

Gartner Magic Quadrant for Systematic SOA Application Projects Visionary 2012

Gartner Magic Quadrant for Systematic Application Integration Projects Visionary 2012

Gartner Magic Quadrant for SOA Infrastructure Projects Visionary 2012

The Forrester Wave Integrated SOA Governance, Q1 Strong Performer 2012

The Forrester Wave SOA Service Life-Cycle Management, Q1 Strong Performer 2012

The Forrester Wave Standalone SOA Management Solutions, Q4 Strong Performer 2011

Gartner Magic Quadrant for SOA Governance Technologies Visionary 2011

The Forrester Wave Enterprise Service Bus, Q2 Leader 2011

Presencia en estudios de Mercado

7

Page 8: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

+ de 250 Clientes

8

Page 9: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

9

Page 10: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

• "Enfoque brillante, amor a la modularidad, lo que permite una gran flexibilidad. Estamos muy contentos de estar trabajando con WSO2 "- Jim Crabbe, Senior Product Manager, Boeing

• "La extrema capacidad de soporte, es lo que nos cautivó con WSO2" - Prakash Iyer, Vicepresidente del Software Arquitectura y Estrategia, CIO, Trimble.

• “Con el uso de WSO2 ESB, habíamos sido capaces de proporcionar a los clientes y nuestors socios la calidad y experiencia que esperan de eBay" - Abhinav Kumar, Gerente senior de Ingeniería de Sistemas en eBay.

¿Y los clientes, qué dicen?

10

Page 11: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

11

Roger CARHUATOCTO

Principal Architect SOA, BigData and Security.

www.linkedin.com/in/rcarhuatocto

@Chilcano

holisticsecurity.wordpress.com

roger [at] chakray.com

Puedes ponerte en contacto conmigo vía:

Page 12: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

• Grupo de Consultores sénior muy especializados en WSO2.• Preferred Partner con presencia en Europa y Sudamérica.• Especializado en proveer servicios de Consultoría a Integradoras.• Suministra formación oficial on-line y presencial.

12

Page 13: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

13

1. Requerimientos de Seguridad en los Servicios• Seguridad Holística (end-to-end):

1.-

2.-

3.-

4.-

5.-

6.-

7.-

8.-

9.-

Autenticación e Identificación

Autorización

Confidencialidad

Integridad

No Repudio

Anonimato

Disponibilidad y Fiabilidad

Auditoría

Gestión de Identidades

¿Quién eres tu?

¿Qué puedes hacer tu?

Transmisión secreta o privada del mensaje

Nadie haya alterado el mensaje

Nadie pueda rechazar/cuestionar la transacción ni el/los

mensajesNo trazabilidad de ciertas transacciones o mensajes

Servicio siempre operativo o con garantía de que funcione

Trazabilidad y recolección de evidencia

Gestión del ciclo de vida de las credenciales y atributos… y

Page 14: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

14

1. Requerimientos de Seguridad en los Servicios• Seguridad en los Servicios:

1.-

2.-

3.-

4.-

5.-

6.-

7.-

8.-

9.-

Autenticación e Identificación

Autorización

Confidencialidad

Integridad

No Repudio

Anonimato

Disponibilidad y Fiabilidad

Auditoría

Gestión de Identidades

¿Quién eres tu?

¿Qué puedes hacer tu?

Transmisión secreta o privada del mensaje

Nadie haya alterado el mensaje

Nadie pueda rechazar/cuestionar la transacción ni el/los

mensajesNo trazabilidad de ciertas transacciones o mensajes

Servicio siempre operativo o con garantía de que funcione

Trazabilidad y recolección de evidencia

Gestión del ciclo de vida de las credenciales y atributos… y

(*)

(*)

(*) A nivel de transporte

Principal preocupación en los Servicios.

No es la principal preocupación.

Page 15: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

15

2. Casos de uso o ejemplos de Seguridad (1/4)• Autenticación e Identificación (¿Quién eres tu?)

• Donde haya una validación de cualquier tipo de credenciales hay una “autenticación”.

• Autorización (¿Qué puedes hacer tu?)• Después de una “autenticación” satisfactoria se procede a asignar unos “atributos” (rol, permisos, etc).

• Confidencialidad (Transmisión secreta o privada del mensaje)• Mensaje de correo electrónico cifrado (certificados X.509, PGP, clave simétrica).

• Integridad (Nadie haya alterado el mensaje)• Mensaje de correo electrónico con “precintos digitales” como firma digital, hashing, time-stamping, etc.

Page 16: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

16

2. Casos de uso o ejemplos de Seguridad (2/4)• No repudio (Nadie pueda rechazar/cuestionar la transacción ni el mensaje)

• Es la suma de todos los elementos de seguridad aplicados que “minimiza” el riesgo que la transacción o el mensaje sea rechazado o sea cuestionado.

• Burofax• Notaría• Trámites Administrativos realizados con el DNI, e-DNI, Pasaporte o e-Pasaporte.

• Anonimato (No trazabilidad de ciertas transacciones o mensajes)• Muy relacionado con la Confidencialidad/Privacidad. La RAE ha introducido el termino “Intimidad”.

• El “uso” del teléfono móvil debe ser anónimo, de igual forma que las Compras por Internet, e-Gambling, Voto, e-Voto, etc.

Page 17: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

17

2. Casos de uso o ejemplos de Seguridad (3/4)• Disponibilidad y Fiabilidad (Servicio siempre operativo o con garantía de que

funcione)• Cómo evitamos los ataques de Ataques Distribuidos de Denegación de Servicio (“DDoS” -Denial Distributed of

Service-) en nuestras cada vez más expuestas APIs (servicios) ?.

• Throttling• Firewall de Aplicaciones• Mediation

• Auditoría (Trazabilidad y recolección de evidencia)• De aquellas operaciones o transacciones identificadas como críticas deben ser auditables, para ello se recolecta

evidencia o información producida en los eventos.

• Muchos de los servicios expuestos como APIs son monetizables y por ello son traceables. Es decir, se sabe quién, qué, cuándo y de dónde fueron usados.

Page 18: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

18

2. Casos de uso o ejemplos de Seguridad (4/4)• … y Gestión de Identidades (Gestión de ciclo de vida de credenciales y

atributos)• Ninguno de los puntos anteriores (autenticación, autorización, confidencialidad, etc.) puede ser implantado sin

antes hacer “Gestión de Credenciales”, y esto significa:

• Crear un modelo único de usuarios, grupos y roles (modelo canónico de usuarios).• Integración y consolidación de las fuentes de credenciales (integración de datos).• Aprovisionamiento (propagar las credenciales a los sistemas que los necesitan).• Gestión del Ciclo de Vida de las Identidades (baja, alta, actualizaciones, suspensión, permisos, etc.).• Políticas y estándares (políticas de seguridad).

Page 19: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

19

3. WSO2 IS y WSO2 ESB (1/5)

1.-

2.-

3.-

4.-

5.-

6.-

7.-

8.-

9.-

Autenticación e Identificación

Autorización

Confidencialidad

Integridad

No Repudio

Anonimato

Disponibilidad y Fiabilidad

Auditoría

Gestión de Identidades

¿Quién eres tu?

¿Qué puedes hacer tu?

Transmisión secreta o privada del mensaje

Nadie haya alterado el mensaje

Nadie pueda rechazar/cuestionar la transacción ni el/los

mensajesNo trazabilidad de ciertas transacciones o mensajes

Servicio siempre operativo o con garantía de que funcione

Trazabilidad y recolección de evidencia

Gestión del ciclo de vida de las credenciales y atributos

El “Negocio Conectado” de hoy

REQU

ISIT

OS D

E SE

GURI

DAD

Page 20: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

20

3. WSO2 IS y WSO2 ESB (2/5)“Identity Silos” “Spaghetti Identity”

Page 21: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

21

3. WSO2 IS y WSO2 ESB (3/5)Hay que ser “políglotas”

http://www.slideshare.net/rcarhuatocto/wso2-con2013-soacryptorcarhuatoctorev2

Page 22: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

22

3. WSO2 IS y WSO2 ESB (4/5)

Implementada completamente.

Integrada pero no rica en funcionalidades.

Page 23: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

23

3. WSO2 IS y WSO2 ESB (5/5)

Identity Mediation Language

http://blog.facilelogin.com/2015/05/identity-mediation-language-iml.html

El “Identity Bus”

http://www.slideshare.net/prabathsiriwardena/connected-identity-the-role-of-the-identity-bus

Page 24: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

4. Aplicando Seguridad (1/5)

24

• El proceso seguido

Gestión de Accesos e Identidades (IAM).

• User credential lifecycle Management

• Modelo de usuarios

Gestión de Accesos e Identidades (IAM).

• Servicio de Autenticación y Autorización

• Servicio de SSO

Seguridad de la Información.

• PKI y Firma Digital• Time Stamp• Seguridad de

Documentos.

Disponibilidad de los Servicios y API.

• Throttling• QaS• Firewalling

Auditabilidad.

• No Repudio• Evidencias

Monitoring

Page 25: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

4. Aplicando Seguridad (2/5)

25

*

****

*****

Federated User Management

Portal B2B, B2C, E2E (API)

BAM, BI & BigData

(WSO2 SS, BAM, CEP)

BPM Applications(Bonita BPM)

(WSO2 ESB)

Portal / Front-endIdentity Management

Web, Collab, Mobile, Portlets B2B, B2C, API

(Virtual Directory)

Existing Business Applications

New Business Application

SystemsBonita Studio

Bonita WorkflowEngine

Presentation Layer

OrchestrationLayer

Business Service Layer

CONTROLLER

MODEL

VIEW

SECU

RITY

Bonita UX Portal

SERVICES

PHP, Ruby, Python,Java

2 3

4

5

6

7

910

8

(WSO2 IS)

1

GOVERNED SERVICES

9

• Un Negocio Conectado

Page 26: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

4. Aplicando Seguridad (3/5)

26

• Flujos implementados

1. Start login process2. Pass login process to Bonita3. Bonita passes login process4. OB passes login process5. WSO2IS sends response6. OB redirects response7. Bonita redirects response8. Liferay receive response

Authentication in Openbravo

1. Start login process2. Pass login process to Bonita3. Validate credentials4. WSO2IS sends response5. Bonita redirects response6. Liferay receives response

Authentication in Bonita

1. Start login process2. Validate credentials3. WSO2IS sends response4. Liferay receives response

Authentication in Liferay

LIFERAY WSO2IS BONITA OPENBRAVO

LIFERAY WSO2IS BONITA OPENBRAVO

Desplegar WSO2 Identity Server (WSO2 IS), crear usuarios, roles, grupos, …

1.

Configurar Autenticación LDAP en Liferay apuntando al LDAP embebido de WSO2 IS. Habilitar la sincronización usuarios, roles, grupos, …

2.

Configurar Autenticación LDAP y sincronización en Bonita BPM apuntando al LDAP embebido de WSO2 IS.3.

Configurar Autenticación LDAP y sincronización de usuarios en Openbravo apuntando al LDAP embebido de WSO2 IS.4.

Verifique el proceso de autenticación y de sincronización de usuarios en todo el ecosistema.5.

Después de consolidar repositorios de Usuarios y validar el proceso de Autenticación, estamos listos para implementar servicio de Autorización, SSO, Federación de Identidades, Social Login, etc.

6.

Page 27: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

27

4. Aplicando Seguridad (4/5)• Firma Digital

http://www.slideshare.net/rcarhuatocto/wso2-con2013-soacryptorcarhuatoctorev2

Page 28: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

28

4. Aplicando Seguridad (5/5)• Firma Digital

http://www.slideshare.net/rcarhuatocto/wso2-con2013-soacryptorcarhuatoctorev2

Page 29: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

29

5. Demostración #1 (1/3)• Gestión de Identidades (Aprovisionamiento)

http://holisticsecurity.wordpress.com/2014/01/13/iam-organizaciones-con-wso2is

*

**

Federated User Management

APP 2

APP 1Identity Management

(Virtual Directory)

SECU

RITY

(WSO2 IS)

9

API (

prov

ision

ing)

User

Adm

in S

OAP

*

APP 3

Page 30: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

30

*

5. Demostración #1 (2/3)• Bring Your Own ID (BYOID): Social Login

***

Federated User Management

APP 2

(ERP, CRM, …)

APP 1

(Mobile App)

Identity Management

(Virtual Directory)

SECU

RITY

(WSO2 IS)

9

Facebook

Travelocity.COM

(Adhoc WebApp)

LinkedIn

SAML WSO2 IS 5.0:• Supporting BYOID with Chained Collaborative

Federation (CCF) pattern.• Can “mediate” between OpenID, OAuth 1.0, OAuth 2.0,

SAML 2.0 and OpenID Connect.• Built integration with Google (with openID), Facebook

(Graph API 1.0), Yahoo and Microsoft Live.

https://developer.linkedin.com/docs/oauth2https://developers.facebook.com

OAuth

Page 31: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

31

5. Demostración #1 (3/3)• Autenticación y Autorización en API (1/2)

http://wso2.com/library/articles/2015/03/bring-your-social-identity-to-perform-organizational-authorization-actions-with-wso2-identity-server/

Page 32: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

32

Existing Business Applications

ESB

5. Demostración #1 (3/3)• Autenticación y Autorización en API (2/2)

https://holisticsecurity.wordpress.com/2015/04/19/applying-ws-security-policy-framework-to-wso2esb-wso2dss/

**

Federated User Management

API

Identity Management

(Virtual Directory)

SECU

RITY 1

(WSO2 IS)

3

9

2

WS-SECURITY

JWT (JSon Web Token)

OAUTH

USER TOKEN

ERP CRM MS Oracle IBM SAP

4

WSO2 ESB:• Axis2 Server

• Rampart (WS-Security)• PasswordCallback (Axis2 Handler)

WSO2 AM:• Habilitar JWT (Java Web Token)• https

://docs.wso2.com/display/AM180/Passing+Enduser+Attributes+to+the+Backend+Using+JWT

• %APIM_HOME%/repository/conf/api-manager.xml

{ "typ":"JWT", "alg":"NONE" }{ "iss":"wso2.org/products/am", "exp":1345183492181, "http://wso2.org/claims/subscriber":"admin", "http://wso2.org/claims/applicationname":"app2", "http://wso2.org/claims/apicontext":"/placeFinder", "http://wso2.org/claims/version":"1.0.0", "http://wso2.org/claims/tier":"Silver", "http://wso2.org/claims/enduser":"sumedha" }

Page 33: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

33

5. Demostración #2• Firma Digital

http://www.slideshare.net/rcarhuatocto/wso2-con2013-soacryptorcarhuatoctorev2

Page 34: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

6. Conclusiones

34

• Defina la Arquitectura• Haga un Plan:

• Identifique una o varias estrategias de integración de “seguridad”

• Inicie una “Prueba de Concepto”• Todo es API, es fácil.

• No se olvide de lo primero:• Gestión de Identidades antes de desplegar las estrategias de integración de “seguridad”

• Monitorización y Auditabilidad

Page 35: [Webinar] Gestión Identidades y Control de Acceso en los Servicios usando WSO2 IS

Preguntas y

respuestas

35

[email protected]@chakray.co

m