Sunteți pe pagina 1din 7

Modulo VI Servicios web

6.1 Conceptos generales


Visin general de servicios Web XML
Bsicamente, un servicio web (webservice) es un sistema de entrada/salida, al que se le puede pasar
una serie de parmetros con el fin de obtener un resultado en concreto y recuperarlo para ser
mostrado en una aplicacin. La tecnologa de los servicios web es relativamente reciente, y est
basada en el protocolo SOAP (Simple Object Access Protocol), consistente en un simple documento
XML que habilita el intercambio de informacin va HTTP entre diversas aplicaciones.
La ventaja de este protocolo radica en una comunicacin efectiva independiente del lenguaje de
programacin que defina a la aplicacin. WSDL (Web Services Description Language) es el nombre
del lenguaje utilizado para describir un servicio web. El mismo utiliza el formato wsdl como
extensin para sus archivos. Estos ltimos son referenciados desde una URL, e incluyen una serie de
mtodos y operaciones que sern llamados desde la aplicacin central del lado del cliente.
De ah la necesidad de Servicios Web en un mundo Internet. De la misma manera que el software
de conectividad de componentes permite hacer uso de la funcionalidad contenida dentro de otra
pieza de software en otro computador, los Servicios Web usan los protocolos de Internet para
proveer una infraestructura de componentes para el desarrollo de componentes distribuidos que
funcionen sobre la red pblica. En pocas palabras, los Servicios Web son aplicaciones modulares que
pueden ser descritas, localizadas, e invocadas sobre una red a travs de un intercambio
estandarizado de mensajes XML.
Definidos por nuevos estndares como SOAP (Simpla Object Access Protocol), WSDL (Web
Services Description Language), y UDDI (Universal Discovery Description and Integration) los
Servicios Web ofrecen un nuevo modelo para la creacin de aplicaciones e-Business a partir de
mdulos reutilizables de software a los que se tiene acceso a travs de la Web.
Beneficios de los Servicios Web
Desde un punto de vista tcnico, los Servicios Web ofrecen una manera ms fcil de desarrollar
aplicaciones a las que se requiera tener acceso a travs de la Web. Es importante anotar que los
servicios Web no resuelven todos los requerimientos de integracin slo la habilidad de
comunicarse con otros mdulos de software a travs de la red pblica. Se requieren tecnologas
adicionales de integracin para manejar la integracin de datos, aplicaciones y procesos del negocio.
Tambin se requieren caractersticas de clase empresarial para complementar los Servicios Web,
permitindoles ser seguros y escalables.
Desde el punto de vista del negocio, los Servicios Web le permiten a una compaa concentrar los
esfuerzos de desarrollo en los recursos computacionales que le representan ganancia. Los modelos
y relaciones empresariales son desarrollados en la medida en que es necesario, los costos de
integracin son reducidos, las interacciones con otros mercados son establecidas ms
efectivamente, y las funciones del negocio son entregadas a un conjunto ms amplio de clientes y
asociados.
Ms an, la tecnologa de Servicios Web permite la contratacin de servicios que no brindan un
beneficio al negocio. Dado que los Servicios Web separan aplicaciones de infraestructura, una

Modulo VI Servicios web


compaa puede rpidamente componer y desplegar soluciones basadas en componentes
reutilizables provenientes del proveedor que ofrezca un menor costo, sea ste interno o externo.
Estas soluciones pueden cambiar el enfoque e incluso la naturaleza de las interacciones, en
respuesta a condiciones cambiantes del negocio. En consecuencia, los e-Business pueden explotar
modelos de negocio flexibles y dinmicos maximizando su alcance a clientes, asociados,
proveedores y mercados, al mismo tiempo que minimizan sus costos y tiempo de mercadeo.

Modulo VI Servicios web

