viernes, 7 de agosto de 2009

SCDJWS: WSIT Interoperabilidad de Servicios Web 1

¿Qué es WSIT?
Sun y Microsoft están trabajando para asegurar la interoperabilidad de las tecnologías empresariales de servicios web como son optimización de mensajes(message optimization), mensajería confiable(reliable messaging) y seguridad(security). La versión inicial de WSIT es un producto de esfuerzo conjunto entre estas dos compañias. WSIT es una implementación de un número de especificaciones de servicios web abiertos que soportan características empresariales. Además de la optimización de mensajes, mensajería confiable y seguridad, WSIT incluye bootstrapping y tecnología de configuración.
La siguiente figura muestra los servicios bajo los cuales son implementados cada una de las siguientes tecnologías:



Iniciando con el soporte de core Xml y que actualmente está construido dentro de la plataforma Java, WSIT usa o extiende características existentes y agrega más soporte para servicios web interoperables, Vamos a ver las siguientes secciones para un resumen de cada característica:

Boostraping and Configuration
Consiste en el uso de un URL para accesar a un servicio web, recibir su archivo WSDL, y usar este archivo para crear un cliente de un servicio web que pueda accesar y consumir un servicio web, el proceso consiste de los siguientes pasos:

1. El cliente adquiere el URL para un servicio web que quiera acceder y consumir. Esto lo puedes hacer buscando en un registro de servicios web como UDDI, ó si ya tienes el URL pues este paso ya está listo.

2. El cliente usa el URL y la herramienta wsimport(que se encuentra en el directorio bin de tu jdk6) para enviar una solicitud de intercambio de metadata para acceder al servicio web y recibir el archivo WSDL. El archivo WSDL contiene una descripción del punto final del servicio web, incluyendo las afirmaciones(assertions) WS-Policy(politicas del servicio web: que es lo que está permitido y caracteriza a tu servicio web) que describen las capacidades de seguridad y/o confiabilidad y requerimientos del servicio. Tambien describe los requerimientos que deben ser satisfechos para acceder y consumir el servicio web.

3. El cliente usa el archivo WSDL para crear el cliente del servicio web.

4. El cliente del servicio web accede y consume el servicio web.

Tecnología de Optimización de Mensajes
Una función primaria de las aplicaciones con servicios web es compartir data entre aplicaciones sobre la internet. La data compartida puede variar en formato y puede incluir extensas cargas binarias, como documentos, imágenes, archivos de música, y cosas así. Cuando objetos binarios extensos son encodificados en un formato XML para su inclusión en mensajes SOAP entonces estos mensajes SOAP tambien son extensos y cuesta transmitirlos por internet. Cuando un servicio web procesa y transmite estos extensos archivos sobre la red, el desempeño de la aplicación y la red son afectados negativamente. En el peor escenario los efectos son los siguientes:

El performance de la aplicación del servicio web se degrada al punto que no es más usable.
La red se atasca con más tráfico que el ancho de banda asignado pueda soportar.

Una manera para tratar este problema es encodificar los objetos binarios tanto como para optimizar el proceso de la mensajería SOAP como el ancho de banda requerido para transmitir el mensaje sobre la red. En resumen, XML necesita ser optimizado para los servicios web. Esto es exactamente lo que la tecnología de optimización de mensajes hace. Asegura que los mensajes de los servicios web son transmitidos sobre internet en la manera más eficiente.

Sun recomienda que usemos optimización de mensajes si en nuestro cliente del servicio web ó nuestro punto final del servicio web será requerido procesar documentos XML encodificados en forma binaria y que sean más grandes que 1Kb.

Tecnología de Mensajería Confiable
Mensajería confiable es tecnología sobre calidad de servicio para construir más servicios web confiables. La confiablidad en un sistema es medido por la capacidad de entregar mensajes desde un punto A a un punto B sin errores. El proposito principal de la mensajería confiable es asegurar la entrega de mensajes desde nuestra aplicación al punto final de un servicio web.

La tecnología de mensajería confiable asegura que los mensajes en una secuencia dada de mensajes son entregados al menos una vez y no más que una vez y opcionalmente en el orden correcto. Cuando los mensajes en una secuencia dada son perdidos en la transmisión ó entregados desordenadamente, esta tecnología permite a los sistemas recuperarse de estos fallos. Si un mensaje es perdido en la transmisión, el sistema que lo envió retransmite el mensaje hasta que su recepción es reconocida por el sistema receptor de mensajes. Si los mensajes son transmitidos en desorden, el sistema receptor puede reordenar los mensajes en el orden correcto.

La tecnología de mensajería confiable puede tambien ser usada para implementar gestión de sesiones. Una secuencia de mensajes únicos es creada para cada proxy del lado del cliente y el tiempo de vida del identificador de la secuencia coincide con el tiempo de vida del proxy. Por consiguiente cada secuencia de mensajes puede ser visto como una sesión y puede ser implementado para gestión de sesiones.

Deberiamos considerar el uso de la mensajería confiable si el servicio web está experimentado los siguientes problemas:

Existen fallos en la comunicación como resultado de una red indisponible o conexiones rotas.
Los mensajes de las aplicaciones son perdidos al transmitirse.
Los mensajes de las aplicaciones están llegando a su destino en desorden, y la entrega ordenada es un requisito.

Algunas ventajas y desventajas de usar mensajeria confiable:

Habilitar la mensajería confiable asegura que los mensajes son entregados exactamente una vez desde la fuente al destino, y si la opción de entrega ordenada está habilitada, entonces asegura que los mensajes son entregados en orden.
Habilitar la mensajería confiable causa una degradación del desempeño del servicio web, especialmente si la opción de entrega ordenada está habilitada.
Los clientes que no habiliten la mensajería confiable no pueden interoperar con servicios web que tienen habilitado la mensajería confiable.


Tecnología de Seguridad
Hasta ahora los servicios web tienen confiada su seguridad basada en transporte sobre SSL para proporcinar una seguridad punto a punto. WSIT implementa WS-Security para proporcionar interoperabilidad de mensajes con contenido integro y confidencial. Incluso cuando los mensajes pasan a través de nodos antes de llegar al destino. WSIT tambien realiza la seguridad implementando WS-Secure Conversation(Conversación Segura de Servicios Web), lo cual habilita a un consumidor y productor establecer un contexto de seguridad compartido cuando una secuencia de intercambio múltiple es iniciado, así los siguientes mensajes usan claves deriavados de una sesión incrementando la seguridad total mientras reduce el procesamiento de seguridad para cada mensaje.

WSIT implementa dos caracteristicas adicionales para mejorar la seguridad en los servicios web:

Web Services Security Policy(Politicas de Seguridad en los Servicios Web): Habilita a los servicios web a usar afirmaciones de seguridad para claramente representar preferencias y requerimientos de seguridad para servicios web.

Web Services Trust(Confianza en los Servicios Web): Habilita a las aplicaciones de servicios web usar mensajes SOAP para solicitar tokens de seguridad que pueden ser usados para establecer comunicaciones de confianza entre un cliente y un servicio web.

Sacado de WSITTutorial


No hay comentarios.:

Publicar un comentario

Es bueno comunicarnos, comenta!!.