programacion web - unidad vi

Upload: aryaoi-cruz-rojas

Post on 11-Oct-2015

7 views

Category:

Documents


0 download

TRANSCRIPT

  • NDICE PGINA

    Introduccin ............................................................................................................. 1

    Conceptos Generales. ............................................................................................. 2

    Ventajas de los servicios web .............................................................................. 3

    Inconvenientes de los servicios Web ................................................................... 3

    Razones para crear servicios Web. ..................................................................... 3

    Plataformas .......................................................................................................... 4

    Estndares Servicios web. ...................................................................................... 5

    Seguridad e interoperabilidad Servicios web........................................................... 7

    Fuentes Consultadas ............................................................................................ 10

  • 1

    INTRODUCCIN

    Un servicio web es una tecnologa que utiliza un conjunto de protocolos y

    estndares que sirven para intercambiar datos entre aplicaciones. Adems los

    Servicios Web nos ofrecen una sencilla forma de extender la funcionalidad de

    nuestras aplicaciones. El acceso es prcticamente como cuando solicitamos una

    pgina Web con la principal diferencia que a los Servicios Web accederemos a

    travs de otra aplicacin.

    El objetivo de los Servicios Web, se puede decir que es la completa cooperacin

    entre las aplicaciones existentes a travs de la red de redes. Adems de que

    resuelven las carencias de los modelos anteriores en las aplicaciones. Y llevan a

    cabo lo siguiente:

    Permiten exponer y hacer disponibles funcionalidades (servicios) de los

    sistemas informticos de las organizaciones mediante tecnologas y

    protocolos web estndar.

    Cada servicio web se responsabiliza de realizar un conjunto de funciones

    concretas y bien definidas.

    Y actan como componentes independientes que se pueden integrar para

    formar sistemas distribuidos complejos.

  • 2

    CONCEPTOS GENERALES.

    Un servicio web es una tecnologa que utiliza un conjunto de protocolos y

    estndares que sirven para intercambiar datos entre aplicaciones. Distintas

    aplicaciones de software desarrolladas en lenguajes diferentes, y ejecutadas sobre

    cualquier plataforma, pueden utilizar los servicios web para intercambiar datos en

    redes de computadoras como Internet.

    La interoperabilidad se consigue mediante la adopcin de estndares abiertos. Las

    organizaciones OASIS y W3C son los comits responsables de la arquitectura y

    reglamentacin de los servicios Web. Es una mquina que atiende las peticiones

    de los clientes web y les enva los recursos solicitados.

    Para mejorar la interoperabilidad entre distintas implementaciones de servicios

    Web se ha creado el organismo WS-I, encargado de desarrollar diversos perfiles

    para definir de manera ms exhaustiva estos estndares.

    Un servidor web o servidor HTTP es un programa informtico que procesa

    una aplicacin del lado del servidor, realizando conexiones bidireccionales y/o

    unidireccionales y sncronas o asncronas con el cliente y generando o cediendo

    una respuesta en cualquier lenguaje o Aplicacin del lado del cliente.

    El cdigo recibido por el cliente suele ser compilado y ejecutado por un navegador

    web. Para la transmisin de todos estos datos suele utilizarse algn protocolo.

    Generalmente se usa el protocolo HTTP para estas comunicaciones,

    perteneciente a la capa de aplicacin del modelo OSI.

  • 3

    VENTAJAS DE LOS SERVICIOS WEB

    Aportan interoperabilidad entre aplicaciones de software

    independientemente de sus propiedades o de las plataformas sobre las que

    se instalen.

    Los servicios Web fomentan los estndares y protocolos basados en texto,

    que hacen ms fcil acceder a su contenido y entender su funcionamiento.

    Permiten que servicios y software de diferentes compaas ubicadas en

    diferentes lugares geogrficos puedan ser combinados fcilmente para

    proveer servicios integrados

    INCONVENIENTES DE LOS SERVICIOS WEB

    Para realizar transacciones no pueden compararse en su grado de

    desarrollo con los estndares abiertos de computacin distribuida como

    CORBA.

    Su rendimiento es bajo si se compara con otros modelos de computacin

    distribuida, tales como RMI, CORBA o DCOM. Es uno de los

    inconvenientes derivados de adoptar un formato basado en texto. Y es que

    entre los objetivos de XML no se encuentra la concisin ni la eficacia de

    procesamiento.

    Al apoyarse en HTTP, pueden esquivar medidas de seguridad basadas en

    firewall cuyas reglas tratan de bloquear o auditar la comunicacin entre

    programas a ambos lados de la barrera.

    RAZONES PARA CREAR SERVICIOS WEB.

    La principal razn para usar servicios Web es que se pueden utilizar con

    HTTP sobre TCP en el puerto 80. Dado que las organizaciones protegen

    sus redes mediante firewalls -que filtran y bloquean gran parte del trfico de

    Internet-, cierran casi todos los puertos TCP salvo el 80, que es,

    precisamente, el que usan los navegadores.

  • 4

    Los servicios Web utilizan este puerto, por la simple razn de que no

    resultan bloqueados. Es importante sealar que los servicios web se

    pueden utilizar sobre cualquier protocolo, sin embargo, TCP es el ms

    comn.

    Otra razn es que, antes de que existiera SOAP, no haba buenas

    interfaces para acceder a las funcionalidades de otros ordenadores en red.

    Las que haba eran ad hoc y poco conocidas, tales como EDI , RPC, u otras

    APIs.

    Una tercera razn por la que los servicios Web son muy prcticos es que

    pueden aportar gran independencia entre la aplicacin que usa el servicio

    Web y el propio servicio. De esta forma, los cambios a lo largo del tiempo

    en uno no deben afectar al otro.

    Esta flexibilidad ser cada vez ms importante, dado que la tendencia a

    construir grandes aplicaciones a partir de componentes distribuidos ms

    pequeos es cada da ms utilizada. Se espera que para los prximos

    aos mejoren la calidad y cantidad de servicios ofrecidos basados en los

    nuevos estndares.

    PLATAFORMAS

    Servidores de aplicaciones para servicios Web:

    Oracle Fusion Middleware

    Axis y el servidor Jakarta Tomcat (de Apache)

    Java Web Services Development Pack (JWSDP) de Sun Microsystems

    (basado en Jakarta Tomcat)

    Microsoft .NET

    Novell exteNd (basado en la plataforma J2EE)

    Zope es un servidor de aplicaciones Web orientado a objetos desarrollado

    en el lenguaje de programacin Python

    PHP

  • 5

    ESTNDARES SERVICIOS WEB.

    Los Servicios Web se basan en estndares y protocolos abiertos. A continuacin

    se describen los estndares de forma breve:

    XML (Extensible Markup Language): Es el formato estndar para los datos que se

    vayan a intercambiar; basado en marcas y etiquetas, es muy frecuente el uso de

    este metalenguaje para crear otros lenguajes con entidad propia. Su simpleza,

    facilita su uso fundamentalmente en el intercambio de una gran variedad de datos.

    SOAP (Simple Object Access Protocol) o XML-RPC (XML Remote Procedure

    Call): Protocolos sobre los que se establece el intercambio; Este protocolo permite

    realizar intercambios de informacin entre diversas aplicaciones situadas en

    entornos que estn descentralizados y se encuentran distribuidas. puede

    atravesar cortafuegos corporativos y ofrece la interoperabilidad de las

    aplicaciones.

    WSDL (Web Services Description Language): Es el estndar que se utiliza para

    describir un Servicio Web. Es una descripcin basada en XML de los requisitos

    funcionales necesarios para establecer una comunicacin con los servicios Web;

    permite especificar cmo deben representarse los parmetros, tanto de entrada

    como de salida, en una invocacin de tipo externo al servicio.

    Web Services Protocol Stack: As se denomina al conjunto de servicios y

    protocolos de los servicios Web. Otros protocolos: los datos en XML tambin

    pueden enviarse de una aplicacin a otra mediante protocolos normales como

    HTTP (Hypertext Transfer Protocol), FTP (File Transfer Protocol), o SMTP (Simple

  • 6

    UDDI (Universal Description, Discovery and Integration): Protocolo para publicar la

    informacin de los servicios Web. Permite comprobar qu servicios web estn

    disponibles. WS-Security (Web Service Security): Protocolo de seguridad

    aceptado como estndar por OASIS. Garantiza la autenticacin de los actores y la

    confidencialidad de los mensajes enviados.

    CC/PP: Capacidad de Composicin/Perfiles de Preferencia (Composite

    Capability/Preference Profiles). Es un sistema basado en RDF, que permite

    estandarizar la forma de definir y transmitir informacin sobre las caractersticas

    de los dispositivos y las preferencias del usuario.

    DOM: Modelo de Objetos del Documento (Document Object Model). Es una

    plataforma que proporciona un conjunto estndar de objetos a travs de la cual se

    pueden crear documentos HTML y XML, navegar por su estructura y, modificar,

    aadir y borrar tanto elementos como contenidos.

    EXI: El Intercambio de XML Eficiente (Efficient XML Interchange) es un formato

    para la representacin muy compacta del conjunto de informacin de XML, que

    pretende optimizar tanto el rendimiento, como la utilizacin de los recursos de

    forma simultnea.

    URI: Identificador de Recurso Uniforme (Uniform Resource Identifiers). Los URI

    son cadenas que funcionan como identificadores globales que hacen referencia a

    recursos en la Web tales como documentos, imgenes, archivos descargables,

    servicios, buzones de correo electrnico y otros.

  • 7

    Figura 1.1 Servicios Web en funcionamiento.

    SEGURIDAD E INTEROPERABILIDAD SERVICIOS WEB.

    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 menciona 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:

    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.

  • 8

    Autorizacin. Los servicios Web deben disponer de mecanismos que les permitan

    controlar el acceso a sus servicios (recursos). Para determinar quin y cmo

    puede hacer a qu y cmo sobre sus recursos. Concedindose permisos de

    ejecucin de ciertos tipos de operaciones sobre ciertos recursos a ciertas

    identidades autenticadas.

    No repudio. Cuando se realizan transacciones es un requisito ser capaz de probar

    que una accin tuvo lugar y que fue realizada por cierto actor. En los servicios

    Web, es necesario ser capaz de demostrar que un cliente utiliz un servicio pese a

    que ste lo niegue as como demostrar que un servicio fue ejecutado.

    Disponibilidad. Es importante para prevenir ataques de denegacin del servicio 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.

    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.

    Seguridad extremo-a-extremo. 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. 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.

  • 9

    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.

    Figura 1.2 La Seguridad

    El consorcio WS-I 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 acelerando su desarrollo actuando como gua y definiendo catlogos de

    buenas prcticas 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.

  • 10

    FUENTES CONSULTADAS

    6.1 Conceptos generales Servicios web. (s.f). Documento visto el 24 de junio de

    2014 del sitio web de:

    http://www.estructurayprogramacion.com/materias/programacion-web/conceptos-

    generales-servicios-web/

    6.2 Estndares Servicios web. (s.f). Documento visto el 24 de junio de 2014 del

    sitio web de: http://www.estructurayprogramacion.com/materias/programacion-

    web/est%C3%A1ndares-servicios-web/

    6.3 Seguridad e interoperabilidad Servicios web. Documento visto el 24 de junio de

    2014 del sitio web de:

    http://www.estructurayprogramacion.com/materias/programacion-web/seguridad-e-

    interoperabilidad-servicios-web/

    Gua Breve de Servicios Web. Documento visto el 24 de junio de 2014 del sitio

    web de: http://w3c.es/Divulgacion/GuiasBreves/ServiciosWeb

    Servidores web. (2012).Internet. En lnea. Pgina consultada el 24 de junio del

    2014.disponible en: http://recursos.cepindalo.es/mod/book/view.php?id=578

    Servidores web y estndares. (2000).Internet. En lnea. Pagina consultada el 24

    de junio del 2014.disponible

    en:http://www.w3c.es/Divulgacion/GuiasBreves/Estandares