6.2 Estndares
Tecnologas subyacentes.
1. SOAP (Simple Object Access Protocol)
SOAP es un protocolo que proporciona un mecanismo estndar de empaquetar mensajes.
Este protocolo est pensado para el intercambio de informacin en entornos
descentralizados y distribuidos. Usa las tecnologas relacionadas con XML a fin de definir un
marco de trabajo extensible para los mensajes.
Provee una estructura de mensajes capaz de ser intercambiada sobre una gran cantidad de
protocolos de soporte. Este marco ha sido diseado con el fin de que fuera independiente
del cualquier modelo de programacin y otras implementaciones de semnticas.
Los dos objetivos de diseo principales de SOAP son la simplicidad y la extensibilidad. Para
alcanzar estos objetivos, SOAP simplemente elimina de su arquitectura aquellos aspectos
que con ms frecuencia se encuentra en los sistemas distribuidos. Podemos agregar las
caractersticas que nosotros queramos simplemente extendiendo la especificacin.
Ventajas:

No est asociado con ningn lenguaje: los desarrolladores involucrados en nuevos


proyectos pueden elegir desarrollar con el ltimo y mejor lenguaje de programacin
que exista pero los desarrolladores responsables de mantener antiguas aflicciones
heredadas podran no poder hacer esta eleccin sobre el lenguaje de programacin que
utilizan.
No se encuentra fuertemente asociado a ningn protocolo de transporte: La
especificacin de SOAP no describe como se deberan asociar los mensajes de SOAP con
HTTP. Un mensaje de SOAP no es ms que un documento XML, por lo que puede
transportarse utilizando cualquier protocolo capaz de transmitir texto.
No est atado a ninguna infraestructura de objeto distribuido. La mayora de los
sistemas de objetos distribuidos se pueden extender, y ya lo estn alguno de ellos para
que admitan SOAP.
Aprovecha los estndares existentes en la industria: Los principales contribuyentes a
la especificacin SOAP evitaron, intencionadamente, reinventar las cosas. Optaron por
extender los estndares existentes para que coincidieran con sus necesidades. Por
ejemplo, SOAP aprovecha XML para la codificacin de los mensajes, en lugar de utilizar
su propio sistema de tipo que ya estn definidas en la 2da especificacin esquema de
XML. Y como ya se ha mencionado SOAP no define un medio de trasporte de los
mensajes; los mensajes de SOAP se pueden asociar a los protocolos de transporte
existentes como HTTP y SMTP.
Permite la interoperabilidad entre mltiples entornos: SOAP se desarroll sobre los
estndares existentes de la industria, por lo que las aplicaciones que se ejecuten en
plataformas con dichos estndares pueden comunicarse mediante mensaje SOAP con
aplicaciones que se ejecuten en otras plataformas. Estructura de un mensaje SOAP
proporciona un mecanismo estndar de empaquetar un mensaje. Un mensaje SOAP se
compone de un sobre que contiene el cuerpo del mensaje y cualquier informacin de
cabecera que se utiliza para describir le mensaje.

Modulo VI Servicios web


2. WSDL (Web Service Description Language)
Un archivo WSDL es un archivo en formato XML en donde se declaran los objetos que se
van a compartir va SOAP, es decir, las operaciones, sus argumentos y sus tipos de datos, y
se debe de aclarar que todo va XML, entonces hay un asunto de codificacin de caracteres
que debemos de tomar en cuenta en nuestro archivo XML, ya sea UTF-8, Latn, Occidental,
lo que sea, como se transporta la informacin va XML, pues se tienen que tomar los
cuidados necesarios.
Una gramtica basada en XML que permite describir las capacidades de un servicio Web.
3. Web Services Protocol Stack
As se le denomina al conjunto de servicios y protocolos de los servicios Web.
4. XML (Extensible Markup Language)
Es el formato estndar para los datos que se vayan a intercambiar.
5. UDDI (Universal Description, Discovery and Integration)
Protocolo para publicar la informacin de los servicios Web. Permite comprobar qu
servicios web estn disponibles.
6. WS-Security (Web Service Security)
Protocolo de seguridad aceptado como estndar por OASIS (Organization for the
Advancement of Structured Information Standards). Garantiza la autenticacin de los
actores y la confidencialidad de los mensajes enviados.

Modulo VI Servicios web

6.3 Seguridad e interoperabilidad


