SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
ING. SISTEMAS COMPUTACIONALES



            MATERIA:

    PROGRAMACIÓN
    PROGRAMACIÓ WEB
           ALUMNOS:

 JESÚS MONTERO SÁNCHEZ

JHONNATAN FLORES MIRAMON

ATANACIO CADENA GERARDO


           ACTIVIDAD:

       SERVICIOS WEB

   CREACIÓN
   CREACIÓN Y CONSUMO
INTRODUCCIÓN:

Los servicios web son la revolución informática de la nueva generación de aplicaciones
que trabajan colaborativamente en las cuales el software está distribuido en diferentes
servidores.

La informática se inicio con programas mono usuarios implantados en grandes
ordenadores. Posteriormente estas primeras aplicaciones alcanzaron la capacidad de
atender a diferentes usuarios. Pasaron los años y llego la arquitectura cliente-servidor,
que gracias a este modelo de desarrollo, la aplicación se dividía en una parte que
interaccionaba con el usuario y otra parte destinada al procesamiento de información. En
este acercamiento se consiguió que cada una de las partes que constituían la aplicación
pudiera residir en computadoras distintas. Con el paso del tiempo, la computación
aumento y llego la era de las aplicaciones distribuidas en las cuales los procesos se
realizaban en diferentes unidades. De este paso surgió la tecnología Internet para
solventar las problemáticas asociadas a fallo de aplicación centralizado.

Como punto final a esta cronología, los web services son un paso adelante en la
computación ya que de esta forma un ordenador ya no se considerara como un núcleo de
cómputo sino como un repositorio de servicios de n aplicaciones distribuidas por internet.
¿QUÉ ES UN WEB SERVICE?

Web Services es un estándar de comunicación entre procesos y o componentes,
diseñado para ser multiplataforma y multilenguaje, es decir, no importa en qué lenguaje
esté programado un Web Service como ser Visual Basic, C# o java, o en quéplataforma
esté corriendo, ya sea Windows, UNIX o Linux éstos serán accesiblesy utilizables por
otras aplicaciones desarrolladas en otras plataformas o lenguajes deprogramación.
Antiguamente       se      utilizaban      otros     estándares       como       DCOM
(DistributedComponentObjectModel) introducido por Microsoft e implementado por otras
plataformas, y CORBA (CommonObjectRequestBrokerArchitecture) introducido por el
OMG (Object Management Group) e implementado en distintas plataformas, incluido
Windows. Estos estándares tenían bastantes problemas de configuración, especialmente
en entornos en que se encontraban firewalls de por medio en los cuales era imposible
(debido a estándares de seguridad de muchas compañías) habilitar ciertos puertos de
comunicación para que estos componentes funcionaran.

De esta manera la preferencia por utilizar el puerto 80 de HTTP, que normalmente se
encuentra habilitado en la mayoría de los servidores y firewalls debido al uso de
navegadores y servidores Web, no traería mayores complicaciones el uso de una
tecnología que utilice este protocolo y puerto de TCP/IP.

La gran ventaja que trae el protocolo HTTP es su esquema de mensajes especialmente
diseñado y optimizado para ser utilizado en redes como Internet, a diferencia de las viejas
tecnologías como DCOM o CORBA que necesitaban un tipo de red más estable y local
(LAN). Por ello es que el HTTP es el protocolo preferido para el transporte de mensajes
de los Web Services.
¿PARA QUÉ SIRVEN LOS WEB SERVICES?

El desarrollo y la programación de sistemas orientado a objetos o componentes nos ha
llevado a lo largo del tiempo a tener la necesidad de reutilizarlos en diferentes proyectos.
Ya sean componentes desarrollados por nosotros o componentes desarrollados por
terceras partes. Hasta la existencia de los Web Services esta reutilización nos limitaba a
un lenguaje de programación o a una plataforma en particular. Por lo tanto, el uso de los
Web Services nos facilitará la reutilización de funciones de una aplicación en distintas
plataformas o lenguajes ya sea para un uso personal en distintos proyectos, para
comercializarlos o adquirir prestaciones de terceros.

De la misma forma que anteriormente incluíamos en nuestras aplicaciones referencias a
otras librerías como ser Dlls o componentes ActiveX, ahora podremos referenciar
funciones que se estarán ejecutando en otra computadora o servidor sin importarnos en
qué están programados ni en que plataforma están corriendo. Uno de los ejemplos más
comunes del uso de los Web Services se encuentra en los sitios web de comercio
electrónico, los cuales hacen uso de un Web Service para validar los datos de las tarjetas
de crédito de sus clientes. Normalmente este Web Service es provisto por algún banco o
entidad financiera que actúa como intermediario entre el comercio y las tarjetas de crédito.

Otro ejemplo podría ser que necesitamosusar el corrector ortográfico del Microsoft Word
desde un sitio web que creamosen ASP.NET. Ahora bien, esto es algo que podemos
hacer a través de los VisualStudio Tools for the Microsoft Office System, pero para ello
necesitaremos tener instalado el Microsoft Word en el servidor Web. Supongamos que por
alguna razón no se nos permite instalar el Microsoft Word en el servidor Web, pero
disponemos de un servidor de aplicaciones en el que tenemos control total y allí podemos
instalar el MS Word.

Para poder utilizar el MS Word que está instalado en otro servidor desde nuestra
aplicación web podríamos crear un Web Services en el servidor de aplicaciones, el cual
expondrá un Web Método público que se encargue de ejecutar el corrector ortográfico de
MS Word. Teniendo esto podremos utilizar esta funcionalidad desde nuestra aplicación
Web a través de un Web Service sin haber instalado MS Word en el servidor Web.

Para poder reutilizar bien loscomponentes y objetos desarrollados era necesario un
lenguaje de programaciónorientado a objetos. Ahí nace el lenguaje c# de la mano del
.NET framework, que desde sus inicios se focalizó en proveer una herramienta como el
Visual Studio, capaz de crear y consumir Web Services de la forma más rápida y sencilla
tornandotransparentes para el desarrollador protocolos y tipos de mensajes XML
comoWSDL y SOAP, los que describiremos a continuación.
XML (Extensible Markup Language)

XML, siglas en inglés de eXtensible Markup Language ('lenguaje de marcas extensible'),
es un metalenguaje extensible de etiquetas desarrollado por el World Wide Web
Consortium (W3C). Es una simplificación y adaptación del SGML y permite definir la
gramática de lenguajes específicos (de la misma manera que HTML es a su vez un
lenguaje definido por SGML). Por lo tanto XML no es realmente un lenguaje en particular,
sino una manera de definir lenguajes para diferentes necesidades. Algunos de estos
lenguajes que usan XML para su definición son XHTML, SVG, MathML, Android.

XML no ha nacido sólo para su aplicación en Internet, sino que se propone como un
estándar para el intercambio de información estructurada entre diferentes plataformas. Se
puede usar en bases de datos, editores de texto, hojas de cálculo y casi cualquier cosa
imaginable.

XML es una tecnología sencilla que tiene a su alrededor otras que la complementan y la
hacen mucho más grande y con unas posibilidades mucho mayores. Tiene un papel muy
importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir
la información de una manera segura, fiable y fácil.

Ventajas del XML

Es extensible: Después de diseñado y puesto en producción, es posible extender XML
con la adición de nuevas etiquetas, de modo que se pueda continuar utilizando sin
complicación alguna.

El analizador es un componente estándar, no es necesario crear un analizador específico
para cada versión de lenguaje XML. Esto posibilita el empleo de cualquiera de los
analizadores disponibles. De esta manera se evitan bugs y se acelera el desarrollo de
aplicaciones.

Si un tercero decide usar un documento creado en XML, es sencillo entender su
estructura y procesarla. Mejora la compatibilidad entre aplicaciones. Podemos comunicar
aplicaciones de distintas plataformas, sin que importe el origen de los datos, es decir,
podríamos tener una aplicación en Linux con una base de datos Postgres y comunicarla
con otra aplicación en Windows y Base de Datos MS-SQL Server.

Transformamos datos en información, pues se le añade un significado concreto y los
asociamos a un contexto, con lo cual tenemos flexibilidad para estructurar documentos.
WSDL (Web Service Description Language)

El lenguaje de descripción de servicios Web (WSDL, Web Service Description Language)
es un dialecto basado en XML sobre el esquema que describe un servicio Web. Un
documento WSDL proporciona la información necesaria al cliente para interaccionar con
el servicio Web. WSDL es extensible y se pude utilizar para describir, prácticamente,
cualquier servicio de red, incluyendo SOAP sobre HTTP e incluso protocolos que no se
basan          en          XML          como       DCOM          sobre         UDP.

Dado que los protocolos de comunicaciones y los formatos de mensajes están
estandarizados en la comunidad del Web, cada día aumenta la posibilidad e importancia
de describir las comunicaciones de forma estructurada. WSDL afronta esta necesidad
definiendo una gramática XML que describe los servicios de red como colecciones de
puntos finales de comunicación capaces de intercambiar mensajes. Las definiciones de
servicio de WSDL proporcionan documentación para sistemas distribuidos y sirven como
fórmula para automatizar los detalles que toman parte en la comunicación entre
aplicaciones.

Los documentos WSDL definen los servicios como colecciones de puntos finales de red o
puertos. En WSDL, la definición abstracta de puntos finales y de mensajes se separa de
la instalación concreta de red o de los enlaces del formato de datos. Esto permite la
reutilización de definiciones abstractas: mensajes, que son descripciones abstractas de
los datos que se están intercambiando y tipos de puertos, que son colecciones abstractas
de operaciones. Las especificaciones concretas del protocolo y del formato de datos para
un tipo de puerto determinado constituyen un enlace reutilizable. Un puerto se define por
la asociación de una dirección de red y un enlace reutilizable; una colección de puertos
define un servicio. Por esta razón, un documento WSDL utiliza los siguientes elementos
en la definición de servicios de red:

Types: contenedor de definiciones del tipo de datos que utiliza algún sistema de tipos (por
ejemplo XSD).

Message: definición abstracta y escrita de los datos que se están comunicando.

Operation: descripción abstracta de una acción admitida por el servicio.

Port Type: conjunto abstracto de operaciones admitidas por uno o más puntos finales.

Binding: especificación del protocolo y del formato de datos para un tipo de puerto
determinado.

Port: punto final único que se define como la combinación de un enlace y una dirección de
red.

Service: colección de puntos finales relacionados.
SOAP (Simple Object Access Protocol)

