FESB Servicio de Solicitud de Versión 1.0 Área de Arquitecturas Unidad de Arquitectura de Software de Aplicaciones 1
Servicio de solicitud de Hoja de Control Título Documento de Referencia Responsable Manual de Usuario del Servicio de Solicitud de para SSO NORMATIVA FESB Área de Arquitectura Unidad de Arquitectura de Software de Aplicaciones Versión 1.0 Fecha Versión 18/11/2014 Registro de Cambios Versión Causa del Cambio Responsable del Cambio Fecha del Cambio Unidad de Arquitectura de Software 1.0 Versión inicial del documento de Aplicaciones 18/11/2014 Página 2 de 9
Servicio de solicitud de ÏNDICE 1 INTRODUCCIÓN... 4 1.1 AUDIENCIA OBJETIVO... 4 1.2 CONOCIMIENTOS PREVIOS... 4 2 DESCRIPCIÓN... 4 3 MÉTODO DAMETOKEN... 6 3.1 DESCRIPCIÓN DEL MÉTODO... 6 3.2 MENSAJE DE ENTRADA DEL SERVICIO DAMETOKEN... 6 3.3 MENSAJES DE SALIDA DEL SERVICIO DAMETOKEN... 8 4 ENLACES RELACIONADOS... 9 Página 3 de 9
Servicio de solicitud de 1 INTRODUCCIÓN Con el objetivo de permitir el Single Sign On entre distintas tecnologías, se ha implementado en el Oracle Service Bus un servicio que permite la solicitud de un token que se utilizará en la conexión a la tecnología receptora. En principio, sólo las aplicaciones desarrolladas mediante el framework ATLAS podrán hacer uso del token generado mediante este servicio. 1.1 AUDIENCIA OBJETIVO El lector objetivo del presente documento es todo aquel que necesite conectar una aplicación con otra desarrollada en framework ATLAS y que requiera de una integración entre ambas de Single Sign On. 1.2 CONOCIMIENTOS PREVIOS Para un completo entendimiento del documento, el lector deberá tener conocimientos previos sobre las siguientes tecnologías: Desarrollo de clientes a partir de WSDL SOA Para saber más sobre dichas tecnologías, consultar el apartado de este documento, Enlaces Relacionados. 2 DESCRIPCIÓN En el framework del Enterprise Service Bus se ha desarrollado un servicio llamado Servicio de Solicitud de que nos ofrece una interfaz con una única operación dame. El objeto del servicio es realizar la autenticación del login de usuario pasado en la request, y devolver un teken válido, de forma que dicho token se pueda utilizar en las llamadas a aplicaciones que permitan el tipo de política de token. En esta primera versión, sólo las aplicaciones desarrolladas con el framework ATLAS podrán recibir el token como parámetro, de manera que dichas aplicaciones no solicitarían la autentificación del usuario. Dependiendo del Sistema dónde se requiera autenticar, el servicio realizará unas comprobaciones u otras. A continuación se describe de forma gráfica cual sería el comportamiento del Servicio: Página 4 de 9
Servicio de solicitud de 1) Autenticación de Usuarios de Internet: Oracle Service Bus Servicios Solicitud de : dame Resumen gráfico Acceso Desde APP1 a APP_WEB (Atlas) Usuario de Internet usuario 1 https INTERNET https Aplicación: APP1 5 Aplicación: APP_WEB (Atlas) 8 Autorización USUI depart. 9 USUI 2 Perfil dame 4 6 7 OSB 3 OSB01 OSB02 Valida USUI Autentificación USUI Central USUI v.1.0 18.11.2014 ICM - DA - UASA Página 5 de 9
Valida USUG Framework ESB Servicio de solicitud de 2) Autenticación de Usuarios de Intranet: Oracle Service Bus Acceso Desde APP1 a APP_WEB (Atlas) Servicios Solicitud de : dame Usuario de INTRANET Resumen gráfico usuario 1 https INTRANET Aplicación: https APP1 6 Aplicación: APP_WEB (Atlas) 9 Autorización USU depart. 10 USU 2 Perfil dame 5 7 8 OSB 3 4 OSB01 OSB02 Valida LDAP LDAP USUG Central USUG Autentificación v.1.0 18.11.2014 ICM - DA - UASA Con la petición de entrada contiene datos protegidos como login y pasword, la comunicación con el servicio siempre será mediante cifrado de canal https. 3 Método DAMETOKEN Este Servicio sólo dispone de una única operación: dame. 3.1 Descripción del método Esta operación recibe como parámetro las credenciales del usuario, sistema de autenticación, módulo técnico que utilizará el token y parámetros de configuración del token. Y si todo es correcto, devuelve el token solicitado. 3.2 Mensaje de entrada del Servicio dame Request dame Página 6 de 9
Servicio de solicitud de A continuación se describen los parámetros incluidos en la request: Parámetros Descripción Tipo Obligatorio Usuario Login de usuario Si Password Clave de usuario. Si SistemaAutenticacion Indica el Sistema dónde se autenticará el usuario Si recogido en los parámetros anteriores. Sólo puede tener los siguientes valores: Intranet Internet ModuloTecnico Módulo técnico que hará uso de la autenticación Si mediante el token UnUso Indicador de si el token se creará para un único uso. Si Sólo podrá contener: N o S. minutostiempovalidez Número de minutos de validez del token int Si InformacionAdd Descripción adicional. Puede ser nulo. Si A continuación un XML de ejemplo utilizado en la herramienta SoapUI XML de ejemplo <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"> <soapenv:header/> <soapenv:body> <xsd:dametoken_req> <xsd:usuario>admon</xsd:usuario> <xsd:password>miclave</xsd:password> <xsd:sistemaautenticacion>internet</xsd:sistemaautenticacion> <xsd:modulotecnico>wasu_app</xsd:modulotecnico> Página 7 de 9
Servicio de solicitud de <xsd:unuso>s</xsd:unuso> <xsd:minutostiempovalidez>120</xsd:minutostiempovalidez> <xsd:informacionadd> para usuario administrador</xsd:informacionadd> </xsd:dametoken_req> 3.3 Mensajes de salida del Servicio dame Response dame A continuación se describen los campos de salida: Parámetros Descripción Tipo Obligatorio ItemError Indicador de si el usuario se ha autenticado Si correctamente en el Sistema. Sus valores serán: N El usuario se ha autenticado correctamente S El usuario no se atenticado MensajeError Descripción del Error generado en proceso de No autenticación. válido para la request solicitada Si A continuación algunos XML de respuesta obtenidos utilizado en la herramienta SoapUI XML de respuesta: autenticación correcta <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:header xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"/> <soapenv:body xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"> <xsd:dametoken_res> <xsd:itemerror>n</xsd:itemerror> <xsd:>c63dd21f-b244-47d2-b063-92c52c5664d6</xsd:> </xsd:dametoken_res> XML de respuesta: autenticación no válida <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:header xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"/> <soapenv:body xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"> <xsd:dametoken_res> <xsd:itemerror>s</xsd:itemerror> Página 8 de 9
Servicio de solicitud de <xsd:mensajeerror>contraseña inválida</xsd:mensajeerror> <xsd:/> </xsd:dametoken_res> Cuando la request no esté bien formada, el formato de ésta no sea válido, o bien, se produzca algún error no controlado, la response del servicio se ajusta a los o estándares SOA. A continuación, un ejemplo de request inválida, y otro cuyo host no está autorizado para la ejecución del servicio: XML de respuesta: Request inválida <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:header xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"/> <soapenv:body xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"> <xsd:dametoken_res> <xsd:itemerror>s</xsd:itemerror> <xsd:mensajeerror>la peticion XML está mal formada</xsd:mensajeerror> <xsd:/> </xsd:dametoken_res> XML de respuesta: Host No autorizado <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:header xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"/> <soapenv:body xmlns:xsd="http://madrid.org/arquitecturasw/images/documentacion/esb/actual/xsd-templates"> <msg_fault> <soapenv:fault> <faultcode>soapenv:server</faultcode> <faultstring>host no autorizado</faultstring> </soapenv:fault> </msg_fault> 4 ENLACES RELACIONADOS Producto Portal para el Desarrollo de Aplicaciones Simple Object Access Protocol (SOAP) 1.1 Latest SOAP versions URL http://intranet.madrid.org/arquitecturasw/ http://www.w3.org/tr/2000/note-soap-20000508/#_toc478383507 http://www.w3.org/tr/soap/ Página 9 de 9