Los servicios de seguridad bsicos mencionados por la ISO 7498-2 son la confidencialidad,
integridad, autenticidad de origen, no repudio y control de acceso.
Por su parte, la arquitectura de referencia planteada por el W3C para los servicios Web (W3C, 2004)
hace mencin que para garantizar la seguridad en los servicios Web es necesario un amplio
espectro de mecanismos que solventen problemas como la autenticacin, el control de acceso
basado en roles, la aplicacin efectiva de polticas de seguridad distribuidas o la seguridad a nivel
de los mensajes.
Los servicios de seguridad bsicos encontrados en cualquier sistema web son:
1. Autenticacin de los interlocutores. Cada servicio Web participante en una interaccin
podra requerir autenticacin de la otra parte. Cuando cierto servicio A dirige una peticin
al servicio B, ste puede requerirle unas credenciales junto con una demostracin de que le
pertenecen como por ejemplo un par nombre de usuario (credencial)/password
(demostracin) o un certificado X.509v3 (credencial)/firma digital (demostracin).
2. Autorizacin. Los servicios Web deben disponer de mecanismos que les permitan controlar
el acceso a sus servicios (recursos). Se debe poder determinar quin y cmo puede hacer a
qu y cmo sobre sus recursos. La autorizacin concede permisos de ejecucin de ciertos
tipos de operaciones sobre ciertos recursos a ciertas identidades autenticadas.
3. Integridad. Esta propiedad garantiza a un servicio Web que la informacin que recibe es la
misma que la informacin que fue enviada desde un sistema cliente.
4. No repudio. Cuando se realizan transacciones suele ser un requisito ser capaz de probar
que una accin tuvo lugar y que fue realizada por cierto actor. En el caso de los servicios
Web, es necesario ser capaz de demostrar que un cliente utiliz un servicio pese a que ste
lo niegue (no repudio del solicitante) as como demostrar que un servicio fue ejecutado (no
repudio del receptor).
5. Disponibilidad. La necesidad de cuidar el aspecto de disponibilidad, como prevenir ataques
de denegacin del servicio (DoS) o disponer de redundancia de los sistemas, es un punto
crucial en la tecnologa de los servicios Web sobre todo en aquellos casos en los que los
servicios en cuestin son de alta criticidad: servicios en tiempo real, servicio de CRLs, etc.
6. Auditabilidad. Los sistemas basados en servicios Web deben mantener una traza de todas
las acciones que llevan a cabo de forma que sea posible realizar un anlisis posterior que
permita averiguar, por ejemplo, lo ocurrido en escenarios de desastre.
7. Seguridad extremo-a-extremo (Saltzer, Reed, & Clark, 1984). Las topologas de redes de
servicios Web requieren la garanta de que la seguridad se mantenga a lo largo del recorrido
seguido por los mensajes entre los dos extremos de la comunicacin.
El hecho de que puedan existir intermediarios en el camino del mensaje que puedan procesar parte
del mismo exige un extra de seguridad que, no slo garantice que el transporte entre los extremos
y a travs de los intermediarios es seguro, sino que adems garantice la seguridad en cada nodo
encontrado en el camino.

Modulo VI Servicios web

El consorcio WS-I (www.ws-i.org) es otro consorcio abierto al que pertenecen alrededor de 150
compaas cuyo principal papel en los servicios Web es promover la interoperabilidad entre
plataformas, la adopcin de esta forma de computacin distribuida, y acelerar su desarrollo
actuando como gua y definiendo catlogos de buenas prcticas as como cualquier otro tipo de
recurso que mejore su interoperabilidad.
La seguridad no queda fuera del alcance de este propsito y, como muestra, se encuentra
actualmente en desarrollo la especificacin WS-I Basic Security Profile 1.0 (WS-I, 2004) que define
una serie de restricciones sobre el uso de los estndares de seguridad en los servicios Web. Esta
especificacin normaliza el uso de los estndares de seguridad descritos en este artculo, indicando
qu versiones y de qu manera deben ser aplicados. De esta forma, si disponemos de un proceso
de negocio que queremos hacer accesible desde Internet, y queremos emplear los estndares de
seguridad aqu mencionados, estando adems seguros de que estamos realizando un uso estndar
y correcto de los mismos, sera ideal ajustarnos a este perfil con el objeto de poder integrarlo con la
mayor rapidez posible en el mercado.

Modulo VI Servicios web


Bibliografa
Conceptos generales (http://goo.gl/2JT0Gg)
Estndares (http://goo.gl/CY1jd)
Seguridad e interoperabilidad (http://goo.gl/9Ghzb)

S-ar putea să vă placă și