SOAP (siglas de Simple Object Access Protocol) es un protocolo estándar que define
cómo dos objetos en diferentes procesos pueden comunicarse por medio de intercambio
de datos XML. Este protocolo deriva de un protocolo creado por David Winer, XML-RPC
en 1998. En su sitio web, Userland, http://www.userland.com se puede encontrar multitud
de documentación acerca de este primer protocolo de comunicación bajo http mediante
XML. Con este protocolo se pedían realizar RPC o remote procedure calls, es decir,
podíamos bien en cliente o servidor realizar peticiones mediante http a un servidor web.
Los mensajes debían tener un formato determinado empleando XML para encapsular los
parámetros de la petición. Con el paso del tiempo el proyecto iniciado por David Winer
interesó a Importantes multinacionales entre las que se encuentran IBM y Microsoft y de
este interés por XML-RPC se desarrollo SOAP."

En el núcleo de los servicios Web se encuentra el protocolo simple de acceso a datos
SOAP, que proporciona un mecanismo estándar de empaquetar mensajes. SOAP ha
recibido gran atención debido a que facilita una comunicación del estilo RPC entre un
cliente y un servidor remoto. Pero existen multitud de protocolos creados para facilitar la
comunicación entre aplicaciones, incluyendo RPC de Sum, DCE de Microsoft, RMI de
Java y ORPC de CORBA. ¿Por qué se presta tanta atención a SOAP?

Una de las razones principales es que SOAP ha recibido un increíble apoyo por parte de
la industria. SOAP es el primer protocolo de su tipo que ha sido aceptado prácticamente
por todas las grandes compañías de software del mundo. Compañías que en raras
ocasiones cooperan entre sí están ofreciendo su apoyo a este protocolo. Algunas de las
mayores Compañías que soportan SOAP son Microsoft, IBM, SUN, Microsystems, SAP y
Ariba.

Algunas de las Ventajas de SOAP son:

No está asociado con ningún lenguaje: los desarrolladores involucrados en nuevos
proyectos pueden elegir desarrollar con el último y mejor lenguaje de programación que
exista pero los desarrolladores responsables de mantener antiguas aflicciones heredadas
podrían no poder hacer esta elección sobre el lenguaje de programación que utilizan.
SOAP no especifica una API, por lo que la implementación de la API se deja al lenguaje
de programación, como en Java, y la plataforma como Microsoft .Net.

No se encuentra fuertemente asociado a ningún protocolo de transporte: La especificación
de SOAP no describe como se deberían asociar los mensajes de SOAP con HTTP. Un
mensaje de SOAP no es más 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 mayoría de los sistemas
de objetos distribuidos se pueden extender, y ya lo están alguno de ellos para que
admitan SOAP.

Aprovecha los estándares existentes en la industria: Los principales contribuyentes a la
especificación SOAP evitaron, intencionadamente, reinventar las cosas. Optaron por
extender los estándares existentes para que coincidieran con sus necesidades. Por
ejemplo, SOAP aprovecha XML para la codificación de los mensajes, en lugar de utilizar
su propio sistema de tipo que ya están definidas en la especificación 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 múltiples entornos: SOAP se desarrollo sobre los
estándares existentes de la industria, por lo que las aplicaciones que se ejecuten en
plataformas con dicho estándares pueden comunicarse mediante mensaje SOAP con
aplicaciones que se ejecuten en otras plataformas. Por ejemplo, una aplicación de
escritorio que se ejecute en una PC puede comunicarse con una aplicación del back-end
ejecutándose en un mainframe capaz de enviar y recibir XML sobre HTTP.




                           Ilustración 1 Estructura SOAP
CREACION Y CONSUMO DE WEB SERVICES

Uso de Google Web API, SOAP y WSDL

Google ofrece a través de su sitio web la documentación y archivos necesarios para que
una máquina pueda acceder a sus servicios de búsqueda. Para ello es necesario un
registro previo que proporciona una clave única. Cada servidor, identificado por la clave
recibida de Google, puede realizar un máximo de 1000 peticiones por día. Esto evita que
se puedan utilizar estas funcionalidades para ofrecer un servicio de búsqueda paralelo al
de Google desde un servidor web distinto.
El web service de Google se ofrece gratuitamente a investigadores para que
experimenten con la tecnología que lo sustenta. En estos momentos, no hay versión
comercial.
El API de Google se ofrece en un archivo comprimido ZIP compuesto por distintos
ficheros, entre los que se encuentran un archivo WSDL (Web Services Description
Language, lenguaje de descripción de servicios web), un archivo .jar con clases Java
junto a su documentación y aplicaciones demostrativas en Java y Microsoft .Net.
La aplicación Java funciona desde línea de comando y permite hacer búsquedas, solicitar
sugerencias de un término mal tecleado y ver la caché de Google para cierta URL.
Google proporciona un archivo WSDL [5] que describe las operaciones soportadas. Este
fichero se encuentra entre los archivos descargados de la API, aunque también se ofrece
de forma online [6].
La descripción WSDL indica que se soportan tres operaciones:
DoSpellingSuggestion, doGetCachedPage y doGoogleSearch. La primera permite solicitar
a Google una sugerencia de escritura correcta para un término mal tecleado. La segunda
devuelve la caché almacenada de Google para una URL dada. Por
último, doGoogleSearch, se corresponde con el servicio tradicional de búsquedas en la
Web.
GOOGLE FREE

Google Free es el nombre del servicio de Google en el que puedes conseguir el código
necesario para poner una caja de Google en tu web. También existe en castellano, pero
mucho menos completo. El código de Google Free es un «formulario» (FORM) de caja de
búsqueda que debes incluir en el HTML de la portada o de las páginas en que quieras
que aparezca, normalmente en la plantilla de la cabecera o del lateral, si es que si utilizas
un editor de contenidos.

Poner una caja de búsqueda de Google tal cual «para buscar en toda la Internet» puede
no tener mucho sentido, pero Google Free with Site Search que es la tercera opción que
ofrece Google es la más interesante: con ella puedes hacer que esa caja de búsquedas
que pones en tu web encuentre cosas únicamente dentro de tu propia web.
Principio del formulario



                                         WWW         gerardoac.netau.net
Final del formulario


Esto está bastante bien, sobre todo para páginas web que no tienen ningún tipo de
buscador. Como se ve, la opción marcada por omisión es la de tu sitio y los resultados se
muestran en Google pero limitados a la URL que le hayas indicado. Tecleando algo y
pulsando Retorno el invento ya funciona.

Pero lo más interesante es que sobre el código original de Google Free with Site Search
se pueden cambiar algunas cosas si necesitas personalizarlo más. Lo primero obviamente
es cambiar YOUR DOMAIN NAME por el dominio de tu sitio web. Los dos primeros
valores van ocultos en el formulario, y el tercero es el que se ve realmente debajo de la
caja:




Sobre el aspecto puedes cambiar algunas cosas:

   •   El bgcolor="#FFFFFF" de la tabla se puede eliminar si lo prefieres transparente, tal
       vez porque el color de tu página no sea blanco.
   •   El texto del botón originalmente es Google Search pero puedes cambiarlo por algo
       en tu idioma, como Buscar en el parámetro value del tercer input.
•   Para cambiar tipo de letra y tamaño del texto lo mejor es eliminar los font del
       original y a todos los input añadirles el parámetro class="xyz" habiendo definido
       antes el estilo de esa clase en la hoja de estilos CSS de la página.
   •   El tamaño de la caja se cambia donde pone size=31, con 15 ó 20 suele ser
       suficiente.
   •   El logo de Google es obligatorio que aparezca (condiciones de uso), pero
       seguramente puedes cambiar sin problemas un poco la imagen original,
       Logo_40wht.gif por una un poco más pequeña o acorde con lo que necesites.
       Moviendo el img (cuidado con las celdas de la «tabla») puedes cambiarla de
       posición antes o después del botón e incluso modificar la ruta del fichero de
       imagen, para hosperarlo en un directorio de tu servidor.
   •   Tal y como dicen las instrucciones, asegúrate que la codificación del texto en tus
       páginas es Unicode UTF-8 y, si no lo es, para que las búsquedas funcionen
       correctamente, cambia los valores UTF-8 de los dos primeros input por lo que
       corresponda. La alternativa típica es ISO-8859-1.
   •   Podrías eliminar los botones de radio pero conservar la misma funcionalidad,
       quitando el input type=radio y añadiendo otros dos input="hidden" ocultos con
       estos parámetros name="domains" value="xyz.com" y name="sitesearch"
       value="xyz.com" (donde pone xyz.com pones tu dominio).
   •   Si prefieres que los resultados aparezcan en Google México en vez de en en
       Google.com (el internacional, en inglés) puedes cambiar google.com por
       google.com.mx en el form de la primera línea del código.

Para terminar con esto de la caja de búsqueda para tu web y asegurarte de que funciona
bien, necesitas que Google ya haya leído todas tus páginas con anterioridad, de la mejor
forma posible. Esto lo hace el famoso robot de Google automáticamente. Puedes
comprobar cuántas páginas tiene indexadas buscando site:xyz.com en Google. Si no hay
muchos resultados, la caja no servirá de gran cosa, pero normalmente el robot de Google
habrá encontrado tu web y lo habrá indexado a fondo a las pocas semanas de haberlo
creado.

GOOGLE MAPS

Google Sitemaps es un experimento en beta de Google que permite a los webmasters
enviar mapas completos de sus sitios webs para que Google los indexe mejor. Los mapas
son simplemente una lista con todas las URLs, bien en XML o en un fichero plano de
texto. En Google Sitemaps with Wordpress explican cómo generarlo con WordPress. Con
los otros sistemas de bitácoras será igual de fácil. Se genera un fichero XML al que se
puede apuntar desde el directorio raíz (como el robots.txt) y Google lo usará. También
puedes registrarte y enviar una lista de tus URLs en formato texto, directamente (solución
de baja tecnología).
El mapa del sitio web ayuda a la araña de Google a indexar ese sitio, evitando algunos
problemas habituales del rastreo automático, como bucles, zonas oscuras u ocultas y
cosas así.

¿Un Google en tiempo real?

Pero lo más importante de Google Sitemaps es que en el futuro podría servir para poder
hacer pings a Google cada vez que en un sitio web se publica algo - como los habituales
pings y trackbacks que se envían unos weblogs a otros. De este modo se podría indicar a
Google cuándo debe ir a revisiar una página porque se acaba de incluir contenido nuevo,
sin esperar a que el robot venga cuando pueda o quiera. Se resolvería así uno de los
puntos débiles del buscador: que el rastreo de las páginas es lento y a veces requiere
días, semanas o incluso meses. Por ejemplo Technorati o Feedster lo hacen mucho más
rápido gracias a los pings y se anuncian como «buscadores en tiempo real», aunque sólo
abarquen la blogosfera o la RSS-esfera.

