jueves, febrero 16, 2006

 

Introducción a los Servicios Web (Web Services)
Capítulo 2: Sacando partido a la normalización

En el artículo anterior comentábamos como los servicios Web habían conseguido normalizar el modo en el las arquitecturas cliente-servidor, así que era lógico sacar partido a esta normalización desarrollando infraestructura alrededor de los servicios que añadiese algo de valor. Vamos a ver un par de ejemplos:

WSDL / UDDI
Ya que tenemos normalizados los mensajes y los protocolos de transporte, parece normal que tengamos un modo común de atacar a los servicios (que no es más que una variante de las viejas llamadas a procedimientos remotos).
Hasta aquí nada nuevo, pero añadamos un lenguaje formal de descripción de estos servicios (WSDL) ¿Que tenemos ahora? Pues una forma universal de describir que servicio ofrecemos y como se puede usar ese servicio ¿Y si ponemos en un directorio todas las descripciones de los servicios de nuestro sistema (UDDI)? Pues eso, la descripción completa de los servicios de nuestro sistema, incluyendo su modo de uso.
La utilidad de este sistema de descripción es enorme, y va desde analizadores de WSDL para crear automáticamente los clientes de estos servicios (o incluso el esqueleto de la parte servidora) hasta el descubrimiento automático de servicios y el uso "al vuelo" de estos.
Seb Services Security
Seguridad para servicios Web ¿Que es realmente esto? Para empezar, una enorme sopa de letras (XKMS, SAML, XACML, ebXML, etc.), y de fondo, un intento de dotar a los servicios Web de capacidades de cifrado, firma y seguridad en general.
Vamos a intentar explicarlo con un diagrama que representa una transacción segura con servicios Web:

  1. El mensaje XML se firma (mediante XML Signature) y se cifra (con XML Encryption).
    El mensaje puede contener asunciones (afirmaciones que debes dar por ciertas) codificadas mediante SAML, que es un lenguaje especialmente diseñado para ello.
  2. Una vez que el mensaje ha llegado al destinatario (WS Security o ebXML MS contemplan los pasos por los posibles intermediarios) utilizamos un servicio XKMS para la validación de claves contra los servicios de confianza (una PKI o incluso un directorio directamente).
    XKMS es un servicio de gestión de claves (de certificados) basado en XML que hace más sencilla la interacción con sistemas PKI (sistemas de seguridad basados en claves asimétricas tipo pública/privada) o equivalentes.
  3. Ya con las claves validadas, procedemos a la verificación y descifrado del mensaje (de nuevo mediante mediante XML Encryption y XML Digital Signature).
  4. Una vez tenemos descifrado y comprobado el contenido del mensaje, verificamos si las políticas de seguridad permiten realizar las operaciones asociadas al mensaje (usando XACML).
    XACML es un lenguaje para la definición de políticas y actuaciones relativas al control de accesos.

Y por hoy es todo, de nuevo espero que os haya sido útil, no me he extendido mucho en WSDL y UDDI porque tampoco tienen mucho fondo. Si echais de menos que hable de SOAP pegad un comentario y en el próximo artículo de la serie me entretengo ¡No os perdais la tercera parte!


Comments:
hola amigo, imaginate que tengo un trabajo en el que debo montar un sevicio web soap con seguridad basada en xacml, y pues no tengo ni idea de como hacerlo, no se si podrias darme un tutorial basico sobre esto.
 
Publicar un comentario en la entrada

<< Home

This page is powered by Blogger. Isn't yours?