En
este taller vamos a crear un nuevo Proxy Service para agregarle
secuencias básicas de entrada y salida y el escenario de seguridad
UsenameToken para garantizar que los usuarios deban autenticarse para
acceder al servicio.
Vamos
a asumir que ya el entorno esta preparado para empezar a trabajar.
Esto es, tenemos ya instalado y configurado:
-
Apache 2 Web Server
-
PHP 5.4
-
Nusoap 0.9.5
-
WSO2 ESB 4.8.1
- Un Web Service desarrollado en php y desplegado en Apache, podemos utilizar el ejemplo de WSFactorial almacenado aquí:
WS Factorial.
WS Factorial.
1.-
Iniciamos WSO2 y vamos a crear un nuevo Proxy Service seleccionando
el tipo Custom Proxy.
Le
damos el nombre CustomProxyTallerPHP. En la opción publishing WSDL
seleccionamos Specify source URL y en WSDL URI pegamos la dirección
de nuestro web service WSfactorial.php:
2.-
Vamos a definir secuencias básicas de entrada y salida. Aquí
tenemos la opción de usar los diferentes mediadores que nos ofrece
WSO2. Para este taller vamos a implementar solo un log en la
secuencia de entrada.
Este
es el paso 2 de 3 en la creación de proxy service. Seleccionamos
Define Inline en Define In Secuence y le damos al botón Create.
En
el menú desplegable que aparece seleccionamos core y luego log.
En
Define Endpoint seleccionamos nuevamente Define Inline y seguidamente
Create.
Nos
aparece una lista de los diferentes tipos de Endpoint que podemos
usar, seleccionamos la primera: Address Endpoint.
En
la entrada address colocamos nuevamente el url de nuestro web service
taller.php.
Seleccionamos Save & Close y volvemos al paso 2 de 3 y damos next.
3.-
Ahora vamos a definir la secuencia de salida.
En
Define Out Secuence seleccionamos Define Inline y click en Create.
Luego seleccionamos core y send. En Send Midiator dejamos la opción
None.
Ya
tenemos nuestro Proxy Service creado:
4.-
Vamos a probar el servicio en dando click en Try this service
Si
probamos usando el endpoint Soap 1.2 nos arroja un error
Si
la cambiamos la versión a Soap 1.1 vemos que si funciona
5.-
Ahora vamos a darle seguridad a nuestro Proxy Service
En
la lista de servicios hacemos click en en la opción Unsecured de
nuestro Proxy Service
En
la opción Enable Security? elegimos Yes.
6.-
Probemos de nuevo el servicio con el Try this service
Podemos
ver que ahora aparece un encabezado “security” en el formulario de
prueba.
Asegurémonos
de seleccionar la versión Soap 1.1. En Username coloquemos: admin y
en password: admin que son las credenciales del WSO2.
Colocamos
un valor valido de búsqueda y le presionamos send.
Si
volvemos a probar pero no le colocamos las credenciales del usuario
admin o lo dejamos en blanco, debe devolver un error.
7.-
Por último podemos habilitar SOAP Message Tracer para ver un poco más
de la información que está viajando a través de HTTP.
En
las opciones del menú de WSO2 vamos a la pestaña Monitor y le elegimos SOAP Tracer.
En
la opción Enable SOAP Tracer? Seleccionamos Yes.
Nos
vamos de nuevo al Try this service y volvemos a probar el servicio
con el usuario válido.
Regresamos
al SOAP Tracer y podemos ver lo que esta viajando por HTTP.
En
la cónsola desde donde lanzamos el servidor de WSO2 debemos ver
mensjaes del Log Mediator que definimos en la secuencia de entrada.
No hay comentarios:
Publicar un comentario