Como siempre Dirson tiene información mucho más detallada al respecto, puedes leerlo
en Google Sitemaps, relativa al estándar abierto del formato de los mapas y el
funcionamiento de este nuevo servicio de Google para webmasters.

GOOGLE TRADUCTOR

Claramente mas es mejor, al menos en este caso, si tu web está disponible en ingles
como mínimo además del español, claramente tendrás mas visitas y de paso mejoraras tu
posición en google. Limitarnos al español es lo peor que podemos hacer, lo mejor es tener
disponible el material al menos en ingles, en este caso lo más simple es agregar un
traductor en tu blog para que lo haga automáticamente. Google ofrece agregar un widget,
que le permitirá a la visita traducir automáticamente la página que estan mirando. En
estos casos el mayor problema es que como generalmente tenemos varias faltas
ortográficas, estas no se traducirán, así que hay que tener mucho cuidado con esto o sino
lo que veran nuestras visitas será un span-glish.
Primero entramos a la pagina de google widgets:




Luego como ven pueden personalizar algunas cosas, tales como el borde, el nombre del
link que esta sobre la caja, el tamaño del cuadro, además deben seleccionar el idioma en
el que está escrito el sitio, y el idioma inferior corresponde al idioma de toda la página y
además será el idioma del link inferior del traductor:




Luego simplemente click en el botón Obtener el Código, este aparecerá justo abajo:
MICROSOFT OFFICE LIVE

Microsoft Office Live es un conjunto de servicios basados en Internet diseñado para
usuarios y pequeñas empresas interesadas en crear un sitio Web o almacenar y compartir
documentos en línea. A partir de 2009, consta de dos servicios, Office Live Workspace y
Office Live Small Business.

Office Live Workspace

Office Live Workspace es un servicio gratuito para almacenar y compartir documentos en
línea. La empresa afirma que se suele utilizar para el trabajo, escuela y casa, porque los
documentos pueden administrarse desde ubicaciones remotas sin una unidad flash.
Disponible en más de 25 idiomas, Office Live Workspace requiere el acceso a Internet y
un explorador compatible. Uso de un área de trabajo se puede mejorar mediante la
instalación de Silverlight, un complemento que hace más fácil de cargar varios
documentos y colaborar con otras personas en un área de trabajo. Para que los espacios
de trabajo tener acceso directamente desde la Oficina, los usuarios
de Word, Excel y PowerPoint deben instalar Office Live Update. Los archivos no pueden
editarse desde dentro de área de trabajo, pero al hacer clic en "Editar" se abrirán en
Microsoft Office. El área de trabajo no ofrece colaboración sin conexión — en su lugar
documentos son "desprotegido" y "protegidos", pero el servicio se integra con SharedView
para compartir la pantalla en tiempo real.

Características

Almacenamiento en línea. Office Live permite a los usuarios ahorrar hasta
5 gigabytes (GB) de la información en muchos formatos,3 que se pueden acceder desde
cualquier ordenador con conexión a internet, de archivo, incluso si no está instalado
Office. La compañía afirma esto reemplaza a la necesidad de unidades flash o CD como
una solución de almacenamiento y ofrece capacidades para la actualización de planes de
proyecto, organizar eventos y delegar asignaciones sin programar una reunión o
depender de correo electrónico.
Intercambio de información. Office Live Workspace está diseñado para que los usuarios
de PC puedan compartir un único documento o un área de trabajo que contiene varios
documentos, así como colaborar en línea como un grupo. Áreas de trabajo son protegidos
por contraseña y los usuarios pueden controlar quién ve y modifica la información. Los
archivos o áreas de trabajo pueden ser compartidos con hasta 100 personas.2
Compatibilidad de software. Mientras Office Live Workspace trabaja con programas de
Microsoft Office como Word, Excel, PowerPoint y Outlook, también permite a los usuarios
almacenar los documentos de otros tipos de archivo. Si la actualización Office Live está
instalada, archivos y documentos pueden ser abiertos y guardan directamente
desde Microsoft Office XP, 2003, o 2007. Los usuarios pueden también
sincronizar, contactos, tareas y listas de eventos con Outlook 2003 y 2007, y listas de
área de trabajo se pueden exportar a Excel.5
Recursos y apoyo. Microsoft creó un sitio Community Support Web,6 que incluye un blog,
wiki, vídeos sobre procedimientos y la oportunidad para los clientes preguntar y responder
preguntas acerca del uso de Office Live Workspace.
Microsoft Office Live Small Business
Microsoft Office Live Small Business es un servicio de basadas en Internet diseñado para
ayudar a los usuarios no técnicos con la creación de un sitio Web de aspecto profesional.

Características
Herramientas de diseño de sitio Web y alojamiento. Office Live Small Business
proporciona acceso a herramientas de diseño de web en línea y plantillas para el
desarrollo de sitio Web de los usuarios no técnicos gratuitos. Diseñador de sitio es una
característica de productos utilizada para personalizar los diseños de página, colores,
navegación y otros elementos del sitio. Los usuarios también pueden agregar módulos
como botones de PayPal, blogs y calendarios a páginas. Los usuarios web avanzadas
pueden cargar código HTML para personalizar sus páginas web. Microsoft ofrece
alojamiento de sitio Web libre y 5 gigabytes (GB) de espacio de almacenamiento para
archivos de sitio. Espacio de almacenamiento adicional puede ser adquirido si sitio de un
usuario excede este límite de almacenamiento.
Dominio de nombre de registro y las empresas e-mail. Dentro de Office Live Small
Business, nombres de dominio pueden ser seleccionados y registrados. Los clientes que
ya tienen un nombre de dominio con otro proveedor pueden redirigir a Office Live Small
Business. Los usuarios pueden crear hasta 100 cuentas de correo electrónico basado en
dominio de forma gratuita. Se pueden comprar las cuentas de correo electrónico
adicionales. El precio es $ 14.95 un año e incluye registro privado. Administrador de
contacto. El administrador de contacto está diseñado para organizar información del
cliente, historiales de contactos y de información de ventas en un solo lugar y hacerla
accesible a través de la web a su toda organización.
Administrador de documento. Esta aplicación se utiliza como un repositorio en línea para
los documentos a fin de les fácilmente accesible a los empleados para facilitar la
colaboración.
Área de equipo. La aplicación de Team Workspace crea un proyecto de sitio de Web para
publicar información para compartir con los clientes, empleados o socios comerciales.
Sirve para agilizar el proceso de edición, dar a los usuarios acceso remoto a datos de la
compañía y descargar archivos grandes como sea necesario.
Recursos y apoyo. Microsoft ofrece soporte de 24 horas técnica telefónica de forma
gratuita durante 30 días. En línea, el sitio de comunidad incluye un blog, wiki, artículos,
vídeos sobre procedimientos y la oportunidad para los clientes preguntar y responder
preguntas acerca del uso de Office Live Small Business.
Seguridad
Office Live Small Business, datos se almacenan en la red de Microsoft donde los servicios
de firewall de red ayudar a proteger los documentos, correo electrónico y otros datos
almacenados. La compañía afirma todos datos de negocio del cliente es una copia de
cada día, y que si los clientes inadvertidamente dañar su sitio web o archivos de áreas de
trabajo, o eliminar los archivos importantes en Office Live Small Business, que pueden
recuperación sus datos de copia de seguridad almacenado en servidores de Microsoft.
Características integradas-protección con contraseña se incluyen para aplicaciones de
negocio como Team Workspace y administrador de documentos.
SERVICIOS WEB DE SEGURIDAD

El desarrollo de una aplicación exige trabajar con un conjunto de cuestiones de seguridad.
El otro conjunto de cuestiones (que suelen ser las más destacadas en cualquier
comentario acerca de la seguridad Web) se refieren a la seguridad de la aplicación una
vez implementada y en ejecución.

Las aplicaciones Web, por definición, permiten el acceso de usuarios a recursos
centrales, el servidor Web y, a través de éste, a otros como los servidores de base de
datos. Comprender e implementar las medidas de seguridad adecuadas permite:

  •   Proteger los recursos propios contra accesos no autorizados.
  •   Restringir los niveles de acceso por usuario o por función.
  •   Establecer integridad de datos y confidencialidad, proporcionando un entorno
      relativamente seguro en el que los usuarios se encuentren cómodos al trabajar con
      su aplicación.
  •   Establecer control sobre cómo la aplicación obtiene acceso a recursos restringidos.
  •   Garantizar que el código de la aplicación se ejecuta de la forma esperada.

Este tema proporciona un comentario general sobre cómo llevar a cabo estos objetivos, e
incluye vínculos con temas adicionales en los que se pueden obtener más detalles acerca
de las tecnologías implicadas.

Puede ayudar a proteger su aplicación de acceso no autorizado aprovechando estos tipos
de características de seguridad:

  •   Características de seguridad que ofrecen los Servicios de Internet Information
      Server (IIS) como parte de su funcionalidad general de servidor Web. Esto es,
      seguridad de nivel de usuario, equipo y archivo de Windows.
  •   La seguridad que se puede incorporar a la aplicación ASP.NET para proporcionar
      acceso específico para la aplicación.
ESCENARIOS DE USO

Este tema se centra en la seguridad de los servicios Web (punto a punto) relativa tanto a
la plataforma como al transporte que pueden ofrecer los servicios subyacentes de
ASP.NET, IIS y el sistema operativo. Mientras que la seguridad de la plataforma permite
soluciones seguras para escenarios de intranet estrechamente vinculados, no resulta
conveniente para escenarios heterogéneos. Es por este motivo precisamente por el que
se requiere la seguridad que ofrece la especificación de seguridad WS-Security de la
arquitectura GXA. Utilice Web ServicesDevelopment Kit para crear soluciones de
seguridad de mensajes para servicios Web.

Para entornos de dominios Windows estrechamente vinculados:

   •   Si desea transmitir la identidad del llamador original desde una aplicación Web de
       ASP.NET a un servicio Web remoto, la aplicación Web de ASP.NET debería
       utilizar la autenticación Kerberos (con cuentas configuradas para la delegación),
       básica o mediante Formularios.
   •    Si utiliza la autenticación Kerberos, habilite la suplantación con la aplicación Web
       y configure la propiedad Credentials del proxy de servicio
   •   Web mediante DefaultCredentials.
   •    Si utiliza la autenticación básica o mediante Formularios, capture las credenciales
       del llamador y establezca la propiedad Credentials del proxy de servicio Web
       agregando un nuevo objeto CredentialCache.

