Вы находитесь на странице: 1из 17

MANUAL TÉCNICO DE INTEGRACIÓN A

WEBSERVICES CON SEGURIDAD DESDE


LA HERRAMIENTA SOAPUI
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

CONTROL DE CAMBIOS

Fecha Descripción del Cambio Elaborado por

31-Ago-2017 Versión Inicial Jhonatan Forero


Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

1. DESCRIPCIÓN
En las siguientes líneas se describe técnicamente como se puede realizar la integración a la versión
segura de los webservices expuestos por Experian desde la herramienta SOAPUI.

La información contenida es técnica y será comprendida por personas que previamente hayan tenido la
experiencia de trabajar con webservices.

2. OBJETIVO
Proveer información completa para facilitar el consumo del WS.

Mostrar el uso del WS a través de aplicaciones clientes implementadas a través de la herramienta


SOAPUI.
Orientar al usuario en la implementación de certificados y conexiones seguras por medio de la
herramiento SOAP UI.

3. GENERALIDADES y REQUISITOS
Como requisitos previos se debe contar con lo siguiente:

- SOAPUI 5+
- JDK 1.7+
- Certificado de comunicación otorgado por Experian.
- Usuario y clave otorgados por Experian.
- Certificado de firmas otorgado por Experian.

Se utilizará el protocolo TLS 1.2 para asegurar la comunicación.

Los siguientes entornos estarán disponibles para iniciar con la implementación:

https://demo-servicesesb.datacredito.com.co
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

4. INTEGRACIÓN

Ubicar la ruta de instalación del SOAPUI y en el archivo *vmoptions /soapui.bat (En caso de
ejecución desde el bat) de Soap-UI se debe agregar el siguiente parámetro para habilitar la
comunicación TLS 1.2:

-Dsoapui.https.protocols=SSLv3,TLSv1.2

*. vmoptions
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

Soapui.bat

Abrir Soap-UI, Seleccionar en la barra principal la opción “Preferences” (Ver imagen 1)

Imagen 1
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

Importar el certificado dado por Experian al Keystore que cada cliente maneje, esta importación se
puede realizar por medio del comando keytool existente en el jdk:

keytool -import -alias server-cert -file


C:\OpenSSL\bin\ServerCertificate.crt -keystore client.truststore

Donde
ServerCertificate.crt es el certificado que Experian emitió.
client.truststore nuevo llavero de confianza(keystore)

El sistema solicitará una nueva contraseña.

Seleccionar la pestaña “SSL Settings”, en los campos KeyStore, se debe colocar la ruta del llavero
para este caso “client.truststore”, que es el certificado público para habilitar la comunicación
SSL, en el campo KeyStore Password se debe digitar la contraseña que se acabó de digitar en el
paso anterior (Ver imagen 2)

Imagen 2

1. Seleccionar en la barra de Menú la opción SOAP (ver imagen 3)


Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

Imagen 3

2. Se debe importar el WSDL, puede ser apuntando en la URL donde está disponible el
servicio https, o es permitido importarlo directamente desde el PC, en el caso que
exista el wsdl, se usa este caso cuando no hay accesos. (Ver imagen 4)

Imagen 4
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

3. Si el paso anterior es exitoso, aparecerá en el navigator de Soap UI los métodos del


servicio con sus respectivos request. (Ver imagen 5)

Imagen 5

4. Realizar doble clic en el proyecto, para nuestro ejemplo “ServicioIJWS”, luego se


debe seleccionar la pestaña “WS-Security Configurations” (Ver imagen 6)
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

Imagen 6

5. Ir a la pestaña Keystore, y seleccionar el icono más (+), y cargamos el keystore de


certificados que nos proporciona el proveedor y/o generamos (*.sign.p12,*.jks) (Ver
imagen 7)

Imagen 7
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

6. Digitamos la clave privada del keystore que es “experian” (Ver imagen 8)

Imagen 8

7. Después de cargar el certificado, se debe seleccionar la pestaña “Outgoing WS-


Security Configurations”, dar clic en el icono más (+), se debe digitar un nombre
deseado para nuestra configuración de seguridad, para nuestro ejemplo WS-Security
(Ver imagen 9)
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

Imagen 9

8. Clic en el icono más (+), seleccionamos la Entry “Timestamp” (Ver imagen 10)

Imagen 10

9. Clic en el icono más (+), seleccionamos la Entry “Username”, en el campo


Username, se debe digitar el usuario y password que fueron brindados por
Experian (Ver Imagen 11)
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

Imagen 11

10. Clic en el icono más (+), seleccionamos la Entry “Signature” (Ver imagen 12)

Imagen 12
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

11. Seleccionar las Siguientes Configuraciones: (Ver imagen 13)

- Keystore: experian.sign.p12
- Alias: experian.sign
- Password: Experian
- Key Identifier Type: Binary Security Token
- Signature Algorithm: …/xmldsig#rsa-sha1
- Signature Canonicalization: ../xml-exc-c14n#
- Digest Algorithm: …/xmldsig#sha1

Realizar Check sobre el campo “Use Single Certificate”

Imagen 13

Las partes a firmar del mensaje son:

- Body
Namespace: http://schemas.xmlsoap.org/soap/envelope/
Enconde: Content

- UsernameToken
Namespace: http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

Encode: Content

- Timestamp
Namespace: http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
Encode: Content

Al terminar las configuraciones se aconseja el orden “Timestamp – Username – Signature” (Ver


imagen 14)

Imagen 14

12. Seleccionamos un método desde el “Navegador” desde Soap UI (Ver imagen 15)

Imagen 15
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

13. Sobre el Request, se deben seleccionar las siguientes configuraciones: (Ver Imagen
16)

Outgoing WSS  Apply “WS-Security”, que significa el nombre que digitamos en la configuración de la
firma de la opción WS-Security Configurations

Nuestro Request, en el tag Header, contendría toda la información de Seguridad

Imagen 16
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

14. Si deseamos limpiar el header para realizar un nuevo request, se debe seleccionar la
opción Outgoing WSS  Remove all outgoing wss (Ver imagen 17)

Imagen 17

15. Al realizar la petición al endpoint deseado, Se obtendrá la respuesta del servicio ya


validada con WS-Security desde el DataPower (Ver Imagen 18)
Manual técnico de
integración a webservices MN-VPT-001
seguros desde SOAP UI

Imagen 18