19. Ciclo de Vida Servicios Registro o Directorio Proveedor del Servicio Consumidor del Servicio 1. Desarrollo servicio e interfaz 5. Desarrollo aplicación cliente 2. Publica servicio en el directorio 3. Busca proveedor de servicio. 4. Listado de proveedores de servicio y descripciones. 6. Requiere Servicio 7. Provee Servicio
22. Arquitectura Conceptual Comunicaciones HTTP, SMTP, FTP, JMS, IIOP, … Mensajes Extensiones SOAP Entrega Confiable, Correlación, Transacciones… SOAP Descripciones WSDL Procesos Descubrimiento, Agregación, Coreografía, … XML, DTD, XML Schema S E G U R I D A D A D M I N I S T R A C I Ó N
23.
24.
25.
26. WSDL types message portTypes bindings port service Definiciones Abstractas Definiciones Concretas Documento WSDL Declaraciones de Tipos de datos (“dataTypes”) Definición de los mensajes en términos de los “dataTypes” Definición de las operaciones soportadas y los mensajes que forman parte de las mismas Protocolo usado para implementar un “portType” y el formato de los mensajes Asocia una dirección concreta con un “binding” Define los “ports” que proveen el servicio
27. WSDL Service Port (e.g. http://host/svc) Binding (e.g. SOAP) Interfaz Abstracta portType operation(s) inMesage outMessage Port Binding
54. Interrelación Tecnologías/Especificaciones de Seguridad Servicios Web … TCP/IP Capa de Transporte (HTTP, FTP, SMTP, MQ, etc.) Seguridad Capa de Transporte (TLS/SSL) XML Signature XML Encryption SOAP WS Security SAML XKMS Otras Alto Nivel Infraestructura de Red Frameworks XML Fuente: “Securing Web Services With WS-Security. Demystifying WS-Security, WS-Policy, SAML, XML Signature, and XML Encryption”, Jothy Rosenberg and David Remy
59. Opciones de Seguridad Capa de Transporte Servicio de Seguridad Tecnologías Integridad SSL/TLS Confidencialidad SSL/TLS Autenticación Proveedor (Servidor) SSL/TLS Autenticación Consumidor (Cliente) SSL/TLS con autenticación de cliente HTTP Basic HTTP Digest HTTP Attributes SSL/TLS HTTP Basic HTTP Digest
60. Opciones de Seguridad Capa de Mensajería Servicio de Seguridad Tecnologías Integridad XML Signature S/MIME PKCS#7 Confidencialidad XML Encryption Autenticación del Emisor SOAP (Cliente) XML Encryption username & [password|digest] username & [password|digest] Certificado X.509 Token de Seguridad Kerberos SAML REL Etc.
61. Comparación Seguridad Según Capa Seguridad de Transporte Seguridad de Mensajería Punto a Punto Destino a Destino Madura, su implementación es relativamente directa Nueva, relativamente compleja con muchas opciones de seguridad No granular, enfoque del todo o nada Muy granular, puede aplicar selectivamente a trozos de mensajes y solamente a los requerimientos o respuestas Dependiente del Transporte La misma estrategia puede aplicarse a distintas tecnologías de transporte
65. Historia de los estándares de Procesos de Negocio 2000/05 XLang (Microsoft) 2001/03 BPML (Intallio) 2001/05 WSFL (IBM) 2001/06 BPSS (ebXML) 2002/03 BPEL4WS 1.0 (IBM, Microsoft) BPEL4WS 1.1 (OASIS) 2002/06 2003/01 WS-Choreography (W3C) 2003/04 WSCI (Sun et al) WSCL (HP) 2002/08
66. Servicios Web como procesos de negocio Servicio Web 1 Servicio Web 2 Servicio Web 3 Servicio Web 4 Servicio Web 5 Servicio Web n
67. Problema Tipo Cliente Servicio de Compra Servicio Crédito Servicio de Inventario Consolidación de Resultados Orden de Compra Check Crédito Reservar Inventario Respuesta Crédito Respuesta Inventario Factura
68.
69.
70. Ejemplo: Orden de compra Orden de Compra Requerimiento de Orden de Compra Ack de recepción Respuesta a la orden de compra Negocio “A” Negocio “ B”
71. Visto como Coreografía OC Request OC Acknowledgement OC Response Coreografía – Las públicas y visibles interacciones de intercambio de mensajes Proceso Público Negocio A Negocio B Envío OC Recepción OC Ack Recepción respuesta OC Recepción OC Envío OC Ack Envío respuesta OC
72. Visto como Orquestación Envío OC Recepción OC Ack Recepción respuesta OC Transformación Transformación Desde ERP Hacia ERP OC Request OC Acknowledgement OC Response Orquestación – Es un proceso de negocio privado ejecutable Proceso Privado Business BPEL Workflow
73. Orquestación y Coreografía juntos Envío OC Recepción OC Ack Recepción respuesta OC Transform Transform Negocio A BPEL Workflow OC Request OC Acknowledgement OC Response Generación Plantilla BPEL Generación Plantilla BPEL Recepción OC Envío OC Ack envíoRecepción Respuesta OC Transform Transform Negocio B BPEL Workflow Dos Workflow BPEL que muestran acuerdo entre negocios Negocio B Business Analyst Tool Negocio A
74.
75.
76. Estándares que construyen BPEL Description HTTP,IIOP, JMS, SMTP Transport XML Message SOAP WSDL UDDI Discovery Transactions Coordination WS-Security WS-Reliability Quality of Service Business Processes Context Description Management Orchestration - BPEL4WS Choreography - CDL4WS
95. WS-I’s Work to Date Composition/Orchestration Business Process Orchestration Portals Management XML, SOAP XML Schema, WSDL, UDDI, SOAP with Attachments HTTP, HTTPS, Others Invocation Description Transports Composable Service Elements Transactionality WS-Security Reliable Messaging Endpoint Identification, Publish/Subscribe Messaging Additional Capabilities WS-I Web Service Interoperability
159. Arquitectura SAML SAML Aserción de Autenticación Aserción de Atributos Aserción de Autorización Autoridad de Autenticación Autoridad de Atributos Punto de Decisión de Políticas (PDP) Recolector de Credenciales Entidad de Sistema Punto de Hacer Valer Políticas (PEP) Requerimiento Aplicación Política Política Política
169. Framework de Seguridad Web Services Especificaciones Base Web Services WS Security WS-Policy WS-Trust WS-Privacy WS-SecureConversation WS-Federation WS-Authorization HOY