Para escenarios “de servicio Web a servicio Web”:

   •    Utilice la autenticación básica o Kerberos y establezca las credenciales en el
       proxy de cliente.
   •    Utilice una aplicación de Servicios Empresariales o un servicio de Windows fuera
       de proceso para que manipule los certificados X.509 desde las aplicaciones Web.
   •    En la medida de lo posible, utilice las comprobaciones de autorización de sistema
       como, por ejemplo, la autorización mediante archivos y direcciones
   •   URL.
   •    Si utiliza la autorización granular (en el nivel de método Web por ejemplo), utilice
       funciones .NET (tanto de forma declarativa como imperativa).
   •    Autorice a los usuarios que no sean de Windows mediante funciones .NET
       (basadas en un objeto GenericPrincipal que contenga funciones).
   •    Deshabilite los protocolos HTTP-GET y HTTP-POST en todos los servidores de
       producto.
   •    Utilice la seguridad de transporte si no le preocupa transferir los mensajes de
       forma segura a través de sistemas intermedios.
   •    Utilice la seguridad de transporte si el rendimiento de SSL es adecuado.
   •    Utilice la especificación de seguridad WS-Security y Web Services.
NTLM

Es una suite de Microsoft de protocolos de seguridad que proporciona autenticación,
integridad y confidencialidad de los usuarios.NTLM es el sucesor del protocolo de
autenticación de Microsoft LAN Manager (LANMAN), un mayor producto de Microsoft, y
los intentos de proporcionar compatibilidad hacia atrás con LANMAN. NTLM versión dos
(NTLMv2), que se introdujo en Windows NT 4.0 SP4 (y compatibles de forma nativa en
Windows 2000), mejora la seguridad NTLM por el endurecimiento del protocolo contra
ataques de suplantación de muchos, y la adición de la capacidad de un servidor para
autenticar al cliente.

Microsoft no recomienda el uso de NTLM en aplicaciones:

Los ejecutores deben ser conscientes de que NTLM no es compatible con los últimos
métodos criptográficos, tales como AES o SHA-256. Se utiliza comprobación de
redundancia cíclica (CRC) o un mensaje de algoritmos de resumen (RFC1321) para la
integridad, y lo utiliza para el cifrado RC4. Derivación de una clave de una contraseña es
como se especifica en RFC1320 y FIPS46-2. Por lo tanto, las aplicaciones generalmente
se aconseja no utilizar NTLM.

Mientras que Kerberos ha sustituido NTLM de forma predeterminada el protocolo de
autenticación en un Active Directory basado en inicio de sesión único esquema, NTLM es
aún ampliamente utilizado en situaciones donde un controlador de dominio no está
disponible o es inaccesible. Por ejemplo, NTLM se usa si un cliente no es capaz de
Kerberos, el servidor no está unido a un dominio, o el usuario se autentica de forma
remota a través de Internet.

KERBEROS

Kerberos se basa en el Protocolo de Needham-Schroeder. Usa un tercero de confianza,
denominado "centro de distribución de claves" (KDC, por sus siglas en inglés: Key
Distribution Center), el cual consiste de dos partes lógicas separadas: un "servidor de
autenticación" (AS o Authentication Server) y un "servidor emisor de tiquets" (TGS o
Ticket Granting Server). Kerberos trabaja sobre la base de "tickets", los cuales sirven para
demostrar la identidad de los usuarios.

Kerberos mantiene una base de datos de claves secretas; cada entidad en la red sea
cliente o servidor comparte una clave secreta conocida únicamente por él y Kerberos. El
conocimiento de esta clave sirve para probar la identidad de la entidad. Para una
comunicación entre dos entidades, Kerberos genera una clave de sesión, la cual pueden
usar para asegurar sus interacciones.
A continuación se describe someramente el protocolo. Se usaran las siguientes
abreviaturas:

AS = Authentication Server

TGS = Ticket Granting Server

SS = Service Server.

FUNCIONAMIENTO

En resumen el funcionamiento es el siguiente: el cliente se autentica a sí mismo contra el
AS, así demuestra al TGS que está autorizado para recibir un ticket de servicio (y lo
recibe) y ya puede demostrar al SS que ha sido aprobado para hacer uso del servicio
kerberizado.

En más detalle:

Un usuario ingresa su nombre de usuario y password en el cliente

El cliente genera una clave hash a partir del password y la usará como la clave secreta
del cliente.

El cliente envía un mensaje en texto plano al AS solicitando servicio en nombre del
usuario. Nota: ni la clave secreta ni el password son enviados, solo la petición del servicio.

El AS comprueba si el cliente está en su base de datos. Si es así, el AS genera la clave
secreta utilizando la función hash con la password del cliente encontrada en su base de
datos. Entonces envía dos mensajes al cliente:

Mensaje A: Client/TGS sessionkey cifrada usando la clave secreta del usuario

Mensaje B: Ticket-Granting Ticket (que incluye el ID de cliente, la dirección de red del
cliente, el período de validez y el Client/TGS sessionkey) cifrado usando la clave secreta
del TGS.

Una vez que el cliente ha recibido los mensajes, descifra el mensaje A para obtener el
client/TGS sessionkey. Esta sessionkey se usa para las posteriores comunicaciones con
el TGS. (El cliente no puede descifrar el mensaje B pues para cifrar éste se ha usado la
clave del TGS). En este momento el cliente ya se puede autenticar contra el TGS.

Entonces el cliente envía los siguientes mensajes al TGS:

Mensaje C: Compuesto del Ticket-Granting Ticket del mensaje B y el ID del servicio
solicitado.

Mensaje D: Autenticador (compuesto por el ID de cliente y una marca de tiempo), cifrado
usando el client/TGS sessionkey.
Cuando recibe los mensajes anteriores, el TGS descifra el mensaje D (autenticador)
usando el client/TGS sessionkey y envía los siguientes mensajes al cliente:

Mensaje E: Client-to-server ticket (que incluye el ID de cliente, la dirección de red del
                      server
cliente, el período de validez y una Client/Server sessionkey) cifrado usando la clave
 liente,
secreta del servicio.

Mensaje F: Client/server session key cifradausando el client/TGS session key.

Cuando el cliente recibe los mensajes E y F, ya tiene suficiente información para
                                                                           infor
autenticarse contra el SS. El cliente se conecta al SS y envía los siguientes mensajes:

Mensaje E del paso anterior.

Mensaje G: un nuevo Autenticador que incluye el ID de cliente, una marca de tiempo y
que está cifrado usando el client/server s
                                         sessionkey.

El SS descifra el ticket usando su propia clave secreta y envía el siguiente mensaje al
cliente para confirmar su identidad:

Mensaje H: la marca de tiempo encontrada en el último Autenticador recibido del cliente
más uno, cifrado el client/server sessionkey.
                    client/serve

El cliente descifra la confirmación usando el client/server sessionkey y chequea si la
marca de tiempo está correctamente actualizada. Si esto es así, el cliente confiará en el
servidor y podrá comenzar a usar el servicio que este ofrece.

El servidor provee del servicio al cliente.
REFERENCIAS

       http://www.webtaller.com/maletin/articulos/que_son_web_services.php
       http://www.cepeu.edu.py/
       http://es.wikipedia.org/wiki/Extensible_Markup_Language
       http://www.desarrolloweb.com/articulos/1581.php
       http://es.wikipedia.org/wiki/Simple_Object_Access_Protocol
       http://www.desarrolloweb.com/articulos/1557.php
       http://es.wikipedia.org/wiki/Microsoft_Office_Live
       http://es.wikipedia.org/wiki/Kerberos
       http://www.ibm.com/developerworks/ssa/webservices/tutorials/ws-radsecurity3/index.html

Más contenido relacionado

La actualidad más candente (13)

Windows communication foundation (wcf)
Windows communication foundation (wcf)Windows communication foundation (wcf)
Windows communication foundation (wcf)
 
Java2 servicios web
Java2 servicios webJava2 servicios web
Java2 servicios web
 
Arquitectura Web y Aplicaciones web [Infografia]
Arquitectura Web y Aplicaciones web [Infografia]Arquitectura Web y Aplicaciones web [Infografia]
Arquitectura Web y Aplicaciones web [Infografia]
 
Arquitectura Web y Aplicaciones web (Infografia)
Arquitectura Web y Aplicaciones web (Infografia)Arquitectura Web y Aplicaciones web (Infografia)
Arquitectura Web y Aplicaciones web (Infografia)
 
Windows comunication fundaction
Windows comunication fundactionWindows comunication fundaction
Windows comunication fundaction
 
Unidad 4
Unidad 4Unidad 4
Unidad 4
 
Servicios w eb
Servicios w ebServicios w eb
Servicios w eb
 
Wcf
WcfWcf
Wcf
 
Wcf
WcfWcf
Wcf
 
Arquitectura de Integracion de los Servicios
Arquitectura de Integracion de los ServiciosArquitectura de Integracion de los Servicios
Arquitectura de Integracion de los Servicios
 
Arquitectura de integración de servicios
Arquitectura de integración de serviciosArquitectura de integración de servicios
Arquitectura de integración de servicios
 
Servicios web
Servicios webServicios web
Servicios web
 
La plataforma
La plataformaLa plataforma
La plataforma
 

Destacado

SOAP y Web Services
SOAP y Web ServicesSOAP y Web Services
SOAP y Web Services
edmodi
 

Destacado (20)

Creando un servicio SOAP en Java con NetBeans
Creando un servicio SOAP en Java con NetBeansCreando un servicio SOAP en Java con NetBeans
Creando un servicio SOAP en Java con NetBeans
 
SOAP y Web Services
SOAP y Web ServicesSOAP y Web Services
SOAP y Web Services
 
SOA y Web Services
SOA y Web ServicesSOA y Web Services
SOA y Web Services
 
Servicios web soap java
Servicios web soap javaServicios web soap java
Servicios web soap java
 
Web Services
Web ServicesWeb Services
Web Services
 
Manual de creación y uso de Web Service SOAP
Manual de creación y uso de Web Service SOAPManual de creación y uso de Web Service SOAP
Manual de creación y uso de Web Service SOAP
 
Web services restful con JAX-RS
Web services restful con JAX-RSWeb services restful con JAX-RS
Web services restful con JAX-RS
 
Introduccion a los Servicios Web Rest
Introduccion a los Servicios Web RestIntroduccion a los Servicios Web Rest
Introduccion a los Servicios Web Rest
 
Servicios Web
Servicios WebServicios Web
Servicios Web
 
Desarrollando un API con REST
Desarrollando un API con RESTDesarrollando un API con REST
Desarrollando un API con REST
 
SOAP
SOAPSOAP
SOAP
 
Nota de Evolución o Nota SOAP
Nota de Evolución o Nota SOAPNota de Evolución o Nota SOAP
Nota de Evolución o Nota SOAP
 
Ted exgranvía ab
Ted exgranvía abTed exgranvía ab
Ted exgranvía ab
 
Ppt risorse
Ppt risorsePpt risorse
Ppt risorse
 
Affectation PEA
Affectation PEA Affectation PEA
Affectation PEA
 
Meetup animations et transitions css3
Meetup animations et transitions css3Meetup animations et transitions css3
Meetup animations et transitions css3
 
Wuxia le renard - Salon du livre de Toronto - 4 décembre 2014
Wuxia le renard - Salon du livre de Toronto - 4 décembre 2014Wuxia le renard - Salon du livre de Toronto - 4 décembre 2014
Wuxia le renard - Salon du livre de Toronto - 4 décembre 2014
 
Nouveaux risques pour les entreprises (Gaëtan Lefèvre) - Belgian Insurance Co...
Nouveaux risques pour les entreprises (Gaëtan Lefèvre) - Belgian Insurance Co...Nouveaux risques pour les entreprises (Gaëtan Lefèvre) - Belgian Insurance Co...
Nouveaux risques pour les entreprises (Gaëtan Lefèvre) - Belgian Insurance Co...
 
Medias sociaux wiser_local
Medias sociaux wiser_localMedias sociaux wiser_local
Medias sociaux wiser_local
 
Plan Integrado de Negocio - EEB
Plan Integrado de Negocio - EEBPlan Integrado de Negocio - EEB
Plan Integrado de Negocio - EEB
 

Similar a Web services

Similar a Web services (20)

LA WEB 2.0
LA WEB 2.0LA WEB 2.0
LA WEB 2.0
 
LA WEB 2.0
LA WEB 2.0LA WEB 2.0
LA WEB 2.0
 
LA WEB 2.0
LA WEB 2.0LA WEB 2.0
LA WEB 2.0
 
web 2.0
web 2.0web 2.0
web 2.0
 
LA WEB 2.0
LA WEB 2.0LA WEB 2.0
LA WEB 2.0
 
9-Unidad 3: Diseños de Vista-3.1 Creación Web Services
9-Unidad 3: Diseños de Vista-3.1 Creación Web Services9-Unidad 3: Diseños de Vista-3.1 Creación Web Services
9-Unidad 3: Diseños de Vista-3.1 Creación Web Services
 
Act1 tecnologiaweb uni1
Act1 tecnologiaweb uni1Act1 tecnologiaweb uni1
Act1 tecnologiaweb uni1
 
EQUIPO 2,2A PARTE DE LAS AGUILAS
EQUIPO 2,2A PARTE DE LAS AGUILASEQUIPO 2,2A PARTE DE LAS AGUILAS
EQUIPO 2,2A PARTE DE LAS AGUILAS
 
Web services
Web servicesWeb services
Web services
 
9- Unidad 3: Webservices-3.1. Introducción, Conceptos y Características
9- Unidad 3: Webservices-3.1. Introducción, Conceptos y Características9- Unidad 3: Webservices-3.1. Introducción, Conceptos y Características
9- Unidad 3: Webservices-3.1. Introducción, Conceptos y Características
 
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEBEQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
 
La plataforma
La plataformaLa plataforma
La plataforma
 
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEBEQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
 
Servicios web itt
Servicios web ittServicios web itt
Servicios web itt
 
Paola
PaolaPaola
Paola
 
Paola
PaolaPaola
Paola
 
Paola
PaolaPaola
Paola
 
itio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspotitio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspot
 
Paola
PaolaPaola
Paola
 
Paola 1001 jt
Paola 1001 jtPaola 1001 jt
Paola 1001 jt
 

Último

Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
Wilian24
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
jlorentemartos
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 

Último (20)

Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
Usos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicasUsos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicas
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 

Web services

  • 1. ING. SISTEMAS COMPUTACIONALES MATERIA: PROGRAMACIÓN PROGRAMACIÓ WEB ALUMNOS: JESÚS MONTERO SÁNCHEZ JHONNATAN FLORES MIRAMON ATANACIO CADENA GERARDO ACTIVIDAD: SERVICIOS WEB CREACIÓN CREACIÓN Y CONSUMO
  • 2. INTRODUCCIÓN: Los servicios web son la revolución informática de la nueva generación de aplicaciones que trabajan colaborativamente en las cuales el software está distribuido en diferentes servidores. La informática se inicio con programas mono usuarios implantados en grandes ordenadores. Posteriormente estas primeras aplicaciones alcanzaron la capacidad de atender a diferentes usuarios. Pasaron los años y llego la arquitectura cliente-servidor, que gracias a este modelo de desarrollo, la aplicación se dividía en una parte que interaccionaba con el usuario y otra parte destinada al procesamiento de información. En este acercamiento se consiguió que cada una de las partes que constituían la aplicación pudiera residir en computadoras distintas. Con el paso del tiempo, la computación aumento y llego la era de las aplicaciones distribuidas en las cuales los procesos se realizaban en diferentes unidades. De este paso surgió la tecnología Internet para solventar las problemáticas asociadas a fallo de aplicación centralizado. Como punto final a esta cronología, los web services son un paso adelante en la computación ya que de esta forma un ordenador ya no se considerara como un núcleo de cómputo sino como un repositorio de servicios de n aplicaciones distribuidas por internet.
  • 3. ¿QUÉ ES UN WEB SERVICE? Web Services es un estándar de comunicación entre procesos y o componentes, diseñado para ser multiplataforma y multilenguaje, es decir, no importa en qué lenguaje esté programado un Web Service como ser Visual Basic, C# o java, o en quéplataforma esté corriendo, ya sea Windows, UNIX o Linux éstos serán accesiblesy utilizables por otras aplicaciones desarrolladas en otras plataformas o lenguajes deprogramación. Antiguamente se utilizaban otros estándares como DCOM (DistributedComponentObjectModel) introducido por Microsoft e implementado por otras plataformas, y CORBA (CommonObjectRequestBrokerArchitecture) introducido por el OMG (Object Management Group) e implementado en distintas plataformas, incluido Windows. Estos estándares tenían bastantes problemas de configuración, especialmente en entornos en que se encontraban firewalls de por medio en los cuales era imposible (debido a estándares de seguridad de muchas compañías) habilitar ciertos puertos de comunicación para que estos componentes funcionaran. De esta manera la preferencia por utilizar el puerto 80 de HTTP, que normalmente se encuentra habilitado en la mayoría de los servidores y firewalls debido al uso de navegadores y servidores Web, no traería mayores complicaciones el uso de una tecnología que utilice este protocolo y puerto de TCP/IP. La gran ventaja que trae el protocolo HTTP es su esquema de mensajes especialmente diseñado y optimizado para ser utilizado en redes como Internet, a diferencia de las viejas tecnologías como DCOM o CORBA que necesitaban un tipo de red más estable y local (LAN). Por ello es que el HTTP es el protocolo preferido para el transporte de mensajes de los Web Services.
  • 4. ¿PARA QUÉ SIRVEN LOS WEB SERVICES? El desarrollo y la programación de sistemas orientado a objetos o componentes nos ha llevado a lo largo del tiempo a tener la necesidad de reutilizarlos en diferentes proyectos. Ya sean componentes desarrollados por nosotros o componentes desarrollados por terceras partes. Hasta la existencia de los Web Services esta reutilización nos limitaba a un lenguaje de programación o a una plataforma en particular. Por lo tanto, el uso de los Web Services nos facilitará la reutilización de funciones de una aplicación en distintas plataformas o lenguajes ya sea para un uso personal en distintos proyectos, para comercializarlos o adquirir prestaciones de terceros. De la misma forma que anteriormente incluíamos en nuestras aplicaciones referencias a otras librerías como ser Dlls o componentes ActiveX, ahora podremos referenciar funciones que se estarán ejecutando en otra computadora o servidor sin importarnos en qué están programados ni en que plataforma están corriendo. Uno de los ejemplos más comunes del uso de los Web Services se encuentra en los sitios web de comercio electrónico, los cuales hacen uso de un Web Service para validar los datos de las tarjetas de crédito de sus clientes. Normalmente este Web Service es provisto por algún banco o entidad financiera que actúa como intermediario entre el comercio y las tarjetas de crédito. Otro ejemplo podría ser que necesitamosusar el corrector ortográfico del Microsoft Word desde un sitio web que creamosen ASP.NET. Ahora bien, esto es algo que podemos hacer a través de los VisualStudio Tools for the Microsoft Office System, pero para ello necesitaremos tener instalado el Microsoft Word en el servidor Web. Supongamos que por alguna razón no se nos permite instalar el Microsoft Word en el servidor Web, pero disponemos de un servidor de aplicaciones en el que tenemos control total y allí podemos instalar el MS Word. Para poder utilizar el MS Word que está instalado en otro servidor desde nuestra aplicación web podríamos crear un Web Services en el servidor de aplicaciones, el cual expondrá un Web Método público que se encargue de ejecutar el corrector ortográfico de MS Word. Teniendo esto podremos utilizar esta funcionalidad desde nuestra aplicación Web a través de un Web Service sin haber instalado MS Word en el servidor Web. Para poder reutilizar bien loscomponentes y objetos desarrollados era necesario un lenguaje de programaciónorientado a objetos. Ahí nace el lenguaje c# de la mano del .NET framework, que desde sus inicios se focalizó en proveer una herramienta como el Visual Studio, capaz de crear y consumir Web Services de la forma más rápida y sencilla tornandotransparentes para el desarrollador protocolos y tipos de mensajes XML comoWSDL y SOAP, los que describiremos a continuación.
  • 5. XML (Extensible Markup Language) XML, siglas en inglés de eXtensible Markup Language ('lenguaje de marcas extensible'), es un metalenguaje extensible de etiquetas desarrollado por el World Wide Web Consortium (W3C). Es una simplificación y adaptación del SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML). Por lo tanto XML no es realmente un lenguaje en particular, sino una manera de definir lenguajes para diferentes necesidades. Algunos de estos lenguajes que usan XML para su definición son XHTML, SVG, MathML, Android. XML no ha nacido sólo para su aplicación en Internet, sino que se propone como un estándar para el intercambio de información estructurada entre diferentes plataformas. Se puede usar en bases de datos, editores de texto, hojas de cálculo y casi cualquier cosa imaginable. XML es una tecnología sencilla que tiene a su alrededor otras que la complementan y la hacen mucho más grande y con unas posibilidades mucho mayores. Tiene un papel muy importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir la información de una manera segura, fiable y fácil. Ventajas del XML Es extensible: Después de diseñado y puesto en producción, es posible extender XML con la adición de nuevas etiquetas, de modo que se pueda continuar utilizando sin complicación alguna. El analizador es un componente estándar, no es necesario crear un analizador específico para cada versión de lenguaje XML. Esto posibilita el empleo de cualquiera de los analizadores disponibles. De esta manera se evitan bugs y se acelera el desarrollo de aplicaciones. Si un tercero decide usar un documento creado en XML, es sencillo entender su estructura y procesarla. Mejora la compatibilidad entre aplicaciones. Podemos comunicar aplicaciones de distintas plataformas, sin que importe el origen de los datos, es decir, podríamos tener una aplicación en Linux con una base de datos Postgres y comunicarla con otra aplicación en Windows y Base de Datos MS-SQL Server. Transformamos datos en información, pues se le añade un significado concreto y los asociamos a un contexto, con lo cual tenemos flexibilidad para estructurar documentos.
  • 6. WSDL (Web Service Description Language) El lenguaje de descripción de servicios Web (WSDL, Web Service Description Language) es un dialecto basado en XML sobre el esquema que describe un servicio Web. Un documento WSDL proporciona la información necesaria al cliente para interaccionar con el servicio Web. WSDL es extensible y se pude utilizar para describir, prácticamente, cualquier servicio de red, incluyendo SOAP sobre HTTP e incluso protocolos que no se basan en XML como DCOM sobre UDP. Dado que los protocolos de comunicaciones y los formatos de mensajes están estandarizados en la comunidad del Web, cada día aumenta la posibilidad e importancia de describir las comunicaciones de forma estructurada. WSDL afronta esta necesidad definiendo una gramática XML que describe los servicios de red como colecciones de puntos finales de comunicación capaces de intercambiar mensajes. Las definiciones de servicio de WSDL proporcionan documentación para sistemas distribuidos y sirven como fórmula para automatizar los detalles que toman parte en la comunicación entre aplicaciones. Los documentos WSDL definen los servicios como colecciones de puntos finales de red o puertos. En WSDL, la definición abstracta de puntos finales y de mensajes se separa de la instalación concreta de red o de los enlaces del formato de datos. Esto permite la reutilización de definiciones abstractas: mensajes, que son descripciones abstractas de los datos que se están intercambiando y tipos de puertos, que son colecciones abstractas de operaciones. Las especificaciones concretas del protocolo y del formato de datos para un tipo de puerto determinado constituyen un enlace reutilizable. Un puerto se define por la asociación de una dirección de red y un enlace reutilizable; una colección de puertos define un servicio. Por esta razón, un documento WSDL utiliza los siguientes elementos en la definición de servicios de red: Types: contenedor de definiciones del tipo de datos que utiliza algún sistema de tipos (por ejemplo XSD). Message: definición abstracta y escrita de los datos que se están comunicando. Operation: descripción abstracta de una acción admitida por el servicio. Port Type: conjunto abstracto de operaciones admitidas por uno o más puntos finales. Binding: especificación del protocolo y del formato de datos para un tipo de puerto determinado. Port: punto final único que se define como la combinación de un enlace y una dirección de red. Service: colección de puntos finales relacionados.
  • 7. SOAP (Simple Object Access Protocol) SOAP (siglas de Simple Object Access Protocol) es un protocolo estándar que define cómo dos objetos en diferentes procesos pueden comunicarse por medio de intercambio de datos XML. Este protocolo deriva de un protocolo creado por David Winer, XML-RPC en 1998. En su sitio web, Userland, http://www.userland.com se puede encontrar multitud de documentación acerca de este primer protocolo de comunicación bajo http mediante XML. Con este protocolo se pedían realizar RPC o remote procedure calls, es decir, podíamos bien en cliente o servidor realizar peticiones mediante http a un servidor web. Los mensajes debían tener un formato determinado empleando XML para encapsular los parámetros de la petición. Con el paso del tiempo el proyecto iniciado por David Winer interesó a Importantes multinacionales entre las que se encuentran IBM y Microsoft y de este interés por XML-RPC se desarrollo SOAP." En el núcleo de los servicios Web se encuentra el protocolo simple de acceso a datos SOAP, que proporciona un mecanismo estándar de empaquetar mensajes. SOAP ha recibido gran atención debido a que facilita una comunicación del estilo RPC entre un cliente y un servidor remoto. Pero existen multitud de protocolos creados para facilitar la comunicación entre aplicaciones, incluyendo RPC de Sum, DCE de Microsoft, RMI de Java y ORPC de CORBA. ¿Por qué se presta tanta atención a SOAP? Una de las razones principales es que SOAP ha recibido un increíble apoyo por parte de la industria. SOAP es el primer protocolo de su tipo que ha sido aceptado prácticamente por todas las grandes compañías de software del mundo. Compañías que en raras ocasiones cooperan entre sí están ofreciendo su apoyo a este protocolo. Algunas de las mayores Compañías que soportan SOAP son Microsoft, IBM, SUN, Microsystems, SAP y Ariba. Algunas de las Ventajas de SOAP son: No está asociado con ningún lenguaje: los desarrolladores involucrados en nuevos proyectos pueden elegir desarrollar con el último y mejor lenguaje de programación que exista pero los desarrolladores responsables de mantener antiguas aflicciones heredadas podrían no poder hacer esta elección sobre el lenguaje de programación que utilizan. SOAP no especifica una API, por lo que la implementación de la API se deja al lenguaje de programación, como en Java, y la plataforma como Microsoft .Net. No se encuentra fuertemente asociado a ningún protocolo de transporte: La especificación de SOAP no describe como se deberían asociar los mensajes de SOAP con HTTP. Un mensaje de SOAP no es más que un documento XML, por lo que puede transportarse utilizando cualquier protocolo capaz de transmitir texto.
  • 8. No está atado a ninguna infraestructura de objeto distribuido La mayoría de los sistemas de objetos distribuidos se pueden extender, y ya lo están alguno de ellos para que admitan SOAP. Aprovecha los estándares existentes en la industria: Los principales contribuyentes a la especificación SOAP evitaron, intencionadamente, reinventar las cosas. Optaron por extender los estándares existentes para que coincidieran con sus necesidades. Por ejemplo, SOAP aprovecha XML para la codificación de los mensajes, en lugar de utilizar su propio sistema de tipo que ya están definidas en la especificación 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 múltiples entornos: SOAP se desarrollo sobre los estándares existentes de la industria, por lo que las aplicaciones que se ejecuten en plataformas con dicho estándares pueden comunicarse mediante mensaje SOAP con aplicaciones que se ejecuten en otras plataformas. Por ejemplo, una aplicación de escritorio que se ejecute en una PC puede comunicarse con una aplicación del back-end ejecutándose en un mainframe capaz de enviar y recibir XML sobre HTTP. Ilustración 1 Estructura SOAP
  • 9. CREACION Y CONSUMO DE WEB SERVICES Uso de Google Web API, SOAP y WSDL Google ofrece a través de su sitio web la documentación y archivos necesarios para que una máquina pueda acceder a sus servicios de búsqueda. Para ello es necesario un registro previo que proporciona una clave única. Cada servidor, identificado por la clave recibida de Google, puede realizar un máximo de 1000 peticiones por día. Esto evita que se puedan utilizar estas funcionalidades para ofrecer un servicio de búsqueda paralelo al de Google desde un servidor web distinto. El web service de Google se ofrece gratuitamente a investigadores para que experimenten con la tecnología que lo sustenta. En estos momentos, no hay versión comercial. El API de Google se ofrece en un archivo comprimido ZIP compuesto por distintos ficheros, entre los que se encuentran un archivo WSDL (Web Services Description Language, lenguaje de descripción de servicios web), un archivo .jar con clases Java junto a su documentación y aplicaciones demostrativas en Java y Microsoft .Net. La aplicación Java funciona desde línea de comando y permite hacer búsquedas, solicitar sugerencias de un término mal tecleado y ver la caché de Google para cierta URL. Google proporciona un archivo WSDL [5] que describe las operaciones soportadas. Este fichero se encuentra entre los archivos descargados de la API, aunque también se ofrece de forma online [6]. La descripción WSDL indica que se soportan tres operaciones: DoSpellingSuggestion, doGetCachedPage y doGoogleSearch. La primera permite solicitar a Google una sugerencia de escritura correcta para un término mal tecleado. La segunda devuelve la caché almacenada de Google para una URL dada. Por último, doGoogleSearch, se corresponde con el servicio tradicional de búsquedas en la Web. GOOGLE FREE Google Free es el nombre del servicio de Google en el que puedes conseguir el código necesario para poner una caja de Google en tu web. También existe en castellano, pero mucho menos completo. El código de Google Free es un «formulario» (FORM) de caja de búsqueda que debes incluir en el HTML de la portada o de las páginas en que quieras que aparezca, normalmente en la plantilla de la cabecera o del lateral, si es que si utilizas un editor de contenidos. Poner una caja de búsqueda de Google tal cual «para buscar en toda la Internet» puede no tener mucho sentido, pero Google Free with Site Search que es la tercera opción que ofrece Google es la más interesante: con ella puedes hacer que esa caja de búsquedas que pones en tu web encuentre cosas únicamente dentro de tu propia web.
  • 10. Principio del formulario WWW gerardoac.netau.net Final del formulario Esto está bastante bien, sobre todo para páginas web que no tienen ningún tipo de buscador. Como se ve, la opción marcada por omisión es la de tu sitio y los resultados se muestran en Google pero limitados a la URL que le hayas indicado. Tecleando algo y pulsando Retorno el invento ya funciona. Pero lo más interesante es que sobre el código original de Google Free with Site Search se pueden cambiar algunas cosas si necesitas personalizarlo más. Lo primero obviamente es cambiar YOUR DOMAIN NAME por el dominio de tu sitio web. Los dos primeros valores van ocultos en el formulario, y el tercero es el que se ve realmente debajo de la caja: Sobre el aspecto puedes cambiar algunas cosas: • El bgcolor="#FFFFFF" de la tabla se puede eliminar si lo prefieres transparente, tal vez porque el color de tu página no sea blanco. • El texto del botón originalmente es Google Search pero puedes cambiarlo por algo en tu idioma, como Buscar en el parámetro value del tercer input.
  • 11. Para cambiar tipo de letra y tamaño del texto lo mejor es eliminar los font del original y a todos los input añadirles el parámetro class="xyz" habiendo definido antes el estilo de esa clase en la hoja de estilos CSS de la página. • El tamaño de la caja se cambia donde pone size=31, con 15 ó 20 suele ser suficiente. • El logo de Google es obligatorio que aparezca (condiciones de uso), pero seguramente puedes cambiar sin problemas un poco la imagen original, Logo_40wht.gif por una un poco más pequeña o acorde con lo que necesites. Moviendo el img (cuidado con las celdas de la «tabla») puedes cambiarla de posición antes o después del botón e incluso modificar la ruta del fichero de imagen, para hosperarlo en un directorio de tu servidor. • Tal y como dicen las instrucciones, asegúrate que la codificación del texto en tus páginas es Unicode UTF-8 y, si no lo es, para que las búsquedas funcionen correctamente, cambia los valores UTF-8 de los dos primeros input por lo que corresponda. La alternativa típica es ISO-8859-1. • Podrías eliminar los botones de radio pero conservar la misma funcionalidad, quitando el input type=radio y añadiendo otros dos input="hidden" ocultos con estos parámetros name="domains" value="xyz.com" y name="sitesearch" value="xyz.com" (donde pone xyz.com pones tu dominio). • Si prefieres que los resultados aparezcan en Google México en vez de en en Google.com (el internacional, en inglés) puedes cambiar google.com por google.com.mx en el form de la primera línea del código. Para terminar con esto de la caja de búsqueda para tu web y asegurarte de que funciona bien, necesitas que Google ya haya leído todas tus páginas con anterioridad, de la mejor forma posible. Esto lo hace el famoso robot de Google automáticamente. Puedes comprobar cuántas páginas tiene indexadas buscando site:xyz.com en Google. Si no hay muchos resultados, la caja no servirá de gran cosa, pero normalmente el robot de Google habrá encontrado tu web y lo habrá indexado a fondo a las pocas semanas de haberlo creado. GOOGLE MAPS Google Sitemaps es un experimento en beta de Google que permite a los webmasters enviar mapas completos de sus sitios webs para que Google los indexe mejor. Los mapas son simplemente una lista con todas las URLs, bien en XML o en un fichero plano de texto. En Google Sitemaps with Wordpress explican cómo generarlo con WordPress. Con los otros sistemas de bitácoras será igual de fácil. Se genera un fichero XML al que se puede apuntar desde el directorio raíz (como el robots.txt) y Google lo usará. También puedes registrarte y enviar una lista de tus URLs en formato texto, directamente (solución de baja tecnología).
  • 12. El mapa del sitio web ayuda a la araña de Google a indexar ese sitio, evitando algunos problemas habituales del rastreo automático, como bucles, zonas oscuras u ocultas y cosas así. ¿Un Google en tiempo real? Pero lo más importante de Google Sitemaps es que en el futuro podría servir para poder hacer pings a Google cada vez que en un sitio web se publica algo - como los habituales pings y trackbacks que se envían unos weblogs a otros. De este modo se podría indicar a Google cuándo debe ir a revisiar una página porque se acaba de incluir contenido nuevo, sin esperar a que el robot venga cuando pueda o quiera. Se resolvería así uno de los puntos débiles del buscador: que el rastreo de las páginas es lento y a veces requiere días, semanas o incluso meses. Por ejemplo Technorati o Feedster lo hacen mucho más rápido gracias a los pings y se anuncian como «buscadores en tiempo real», aunque sólo abarquen la blogosfera o la RSS-esfera. Como siempre Dirson tiene información mucho más detallada al respecto, puedes leerlo en Google Sitemaps, relativa al estándar abierto del formato de los mapas y el funcionamiento de este nuevo servicio de Google para webmasters. GOOGLE TRADUCTOR Claramente mas es mejor, al menos en este caso, si tu web está disponible en ingles como mínimo además del español, claramente tendrás mas visitas y de paso mejoraras tu posición en google. Limitarnos al español es lo peor que podemos hacer, lo mejor es tener disponible el material al menos en ingles, en este caso lo más simple es agregar un traductor en tu blog para que lo haga automáticamente. Google ofrece agregar un widget, que le permitirá a la visita traducir automáticamente la página que estan mirando. En estos casos el mayor problema es que como generalmente tenemos varias faltas ortográficas, estas no se traducirán, así que hay que tener mucho cuidado con esto o sino lo que veran nuestras visitas será un span-glish.
  • 13. Primero entramos a la pagina de google widgets: Luego como ven pueden personalizar algunas cosas, tales como el borde, el nombre del link que esta sobre la caja, el tamaño del cuadro, además deben seleccionar el idioma en el que está escrito el sitio, y el idioma inferior corresponde al idioma de toda la página y además será el idioma del link inferior del traductor: Luego simplemente click en el botón Obtener el Código, este aparecerá justo abajo:
  • 14.
  • 15. MICROSOFT OFFICE LIVE Microsoft Office Live es un conjunto de servicios basados en Internet diseñado para usuarios y pequeñas empresas interesadas en crear un sitio Web o almacenar y compartir documentos en línea. A partir de 2009, consta de dos servicios, Office Live Workspace y Office Live Small Business. Office Live Workspace Office Live Workspace es un servicio gratuito para almacenar y compartir documentos en línea. La empresa afirma que se suele utilizar para el trabajo, escuela y casa, porque los documentos pueden administrarse desde ubicaciones remotas sin una unidad flash. Disponible en más de 25 idiomas, Office Live Workspace requiere el acceso a Internet y un explorador compatible. Uso de un área de trabajo se puede mejorar mediante la instalación de Silverlight, un complemento que hace más fácil de cargar varios documentos y colaborar con otras personas en un área de trabajo. Para que los espacios de trabajo tener acceso directamente desde la Oficina, los usuarios de Word, Excel y PowerPoint deben instalar Office Live Update. Los archivos no pueden editarse desde dentro de área de trabajo, pero al hacer clic en "Editar" se abrirán en Microsoft Office. El área de trabajo no ofrece colaboración sin conexión — en su lugar documentos son "desprotegido" y "protegidos", pero el servicio se integra con SharedView para compartir la pantalla en tiempo real. Características Almacenamiento en línea. Office Live permite a los usuarios ahorrar hasta 5 gigabytes (GB) de la información en muchos formatos,3 que se pueden acceder desde cualquier ordenador con conexión a internet, de archivo, incluso si no está instalado Office. La compañía afirma esto reemplaza a la necesidad de unidades flash o CD como una solución de almacenamiento y ofrece capacidades para la actualización de planes de proyecto, organizar eventos y delegar asignaciones sin programar una reunión o depender de correo electrónico. Intercambio de información. Office Live Workspace está diseñado para que los usuarios de PC puedan compartir un único documento o un área de trabajo que contiene varios documentos, así como colaborar en línea como un grupo. Áreas de trabajo son protegidos por contraseña y los usuarios pueden controlar quién ve y modifica la información. Los archivos o áreas de trabajo pueden ser compartidos con hasta 100 personas.2 Compatibilidad de software. Mientras Office Live Workspace trabaja con programas de Microsoft Office como Word, Excel, PowerPoint y Outlook, también permite a los usuarios almacenar los documentos de otros tipos de archivo. Si la actualización Office Live está instalada, archivos y documentos pueden ser abiertos y guardan directamente desde Microsoft Office XP, 2003, o 2007. Los usuarios pueden también sincronizar, contactos, tareas y listas de eventos con Outlook 2003 y 2007, y listas de área de trabajo se pueden exportar a Excel.5
  • 16. Recursos y apoyo. Microsoft creó un sitio Community Support Web,6 que incluye un blog, wiki, vídeos sobre procedimientos y la oportunidad para los clientes preguntar y responder preguntas acerca del uso de Office Live Workspace. Microsoft Office Live Small Business Microsoft Office Live Small Business es un servicio de basadas en Internet diseñado para ayudar a los usuarios no técnicos con la creación de un sitio Web de aspecto profesional. Características Herramientas de diseño de sitio Web y alojamiento. Office Live Small Business proporciona acceso a herramientas de diseño de web en línea y plantillas para el desarrollo de sitio Web de los usuarios no técnicos gratuitos. Diseñador de sitio es una característica de productos utilizada para personalizar los diseños de página, colores, navegación y otros elementos del sitio. Los usuarios también pueden agregar módulos como botones de PayPal, blogs y calendarios a páginas. Los usuarios web avanzadas pueden cargar código HTML para personalizar sus páginas web. Microsoft ofrece alojamiento de sitio Web libre y 5 gigabytes (GB) de espacio de almacenamiento para archivos de sitio. Espacio de almacenamiento adicional puede ser adquirido si sitio de un usuario excede este límite de almacenamiento. Dominio de nombre de registro y las empresas e-mail. Dentro de Office Live Small Business, nombres de dominio pueden ser seleccionados y registrados. Los clientes que ya tienen un nombre de dominio con otro proveedor pueden redirigir a Office Live Small Business. Los usuarios pueden crear hasta 100 cuentas de correo electrónico basado en dominio de forma gratuita. Se pueden comprar las cuentas de correo electrónico adicionales. El precio es $ 14.95 un año e incluye registro privado. Administrador de contacto. El administrador de contacto está diseñado para organizar información del cliente, historiales de contactos y de información de ventas en un solo lugar y hacerla accesible a través de la web a su toda organización. Administrador de documento. Esta aplicación se utiliza como un repositorio en línea para los documentos a fin de les fácilmente accesible a los empleados para facilitar la colaboración. Área de equipo. La aplicación de Team Workspace crea un proyecto de sitio de Web para publicar información para compartir con los clientes, empleados o socios comerciales. Sirve para agilizar el proceso de edición, dar a los usuarios acceso remoto a datos de la compañía y descargar archivos grandes como sea necesario. Recursos y apoyo. Microsoft ofrece soporte de 24 horas técnica telefónica de forma gratuita durante 30 días. En línea, el sitio de comunidad incluye un blog, wiki, artículos, vídeos sobre procedimientos y la oportunidad para los clientes preguntar y responder preguntas acerca del uso de Office Live Small Business.
  • 17. Seguridad Office Live Small Business, datos se almacenan en la red de Microsoft donde los servicios de firewall de red ayudar a proteger los documentos, correo electrónico y otros datos almacenados. La compañía afirma todos datos de negocio del cliente es una copia de cada día, y que si los clientes inadvertidamente dañar su sitio web o archivos de áreas de trabajo, o eliminar los archivos importantes en Office Live Small Business, que pueden recuperación sus datos de copia de seguridad almacenado en servidores de Microsoft. Características integradas-protección con contraseña se incluyen para aplicaciones de negocio como Team Workspace y administrador de documentos. SERVICIOS WEB DE SEGURIDAD El desarrollo de una aplicación exige trabajar con un conjunto de cuestiones de seguridad. El otro conjunto de cuestiones (que suelen ser las más destacadas en cualquier comentario acerca de la seguridad Web) se refieren a la seguridad de la aplicación una vez implementada y en ejecución. Las aplicaciones Web, por definición, permiten el acceso de usuarios a recursos centrales, el servidor Web y, a través de éste, a otros como los servidores de base de datos. Comprender e implementar las medidas de seguridad adecuadas permite: • Proteger los recursos propios contra accesos no autorizados. • Restringir los niveles de acceso por usuario o por función. • Establecer integridad de datos y confidencialidad, proporcionando un entorno relativamente seguro en el que los usuarios se encuentren cómodos al trabajar con su aplicación. • Establecer control sobre cómo la aplicación obtiene acceso a recursos restringidos. • Garantizar que el código de la aplicación se ejecuta de la forma esperada. Este tema proporciona un comentario general sobre cómo llevar a cabo estos objetivos, e incluye vínculos con temas adicionales en los que se pueden obtener más detalles acerca de las tecnologías implicadas. Puede ayudar a proteger su aplicación de acceso no autorizado aprovechando estos tipos de características de seguridad: • Características de seguridad que ofrecen los Servicios de Internet Information Server (IIS) como parte de su funcionalidad general de servidor Web. Esto es, seguridad de nivel de usuario, equipo y archivo de Windows. • La seguridad que se puede incorporar a la aplicación ASP.NET para proporcionar acceso específico para la aplicación.
  • 18. ESCENARIOS DE USO Este tema se centra en la seguridad de los servicios Web (punto a punto) relativa tanto a la plataforma como al transporte que pueden ofrecer los servicios subyacentes de ASP.NET, IIS y el sistema operativo. Mientras que la seguridad de la plataforma permite soluciones seguras para escenarios de intranet estrechamente vinculados, no resulta conveniente para escenarios heterogéneos. Es por este motivo precisamente por el que se requiere la seguridad que ofrece la especificación de seguridad WS-Security de la arquitectura GXA. Utilice Web ServicesDevelopment Kit para crear soluciones de seguridad de mensajes para servicios Web. Para entornos de dominios Windows estrechamente vinculados: • Si desea transmitir la identidad del llamador original desde una aplicación Web de ASP.NET a un servicio Web remoto, la aplicación Web de ASP.NET debería utilizar la autenticación Kerberos (con cuentas configuradas para la delegación), básica o mediante Formularios. • Si utiliza la autenticación Kerberos, habilite la suplantación con la aplicación Web y configure la propiedad Credentials del proxy de servicio • Web mediante DefaultCredentials. • Si utiliza la autenticación básica o mediante Formularios, capture las credenciales del llamador y establezca la propiedad Credentials del proxy de servicio Web agregando un nuevo objeto CredentialCache. Para escenarios “de servicio Web a servicio Web”: • Utilice la autenticación básica o Kerberos y establezca las credenciales en el proxy de cliente. • Utilice una aplicación de Servicios Empresariales o un servicio de Windows fuera de proceso para que manipule los certificados X.509 desde las aplicaciones Web. • En la medida de lo posible, utilice las comprobaciones de autorización de sistema como, por ejemplo, la autorización mediante archivos y direcciones • URL. • Si utiliza la autorización granular (en el nivel de método Web por ejemplo), utilice funciones .NET (tanto de forma declarativa como imperativa). • Autorice a los usuarios que no sean de Windows mediante funciones .NET (basadas en un objeto GenericPrincipal que contenga funciones). • Deshabilite los protocolos HTTP-GET y HTTP-POST en todos los servidores de producto. • Utilice la seguridad de transporte si no le preocupa transferir los mensajes de forma segura a través de sistemas intermedios. • Utilice la seguridad de transporte si el rendimiento de SSL es adecuado. • Utilice la especificación de seguridad WS-Security y Web Services.
  • 19. NTLM Es una suite de Microsoft de protocolos de seguridad que proporciona autenticación, integridad y confidencialidad de los usuarios.NTLM es el sucesor del protocolo de autenticación de Microsoft LAN Manager (LANMAN), un mayor producto de Microsoft, y los intentos de proporcionar compatibilidad hacia atrás con LANMAN. NTLM versión dos (NTLMv2), que se introdujo en Windows NT 4.0 SP4 (y compatibles de forma nativa en Windows 2000), mejora la seguridad NTLM por el endurecimiento del protocolo contra ataques de suplantación de muchos, y la adición de la capacidad de un servidor para autenticar al cliente. Microsoft no recomienda el uso de NTLM en aplicaciones: Los ejecutores deben ser conscientes de que NTLM no es compatible con los últimos métodos criptográficos, tales como AES o SHA-256. Se utiliza comprobación de redundancia cíclica (CRC) o un mensaje de algoritmos de resumen (RFC1321) para la integridad, y lo utiliza para el cifrado RC4. Derivación de una clave de una contraseña es como se especifica en RFC1320 y FIPS46-2. Por lo tanto, las aplicaciones generalmente se aconseja no utilizar NTLM. Mientras que Kerberos ha sustituido NTLM de forma predeterminada el protocolo de autenticación en un Active Directory basado en inicio de sesión único esquema, NTLM es aún ampliamente utilizado en situaciones donde un controlador de dominio no está disponible o es inaccesible. Por ejemplo, NTLM se usa si un cliente no es capaz de Kerberos, el servidor no está unido a un dominio, o el usuario se autentica de forma remota a través de Internet. KERBEROS Kerberos se basa en el Protocolo de Needham-Schroeder. Usa un tercero de confianza, denominado "centro de distribución de claves" (KDC, por sus siglas en inglés: Key Distribution Center), el cual consiste de dos partes lógicas separadas: un "servidor de autenticación" (AS o Authentication Server) y un "servidor emisor de tiquets" (TGS o Ticket Granting Server). Kerberos trabaja sobre la base de "tickets", los cuales sirven para demostrar la identidad de los usuarios. Kerberos mantiene una base de datos de claves secretas; cada entidad en la red sea cliente o servidor comparte una clave secreta conocida únicamente por él y Kerberos. El conocimiento de esta clave sirve para probar la identidad de la entidad. Para una comunicación entre dos entidades, Kerberos genera una clave de sesión, la cual pueden usar para asegurar sus interacciones.
  • 20. A continuación se describe someramente el protocolo. Se usaran las siguientes abreviaturas: AS = Authentication Server TGS = Ticket Granting Server SS = Service Server. FUNCIONAMIENTO En resumen el funcionamiento es el siguiente: el cliente se autentica a sí mismo contra el AS, así demuestra al TGS que está autorizado para recibir un ticket de servicio (y lo recibe) y ya puede demostrar al SS que ha sido aprobado para hacer uso del servicio kerberizado. En más detalle: Un usuario ingresa su nombre de usuario y password en el cliente El cliente genera una clave hash a partir del password y la usará como la clave secreta del cliente. El cliente envía un mensaje en texto plano al AS solicitando servicio en nombre del usuario. Nota: ni la clave secreta ni el password son enviados, solo la petición del servicio. El AS comprueba si el cliente está en su base de datos. Si es así, el AS genera la clave secreta utilizando la función hash con la password del cliente encontrada en su base de datos. Entonces envía dos mensajes al cliente: Mensaje A: Client/TGS sessionkey cifrada usando la clave secreta del usuario Mensaje B: Ticket-Granting Ticket (que incluye el ID de cliente, la dirección de red del cliente, el período de validez y el Client/TGS sessionkey) cifrado usando la clave secreta del TGS. Una vez que el cliente ha recibido los mensajes, descifra el mensaje A para obtener el client/TGS sessionkey. Esta sessionkey se usa para las posteriores comunicaciones con el TGS. (El cliente no puede descifrar el mensaje B pues para cifrar éste se ha usado la clave del TGS). En este momento el cliente ya se puede autenticar contra el TGS. Entonces el cliente envía los siguientes mensajes al TGS: Mensaje C: Compuesto del Ticket-Granting Ticket del mensaje B y el ID del servicio solicitado. Mensaje D: Autenticador (compuesto por el ID de cliente y una marca de tiempo), cifrado usando el client/TGS sessionkey.
  • 21. Cuando recibe los mensajes anteriores, el TGS descifra el mensaje D (autenticador) usando el client/TGS sessionkey y envía los siguientes mensajes al cliente: Mensaje E: Client-to-server ticket (que incluye el ID de cliente, la dirección de red del server cliente, el período de validez y una Client/Server sessionkey) cifrado usando la clave liente, secreta del servicio. Mensaje F: Client/server session key cifradausando el client/TGS session key. Cuando el cliente recibe los mensajes E y F, ya tiene suficiente información para infor autenticarse contra el SS. El cliente se conecta al SS y envía los siguientes mensajes: Mensaje E del paso anterior. Mensaje G: un nuevo Autenticador que incluye el ID de cliente, una marca de tiempo y que está cifrado usando el client/server s sessionkey. El SS descifra el ticket usando su propia clave secreta y envía el siguiente mensaje al cliente para confirmar su identidad: Mensaje H: la marca de tiempo encontrada en el último Autenticador recibido del cliente más uno, cifrado el client/server sessionkey. client/serve El cliente descifra la confirmación usando el client/server sessionkey y chequea si la marca de tiempo está correctamente actualizada. Si esto es así, el cliente confiará en el servidor y podrá comenzar a usar el servicio que este ofrece. El servidor provee del servicio al cliente.
  • 22. REFERENCIAS http://www.webtaller.com/maletin/articulos/que_son_web_services.php http://www.cepeu.edu.py/ http://es.wikipedia.org/wiki/Extensible_Markup_Language http://www.desarrolloweb.com/articulos/1581.php http://es.wikipedia.org/wiki/Simple_Object_Access_Protocol http://www.desarrolloweb.com/articulos/1557.php http://es.wikipedia.org/wiki/Microsoft_Office_Live http://es.wikipedia.org/wiki/Kerberos http://www.ibm.com/developerworks/ssa/webservices/tutorials/ws-radsecurity3/index.html