ES2640764T3 - Arquitectura de autenticación y autorización para una puerta de enlace de acceso - Google Patents
Arquitectura de autenticación y autorización para una puerta de enlace de acceso Download PDFInfo
- Publication number
- ES2640764T3 ES2640764T3 ES05425657.3T ES05425657T ES2640764T3 ES 2640764 T3 ES2640764 T3 ES 2640764T3 ES 05425657 T ES05425657 T ES 05425657T ES 2640764 T3 ES2640764 T3 ES 2640764T3
- Authority
- ES
- Spain
- Prior art keywords
- service
- request
- identifier
- application
- exposed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
Un método para permitir el acceso seguro a múltiples tipos diferentes de solicitantes de servicio para acceder a servicios de telecomunicaciones, comprendiendo el método: proporcionar una arquitectura (100) de telecomunicaciones que proporciona una puerta de enlace (110) de acceso de terceros, dicha puerta de enlace (110) de acceso de terceros incluye un manipulador (224) de solicitud de servicio y un manipulador (226) de capacidad, tal manipulador (224) de solicitud de servicio recibe y procesa solicitudes de acceso de red de comunicación y tal manipulador (226) de capacidad recibe y procesa solicitudes de uso de servicios expuestos; proporcionar una base de datos (228) de perfiles que incluye, a) una tabla (502) de empresa que define una o más empresas que pueden acceder a la puerta de enlace (110) de terceros usando identificadores (504) de empresa únicos en la tabla (502) de empresa, b) una tabla (506) de usuario final que almacena información relativa a los identificadores de dispositivos de abonados que usan servicios de comunicación de red y servicios expuestos, c) una tabla (510) MSISDN que proporciona una tabla de identificador de dispositivo que establece identificadores de dispositivo de abonados reconocidos en un campo (512) de MSISDN, la tabla (506) de usuario final relacionando un usuario final a un identificador de dispositivo de abonado usando dicho campo (512) de MSISDN, tal tabla (506) de usuario final y tabla (510) de MSISDN que establece una rama (554) de usuario final proporcionando identificadores (508) de usuario final únicos en la tabla (506) de usuario final y una relación con una empresa específica que usa el identificador (504) de empresa; d) una tabla (524) de aplicación de empresa que establece las características de una aplicación en la empresa que puede emitir solicitudes de servicio expuesto; tal tabla (524) de aplicación de empresa que establece una rama (556) de aplicación de empresa proporcionando identificadores (528) de usuario final únicos que establecen aplicaciones de empresa con una relación con una empresa específica que usa el identificador (504) de empresa; recibir, a través del manipulador (224) de solicitud de servicio, una solicitud de acceso de red de comunicación; extraer un identificador (514) de dispositivo de abonado a partir de la solicitud de red de comunicación, buscar en la tabla (510) de MSISDN un registro del identificador (514) del dispositivo de abonado, cuando existe un registro autorizado, remitir la solicitud de acceso de red de comunicación a un proveedor (114) de servicio de red de comunicación a través de una interfaz (220) de comunicación de proveedor de servicio, tal proveedor (114) de servicio de red de comunicación responde con los datos solicitados; devolver dichos datos solicitados al solicitante a través de una interfaz (216) de comunicación de abonado; recibir, a través del manipulador (226) de capacidad, una solicitud (408) de servicio expuesto desde un tercero a través de una interfaz de aplicación; extraer un identificador de certificado seguro de la solicitud (408) de servicio expuesto; buscar en la tabla (524) de aplicación de empresa una aplicación solicitante que se corresponda con el identificador certificado; cuando una aplicación solicitante autorizada es autenticada y autorizada para el servicio solicitado, envolver la solicitud para procesamiento hacia abajo, y remitir la solicitud envuelta a un agente (116) de capacidad e iniciar la ejecución de la solicitud para el servicio expuesto para la aplicación solicitante autorizada.
Description
5
10
15
20
25
30
35
40
45
50
55
base de datos 228 de perfiles basándose en el identificador 410 de certificado. El módulo 230 de gestión de acceso devuelve los valores buscados al programa 406 de procesamiento. A su vez, el programa 406 de procesamiento determina si existe una aplicación de empresa autorizada correspondiente al identificador 410 de certificado y que esté enlazada con un servicio instalado Activo (o sino autorizado) que se corresponda con el servicio solicitado.
Para solicitudes de servicio expuesto desde aplicaciones autenticadas y autorizadas, el manipulador 226 de capacidad determina qué servicio expuesto ha sido solicitado. El tipo de servicio puede especificarse en la solicitud 408 de servicio, o la solicitud de servicio puede distinguirse basándose en los puntos finales específicos dentro de la puerta de enlace 110 de acceso de terceros a la cual se envían. Cada solicitud 408 de servicio puede variar en forma y contenido dependiendo del tipo de servicio expuesto que se solicita.
La puerta de enlace 110 de acceso de terceros puede definir y publicar descriptores de Lenguaje de Descripción de Servicios Web (WSDL) para servicios expuestos a terceros 102. Los descriptores WSDL pueden especificar la localización de un servicio (por ejemplo, la dirección de red de un punto final establecido en la puerta de enlace 110 de acceso de terceros) y la funcionalidad que el servicio expone. Los descriptores WSDL pueden también definir cada servicio expuesto, las operaciones que pueden realizarse, y los mensajes implicados. En consecuencia, los terceros 102 reciben los descriptores publicados y entienden dónde comunicar las solicitudes de servicio, la forma y contenido a la que la solicitud de servicio debe adherirse, y la forma y contenido de las respuestas que se pueden esperar.
El manipulador 226 de capacidad proporciona una interfaz 412 de servicio expuesto que actúa como intermediario entre el agente 116 de servicio y las aplicaciones 106 solicitantes. La interfaz 412 de servicio expuesto puede traducir mensajes 408 de solicitud de servicio recibidas desde una forma esperada por la puerta de enlace 110 de terceros (por ejemplo, la forma para mensajes de entrada especificada en el descriptor WSDL) a una forma esperada por el agente 116 de servicio para tales solicitudes. En otras palabras, los envoltorios son las correspondencias aplicadas por las definiciones de WSDL para formar mensajes de entrada para los servicios expuestos. Así, la interfaz 412 de servicio expuesto aísla al agente 116 de servicio de forma y contenido ampliamente variable potenciales de mensajes de solicitudes de servicio expuesto y conecta eficientemente las aplicaciones solicitantes con los servicios expuestos.
Con ese fin, la interfaz 412 de servicio expuesto puede incluir lógica envolvente que prepara una solicitud 424 de servicio expuesta estandarizada (esto es, envuelta) para el agente 116 de servicio. La lógica envolvente puede representar un programa de procesamiento que analiza la definición del WSDL para traducir la forma y contenido del mensaje recibido para hacerlo coincidir con las definiciones de mensaje especificadas en las definiciones del WSDL. A continuación se describen ejemplos de formatos de mensajes esperados por el agente 116 de servicio.
La lógica envolvente puede proporcionarse para cualquiera de los servicios expuestos. La Figura 4 muestra una envoltura 414 de SMS, una envoltura 416 de MMS, y una envoltura 418 de Pregunta de Estado. La Figura 4 también muestra una envoltura 420 de Autenticación de Usuario Móvil, una Envoltura 422 de Autenticación de Usuario, una envoltura 432 de SIP y una envoltura 434 de Cargo.
En una implementación, la interfaz 412 de servicio expuesto puede emplear Invocación de Método Remoto (RMI) de Java. RMI proporciona un mecanismo a través del cual los objetos Java se pueden definir, y su método se puede invocar remotamente. Con ese fin, el agente 116 de servicio puede actuar como un servidor de objetos para crear objetos que manipulen solicitudes de servicio expuesto. Los objetos pueden registrarse para que el manipulador 226 de capacidad pueda obtener referencias a los objetos e invocar los objetos de manera remota. La puerta de enlace 110 de terceros puede enviar y recibir mensajes de solicitud de servicio envueltas y respuestas hacia y desde el agente 116 de servicio con otra comunicación de mensaje y técnicas de llamada de procedimiento remoto, sin embargo.
El manipulador 226 de capacidad obtiene respuestas 426 de solicitud de servicio a las solicitudes de servicio expuesto desde el agente 116 de servicio. El manipulador 226 de capacidad proporciona las respuestas 426 de solicitud a las aplicaciones solicitantes. Además, el manipulador 226 de capacidad puede proporcionar un formato de respuesta estandarizada para cada respuesta de solicitud de servicio expuesto. Con ese fin, las envolturas mostradas en la Figura 4 pueden generar respuestas 428 de solicitud de servicio expuesto envuelta según los mensajes de salida definidos en las definiciones del WSDL.
El manipulador 226 de capacidad puede también crear archivos 430 de registro. Los archivos 430 de registro pueden incluir cualquier información de seguimiento de servicio expuesto deseada, tal como información de abonado autorizado, identificadores de certificados, fechas y horas de solicitud de servicio, número de solicitudes hechas, tipos de solicitudes hechas, códigos de error, identificadores de transacciones, y otra información. El manipulador 226 de capacidad puede proporcionar los archivos 430 de registro al módulo 234 de reporte para analizar y rellenar las tablas de registro en la base de datos 228 de perfiles.
La Figura 5 muestra una implementación ejemplar del modelo de datos en la base de datos 228 de perfiles. La base de datos 228 de perfiles incluye una tabla 502 de empresa, que almacena información que caracteriza una empresa que tiene acceso a uno o más servicios expuestos proporcionados por la arquitectura 100. Un campo 504
identificador de empresa proporciona una clave primaria para identificar unívocamente cada registro en la tabla 502 de empresa. La tabla 502 de empresa se muestra en más detalle a continuación en la Tabla 1.
- Tabla 1 -Empresa
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_EMPRESA
- Identificador Único de la Empresa Entero
- IDGRUPOMAESTRO
- Descriptor alfanumérico de la Empresa Cadena
- NOMBRE_EMPRESA
- Nombre de la Empresa Cadena
- CODIGO_IVA
- Código del IVA de la Empresa Cadena
- CODIGO_FISCAL
- Código Fiscal de la Empresa Cadena
- ID_ESTADO
- Identificador del estado de la Empresa (por ejemplo, activada, desactivada) Entero
- FECHACREACION
- Fecha de Creación Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
Una tabla 506 de usuario final almacena información relativa a los MSISDN (que generalmente se asocian a individuos específicos) que usan los servicios de comunicación de red y servicios expuestos. La tabla 506 de usuario final establece las relaciones entre el usuario final, su empresa, y su MSISDN. Un campo 508 identificador de usuario final de clave primaria identifica unívocamente cada registro en la tabla 506 de usuario final. La tabla 506 de usuario final se muestra en más detalle a continuación en la Tabla 2.
- Tabla 2 – Usuario Final
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_USUARIOFINAL
- Identificador Único del UsuarioFinal Entero
- ID_MSISDN
- Identificador del MSISDN del usuario Entero
- ID_GRUPO_SERVICIO
- Descriptor alfanumérico del UsuarioFinal Cadena
- ID_EMPRESA
- Identificador de la Empresa Entero
- ID_ESTADO
- Identificador del estado del UsuarioFinal (por ejemplo, activado, desactivado) Entero
- FECHACREACION
- Fecha de Creación Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
10 Una tabla 510 de MSISDN proporciona una tabla de identificador de dispositivo que establece MSISDN reconocidos en el campo 512 MSISDN. El MSISDN puede estar asociado con dispositivos de abonado, tal como con tarjetas SIM GSM para teléfonos móviles. La tabla 506 de usuario final puede entonces relacionar un usuario final con un MSISDN usando el campo 512 identificador de MSISDN. Ese campo de estado en la tabla 510 de MSISDN proporciona un estado de dispositivo de abonado. Una clave primaria se proporciona en el campo 514 identificador
15 del MSISDN para identificar unívocamente cada registro en la tabla 510 de MSISDN. La tabla 510 de MSISDN se muestra en más detalle a continuación en la Tabla 3.
- Tabla 3 – MSISDN
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_MSISDN
- Identificador del MSISDN del usuario Entero
- MSISDN
- Valor del MSISDN Cadena
- ID_ESTADO
- Identificador del estado del MSISDN (por ejemplo, activado, desactivado) Entero
- FECHACREACION
- Fecha de Creación Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
Una tabla 520 de estado establece los posibles estados para usuarios finales, empresas, MSISDN, u otras entidades. Un campo 522 identificador de estado de clave primaria identifica unívocamente cada registro en la tabla 520 de estado. La tabla 520 de estado se muestra en más detalle a continuación en la Tabla 4.
5 Ejemplos de estados incluye Activo, Desactivado, Suspendido, y Desocupado. En consecuencia, la puerta de enlace 110 de terceros puede establecer el estado a uno entre muchos niveles diferentes. Por ejemplo, el estado puede reflejar el estado de una empresa, una aplicación de empresa, un usuario, o un MSISDN específico. Cuando se autorizan las solicitudes de servicio, la puerta de enlace 110 de terceros puede comprobar que el estado está en cualquier nivel deseado antes de autorizar la petición. Por ejemplo, la puerta 110 de enlace de terceros puede
10 asegurar que ambos MSISDN y usuario final permanecen Activos. Alternativamente o de manera adicional, la puerta de enlace 110 puede asegurar que la empresa asociada también permanece Activa.
- Tabla 4 – Estado
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_ESTADO
- Identificador Único del Estado Entero
- NOMBRE_ESTADO
- Nombre del Estado: -Activado -Desactivado -Suspendido -Desocupado Cadena
- DESCRIPCION_ESTADO
- Descripción del Estado Cadena
- FECHACREACION
- Fecha de Creación Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
Una tabla 516 de aplicación cruzada de usuario final establece una relación entre un usuario final y las aplicaciones de negocio a las que está abonado. Los campos de identificador de usuario final e identificador de aplicación 15 proporcionan campos 518 de clave primaria / clave exterior que enlazan usuarios finales con aplicaciones de empresa. La tabla 516 de aplicación cruzada de usuario final se muestra en más detalle a continuación en la Tabla
5.
- Tabla 5 – Aplicación cruzada de usuario final
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_USUARIOFINAL
- Identificador Único del UsuarioFinal Entero
- ID_APLICACION
- Identificador Único de la Aplicación Entero
- FECHACREACION
- Fecha de Creación Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
Una tabla 524 de aplicación de empresa establece las características de una aplicación en una empresa que puede 20 emitir solicitudes de servicio expuesto. Las características pueden incluir nombre, descripción, URL, un identificador de certificado almacenado en el campo 526 de identificador de certificado, y otras características. Como un ejemplo,
la tabla de aplicación de empresa puede especificar las características de una aplicación de interfaz de SMS que se ejecuta en un proveedor de servicio de terceros, por ejemplo. La interfaz de SMS puede emitir solicitudes de SMS a la puerta de enlace 110 de terceros en nombre de clientes de la empresa asociados con la interfaz de SMS.
Un campo 528 de identificador de aplicación de clave primaria identifica unívocamente cada registro en la tabla 524 de aplicación de empresa. Además, un identificador de estado proporciona información de estado para cada registro de aplicación de empresa. La tabla 524 de aplicación de empresa se muestra en más detalle a continuación en la Tabla 6.
- Tabla 6 – Aplicación de Empresa
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_APLICACION
- Identificador Único de la Aplicación Entero
- NOMBRE_APLICACION
- El nombre de la Aplicación Cadena
- DESCRIPCION_APLICACION
- La descripción de la Aplicación Cadena
- URL
- URL de inicio de la Aplicación Cadena
- ID_EMPRESA
- Identificador de la Empresa Entero
- CATALOGO_URL_MSITIO
- URL del catálogo de la Aplicación Cadena
- ID_CERTIFICADO
- Identificador del certificado de la Aplicación Entero
- SERVIDOR_PROXY
- IP del servidor proxy Cadena
- PUERTO_PROXY
- Puerto del servidor proxy Cadena
- ID_ESTADO
- Identificador del estado de la Aplicación (por ejemplo, activada, desactivada) Entero
- FECHACREACION
- Fecha de Creación Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
Una tabla 530 de servicios instalados establece registros de los servicios expuestos a los cuales una empresa está
10 abonada. Así, los servicios instalados identifican qué servicios expuestos pueden solicitar las aplicaciones de empresa. Un campo 532 identificador de servicio instalado sirve como una clave primaria para identificar unívocamente cada registro en la tabla 530 de servicios instalados. La tabla 530 de servicios instalados se muestra en más detalle a continuación en la Tabla 7.
- Tabla 7 – Servicios Instalados
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_SERVICIOINSTALADO
- Identificador Único del Servicio Instalado Entero
- ID_APLICACION
- Identificador de la Aplicación Entero
- ID_SERVICIO
- Identificador del Servicio Abonado Entero
- ID_ESTADO
- Identificador del estado del Servicio Instalado (por ejemplo, activada, desactivada) Entero
- FECHACREACION
- Fecha de Creación Fecha
- FECHAFIN
- Fecha Fin Servicio Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
Una tabla 534 de atributos instalados establece características de servicios asociados con empresas específicas. Un campo 536 identificador de atributos instalados sirve como una clave primaria para identificar unívocamente cada registro en la tabla 534 de atributos instalados. La Tabla 8, a continuación, muestra la tabla 534 de atributos instalados en más detalle.
- Tabla 8 – Atributos Instalados
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_ATRIBUTOINSTALADO
- Identificador Único del Atributo Instalado Entero
- ID_ATRIBUTO
- Identificador del Atributo Entero
- VALOR_ATRIBUTO
- Nombre del Atributo Entero
- ID_SERVICIOINSTALADO
- Identificador del Servicio Instalado
- ID_ESTADO
- Identificador del estado del Atributo Instalado (por ejemplo, activada, desactivada) Entero
- FECHACREACION
- Fecha de Creación Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
5
Una tabla 538 de atributo de servicio almacena el nombre, descripción, y un valor por defecto para atributos de servicios expuestos disponibles a través de la puerta de enlace 110 de acceso de terceros. Ejemplos de atributos de servicio incluye:
Cargo recurrente: el coste a pagar cada mes para usar el servicio (por ejemplo, el coste mensual para acceder a los 10 servicios expuestos de Enviar SMS o Enviar MMS).
Umbral: la cantidad de mensajes SMS o MMS que puede variar a ser enviados cada mes.
Cuota extra: el coste por mensaje SMS o MMS cuando se excede el umbral.
El valor por defecto puede ser exportado a la tabla de atributo instalado. El valor en la tabla de atributo instalado puede entonces ser modificado apropiadamente para una aplicación de empresa específica.
15 Un campo 540 identificador de atributo sirve como una clave primaria para identificar unívocamente cada registro en la tabla 538 de atributo de servicio. La Tabla 9, a continuación, muestra la tabla 538 de atributo de servicio en más detalle.
- Tabla 9 – Atributo de Servicio
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_ATRIBUTO
- Identificador del Atributo Entero
- ID_SERVICIO
- Identificador del Servicio Cadena
- NOMBRE_ATRIBUTO
- El nombre del atributo Cadena
- VALOR_DEFECTO_ATRIBUTO
- El valor por defecto del atributo Cadena
- DESCRIPCIÓN_ATRIBUTO
- La descripción del atributo Cadena
- ID_ESTADO
- Identificador del estado del Atributo de Servicio (por ejemplo, activado, desactivado) Entero
- FECHACREACION
- Fecha de Creación Fecha
- FECHAULTIMAMODIFICACION
- Fecha de Última Modificación Fecha
requerir que la aplicación de empresa se enlace a un servicio instalado Activo que coincida con el servicio expuesto solicitado. Además, dependiendo de la política de autorización, el manipulador 226 de capacidad puede requerir que el servicio instalado esté enlazado con un atributo instalado Activo, atributo de servicio, o entrada del catálogo de servicios. Dependiendo de la política aplicada, el modelo de datos puede permitir o denegar de manera flexible el
5 acceso a un servicio expuesto mediante la modificación de los campos de estado en una o más tablas 524, 530, 534, 538, y 542.
Así, el modelo de datos soporta gestión de política flexible basándose en los campos de estado e identificadores de autorización (por ejemplo, identificadores de MSISDN e identificadores de certificado) para examinar cuando se autorizan usuarios finales, aplicaciones de empresa, u otros solicitantes de servicio. Las políticas pueden especificar
10 un criterio de estado para uno o más registros en el modelo de datos a uno o más niveles (por ejemplo, el nivel de empresa, el nivel de usuario final, el nivel de MSISDN, o el nivel de aplicación de empresa) dentro de cada rama en el modelo de datos antes de que se considere autorizar una solicitud. Las políticas pueden variar para cada aplicación de empresa y usuario final.
Como se señaló anteriormente, el módulo 234 de reporte puede analizar los archivos 236 de registro y rellenar en
15 reacción las tablas de registro en la base de datos 228 de perfiles. Una primera tabla 546 de registro puede almacenar información registrada (por ejemplo, diariamente) para solicitud de acceso de red de comunicación (por ejemplo, solicitudes HTTP). Un campo 538 identificador de objeto proporciona un identificador único de cada fila en la tabla 546 de registro. La Tabla 11 muestra un ejemplo de implementación de la primera tabla 546 de registro.
- Tabla 11 – Tabla de Registro
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_OBJETO
- Identificador único de la fila de la Tabla Entero
- FECHAHORA
- Fecha del evento Cadena
- MSISDN
- El MSISDN Cadena
- ID_GRUPO_SERVICIO
- El ID del Grupo de Servicio Cadena
- ID_TRANSACCION
- El ID de la transacción del evento Cadena
- IDENTIFICADOR_MODULO
- El identificador del módulo de la puerta de enlace de acceso de terceros Cadena
- ACCION
- El punto donde se ha tomado el registro Cadena
- TIEMPO_TRANSCURRIDO
- El tiempo transcurrido en cada acción Entero
- NOMBRE_APLICACION
- El nombre de la Aplicación Cadena
- NOMBRE_EMPRESA
- El nombre de la Empresa Cadena
- URL_APLICACION
- La URL de inicio de la aplicación Cadena
- URL_SOLICITADA
- La URL solicitada Cadena
- CODIGO_ERROR
- El código de error Cadena
20 Una segunda tabla 550 de registro puede almacenar información registrada (por ejemplo, diariamente) para solicitudes de servicio expuesto (por ejemplo, solicitudes de cargo de SMS). Un campo 552 identificador de objeto proporciona un identificador único de cada fila en la tabla 550 de registro. La Tabla 12 muestra un ejemplo de implementación de la segunda tabla 546 de registro.
- Tabla 12 – Empresa
- Nombre de Atributo
- Descripción de Atributo Tipo
- ID_OBJETO
- Identificador único de la fila de la Tabla Entero
- FECHAHORA
- Fecha del evento Cadena
- ID_TRANSACCION
- El ID de la transacción del evento Cadena
- IDENTIFICADOR_MODULO
- El identificador del módulo de la puerta de enlace de acceso de terceros Cadena
- NOMBRE_APLICACION
- El nombre de la Aplicación Cadena
- NOMBRE_EMPRESA
- El nombre de la Empresa Cadena
- NOMBRE_BLOQUE
- El Nombre de una envoltura aplicada a la solicitud Cadena
- ACCION
- El punto donde se ha tomado el registro Cadena
- CANTIDAD_MSISDN
- La cantidad de MSISDN enviados Cadena
- CODIGO_ERROR
- El código de error Cadena
- RESULTADO_TRANSACCION
- El resultado de la transacción Cadena
- VOLUMEN_MENSAJE_KB
- La cantidad de datos transferidos Entero
- ID_ARTICULO
- El ID del artículo para las transacciones de pago Cadena
- FECHA_CREACION_ACTIVO
- La fecha de creación del activo solicitado Fecha
- PRECIO_ARTICULO
- El precio del artículo Cadena
- MONEDA
- La moneda del artículo Cadena
- BANDA_PRECIO_ARTICULO
- La banda de precio del artículo Cadena
- TEXTO_RECIBO
- El texto del recibo Cadena
- CANTIDAD_ACTIVO
- El número de activos solicitados Entero
La Figura 6 muestra un diagrama de flujo 600 de un mensaje para manejar una solicitud de acceso de red de comunicación. Como una visión de conjunto, el manipulador 224 de solicitud de servicio recibe la solicitud de acceso, autoriza al solicitante, y remite la solicitud a un servidor web. El servidor web devuelve los resultados de la
5 solicitud de acceso al manipulador 224 de solicitud de servicio, que a su vez devuelve los resultados al grupo solicitante.
La Figura 6 muestra que un grupo de servicio (por ejemplo, un usuario final o dispositivo de abonado) envía una solicitud (Act 602) de servicio HTTP, que puede incluir un MSISDN, un identificador de grupo de servicio, una URL, u otra información de acceso de red. El manipulador 224 de solicitud de servicio extrae el MSISDN de la solicitud (Act
10 604) HTTP. El manipulador 224 de servicio inicia una búsqueda en la base de datos basándose en el MSISDN. Si se encuentra el MSISDN y está Activo, entonces la solicitud se autoriza.
El manipulador 224 de solicitud de servicio puede también buscar en la base de datos 228 de perfiles para determinar si un registro de un grupo de servicio existe (Act 606). La base de datos 228 de perfiles devuelve los resultados de la búsqueda (Act 608). Si el grupo de servicio no existe actualmente (Act 610), el manipulador 224 de
15 solicitud de servicio añade el grupo de servicio a la base de datos 228 de perfiles y asocia el grupo de servicio con el MSISDN activo (Act 612).
El manipulador 224 de solicitud de servicio puede también determinar que el grupo de servicio no existe, y que el MSISDN extraído es un nuevo MSISDN para el grupo de servicio (Act 614). En ese caso, el manipulador 224 de solicitud de servicio puede actualizar el estado del antiguo MSISDN para el grupo de servicio a Inactivo (Act 616).
20 Además, el manipulador 224 de solicitud de servicio actualiza el MSISDN para el grupo de servicio en la base de datos 228 de perfiles (Act 618) para reflejar el nuevo MSISDN. El manipulador 224 de solicitud de servicio de este modo mantiene de manera precisa qué grupos de servicio están asociados con qué MSISDN.
Además, el manipulador 224 de solicitud de servicio envía la solicitud a un servidor web que responde con los datos solicitados. Con ese fin, el manipulador 224 de solicitud de servicio puede enrutar la solicitud a un servidor web 25 basándose en el MSISDN. Por ejemplo, el manipulador 224 de solicitud de servicio puede implementar una tabla de
prioridad, el asunto del mensaje en el campo 926 asunto, el grupo a quien cargar por la entrega del mensaje en el campo 928 grupo de cargo. El contenido del mensaje SMS está presente en el campo 930 de contenido.
Como se señaló anteriormente, la interfaz 412 de servicio expuesto puede envolver la solicitud a una forma estándar para el agente 116 de servicio. La Figura 10 muestra un ejemplo de un mensaje 1000 SMS envuelto. La envoltura 5 414 de SMS hace corresponder el campo 902 de identificación de transacción con el campo 1002 de identificador de transacción, añade un campo 1004 de etiqueta de transacción que puede especificar el tipo de mensaje (por ejemplo, “ENTREGASMS” para mensajes SMS); y hace corresponder el campo 904 tipo de mensaje con el campo 1006 tipo de servicio, mientras descarta el campo 906 de versión de SMS. De manera similar, la envoltura 414 de SMS hace corresponder los campos 910-914 de direccionamiento con el campo 1010 de A Dirección, el campo 1012
10 de CC Dirección, y el campo 1014 de BCC dirección, y también hace corresponder el campo 916 de código de servicio con el campo 1016 de identificador de servicio.
Entregar información de tiempos también está presente en la solicitud 1000 envuelta. En particular, la envoltura 414 de SMS hace corresponder el campo 918 de tiempo de solicitud con un campo 1018 de fecha de inicio, hace corresponder el campo 920 de tiempo de expiración con el campo 1020 de fecha fin, y descarta el campo 922 de
15 tiempo de entrega más temprano. La envoltura 414 de SMS también hace corresponder el campo 924 de prioridad con el campo 1022 de prioridad, el campo 926 de asunto con el campo 1024 de asunto, y el campo 928 de grupo de cargo con el campo 1026 identificador de cuenta. El contenido del mensaje SMS se hace corresponder desde el campo 930 de contenido con el campo 1028 de cuerpo del mensaje.
La Tabla 13 muestra una implementación ejemplar de un mensaje de solicitud de SMS de XML envuelto con valores
20 de campo derivados desde el mensaje de solicitud mostrado en la Figura 9. El mensaje envuelto añade un campo de etiqueta (establecido a “ENTREGASMS” para mensajes SMS).
- Tabla 13
- <?xml versión=”1.0” encoding=”ISO-8859-1” ?> <TSOheader TOSID=”12345” TSOlabel=”ENTREGASMS” /> <TSOattributes> <attribute name>=”TIPO_SERVICIO” value=”SMS” /> <attribute name>=”DIRECCIONREMITENTE” value=”Sitio-M” /> <attribute name>=”IDSERVICIO” value=”55555” /> <attribute name>=”FECHAINICIO” value=”05/05/2004” /> <attribute name>=”FECHAFIN” value=”10/05/2004” /> <attribute name>=”PRIORIDAD” value=”Alta” /> <attribute name>=”ASUNTO” value=”Mensaje” /> <attribute name>=”IDCUENTA” value=”77777SMS” /> <attribute name>=”CUERPO_MENSAJE” value=”Este es el mensaje SMS” /> <attribute name>=”BANDERA_CARGO” value=”1” /> <list name>=”DIRECCIONEE_PARA” value=”3” /> <attribute name>=”1” value=”+39xxx” /> <attribute name>=”2” value=”+39xxx” /> <attribute name>=”3” value=”+39xxx” /> </list> <list name>=”DIRECCIONEE_CC” value=”4” /> <attribute name>=”1” value=”+39xxx” /> <attribute name>=”2” value=”+39xxx” /> <attribute name>=”3” value=”+39xxx” />
5
10
15
20
25
<attribute name>=”4” value=”+39xxx” /> </list> <list name>=”DIRECCIONEE_BCC” value=”3” />
<attribute name>=”1” value=”+39xxx” /> <attribute name>=”2” value=”+39xxx” /> <attribute name>=”3” value=”+39xxx” />
</list> </TSOattributes> </TSO_DATA>
La Figura 11 muestra un ejemplo de una respuesta 1100 de servicio expuesto devuelta desde el agente 116 de servicio. La respuesta 1100 proporciona un acuse de recibo de la solicitud, e incluye un campo 1102 identificador de transacción, un campo 1104 etiqueta de transacción, y un campo 1106 estado de la solicitud. La respuesta 1100 también proporciona un campo 1108 de código de error y un campo 1110 de descripción de error que transporta condiciones de error a la aplicación solicitante.
La Tabla 14 muestra un ejemplo de un mensaje XML que transporta los campos de datos mostrados en la Figura 11.
- Tabla 14
- <?xml versión=”1.0” encoding=”ISO-8859-1” ?> <TSOheader TOSID=”12345” TSOlabel=”ENTREGASMS” /> <TSOresult> <codigoEstado>0</codigoEstado> <codigoError></codigoError> <descripcionError></descripcionError > </TSOresult> </TSO_DATA>
El manipulador 226 de capacidad puede también envolver la respuesta del agente de servicio para entregar a la aplicación solicitante. En otras palabras, la forma y contenido del mensaje de respuesta devuelto a la aplicación solicitante puede diferir de la forma y el contenido del mensaje de respuesta enviado desde el agente 116 de servicio. La Figura 12 muestra un ejemplo de una respuesta 1200 de SMS envuelta.
La envoltura 414 de SMS hace corresponder información desde la respuesta 1100 a la respuesta 1200 envuelta, incluyendo un campo 1202 identificador de transacción, campo 1204 de estado, campo 1206 de código de error, y campo 1208 de descripción de error. La respuesta 1200 envuelta también añade un campo 1210 de tipo de mensaje (por ejemplo, establecido a “<SMS>” u otro valor esperado por la aplicación solicitante), y un campo 1221 de versión de SMS que reporta la versión de SMS aplicable a la aplicación solicitante. El campo 1104 de etiqueta de transacción puede descartarse.
La Figura 13 muestra una correspondencia desde una solicitud 1302 de servicio expuesto de MMS a una solicitud 1304 de servicio MMS envuelta. La TSOLABEL puede establecerse a “ENTREGAMMS” o cualquier otro identificador. Una aplicación puede emitir la solicitud de servicio de MMS para entregar contenido multimedia a cualquier receptor específico. La Figura 14 muestra una correspondencia desde una respuesta 1402 de servicio expuesto de MMS a una respuesta 1404 de servicio de MMS envuelta.
La Figura 15 muestra una correspondencia desde una solicitud 1502 de servicio expuesto de SIP a una solicitud 1504 de servicio SIP envuelta. La TSOLABEL puede establecerse a “LlamadaSIP” o cualquier otro identificador. Una aplicación solicitante puede iniciar una solicitud SIP para establecer un canal de comunicación entre un emisor y un receptor especificados en la solicitud 1502. La Figura 16 muestra una correspondencia desde una respuesta 1602
5
10
15
20
25
30
35
de servicio expuesto de SIP a una respuesta 1604 de servicio de SIP envuelta. El campo TSOLABEL puede descartarse.
La Figura 17 muestra una correspondencia desde una solicitud 1702 de servicio expuesto de Estado a una solicitud 1704 de servicio de Estado envuelta. La TSOLABEL puede establecerse a “ObtenerEstadoUsuario” o cualquier otro identificador. Una aplicación solicitante puede emitir la solicitud de Estado para comprobar el estado de uno o más usuarios listados en la solicitud 1702 de estado. La solicitud 1702 de Estado puede además incluir identificadores de proveedores para solicitar el estado con respecto a proveedores de servicio específicos. La Figura 18 muestra una correspondencia desde una respuesta 1802 de Estado a una respuesta 1804 de servicio de Estado envuelta.
La Figura 19 muestra una correspondencia desde una solicitud 1902 de servicio expuesto de Autenticación a una solicitud 1904 de servicio de Autenticación envuelta. La TSOLABEL puede establecerse a “Autenticación” o cualquier otro identificador. Una aplicación solicitante puede emitir la solicitud 1902 de autenticación para pedir la autenticación de un MSISDN con respecto a un servicio y proveedor particulares. La Figura 20 muestra una correspondencia desde una respuesta 2002 de servicio expuesto de Estado a una respuesta 2004 de servicio de Estado envuelta. La respuesta puede incluir un amplio rango de información de estado, tal como estado de servicio (por ejemplo, “ok”, o “desconectado”), tipo de cliente (por ejemplo, “comercial” o “residente”), información de identificación para el plan de servicio del cliente, módulo SIM, tipo de dispositivo inalámbrico, capacidad para enviar
o recibir mensajes MMS, UMTS, o GPRS, el canal de acceso (por ejemplo, “móvil” o “línea fija”), o cualquier otra información de estado disponible para el MSISDN.
La Figura 21 muestra una correspondencia desde una solicitud 2102 de servicio expuesto de Cargo a una solicitud 2104 de servicio de Cargo envuelto. La TSOLABEL puede establecerse a “Cargo” o cualquier otro identificador. Una aplicación solicitante puede iniciar una solicitud de cargo para solicitar la facturación de una sesión de comunicación con las fechas de inicio y de fin especificadas entre dos puntos terminales (por ejemplo, entre un emisor URI y un receptor URI) y manejada por un proveedor de servicio especificado en la solicitud 2102 de Cargo. La Figura 22 muestra una correspondencia desde una respuesta 2202 de servicio expuesto de Cargo a una respuesta 2204 de servicio de Cargo envuelta. El campo TSOLABEL se puede descartar en la respuesta.
La Tabla 15 muestra un ejemplo de una definición de WSDL para un servicio expuesto. En particular, la Tabla 15 muestra un ejemplo de descriptor de servicio de Cargo de WSDL que puede definir mensajes de entrada y de salida y el formato del mensaje para un servicio expuesto. El descriptor de servicio de Cargo define un <port> (“InterfazAdaptadorCargo”) a través del cual las solicitudes y respuestas del servicio de Cargo se envían como definidas por los mensajes de entrada y salida. Además, el descriptor de servicio de Cargo define la forma y contenido del mensaje para los mensajes de entrada y de salida (“emitirSolSolicitud”, y “emitirSolRespuesta”, respectivamente). Una unión SOAP también se define, así como la ubicación a la cual las solicitudes de servicio expuesto de Cargo se envían (a través del especificador “ubicación”).
Las definiciones de WSDL se pueden establecer para cada servicio expuesto de una manera similar. Las definiciones de WSDL pueden variar ampliamente dependiendo de la implementación de la puerta de enlace 110 y los servicios expuestos.
- Tabla 15
- <?xml versión=”1.0” encoding=”UTF-8”?> <wsdl:definitions targetNamespace=”http://[direccion]” xmlns=”http://schemas.xmlsoap.org/wsdl/” xmlns:apachesoap=”htpp://xml.apache.org/xml-soap” xmlns:impls=”http://[direccion]” xmlns:intf=”http://[direccion]” xmlns:soapenc=”http://schemas.xmlsoap.org/soap/encoding/” xmlns:tns2=”http://[direccion]” xmlns:tns3=”http://[direccion]” xmlns:wsdl=”http://schemas.xmlsoap.org/wsdl/” xmlns:wsdlsoap=”http://schemas.xmlsoap.org/wsdl/soap/” xmlns:xsd=”http://www.w3.org/2001/XMLSchema”> <wsdl:types> <schema targetNamespace=”http://[direccion]”
xmlns=”http://www.w3.org/2001/XMLSchema”> <import namespace=”http://schemas.xmlsoap.org/soap/encoding/”/> <complexType name=”SolicitudEnvuelta”>
<sequence> <element name=”IdCert” nillable=”true” type=”xsd:int”/> <element name=”IdTransaccion” nillable=”true” type=”xsd:string”/>
</sequence> </complexType> <complexType name=”Estado”>
<sequence> <element name=”detalles” nillable=”true” type=”xsd:string”/> <element name=”codigoEstado” nillable=”true” type=”xsd:int”/> <element name=”textoEstado” nillable=”true” type=”xsd:string”/>
</sequence> </complexType> <complexType name=”RespuestaEnvuelta”>
<sequence> <element name=”estado” nillable=”true” type=”tns3:Estado”/> <element name=”IdTransaccion” nillable=”true” type=”xsd:string”/>
</sequence>
</complexType> </schema> <schema targetNamespace=”http://[direccion]”
xmlns=”http://www.w3.org/2001/XMLSchema”> <import namespace=”http://schemas.xmlsoap.org/soap/encoding/”/> <complexType name=”SolicitudEnvueltaCargo”>
<complexContent> <extension base=”tns3:SolicitudEnvuelta”>
<sequence> <element name=”IDCuenta” nillable=”true” type=”xsd:string”/> <element name=”fechaFin” nillable=”true” type=”xsd:dateTime”/> <element name=”IDServicio” nillable=”true” type=”xsd:string”/> <element name=”fechaInicio” nillable=”true” type=”xsd:dateTime”/>
</sequence> </extension> </complexContent>
</complexType> <complexType name=”RespuestaEnvueltaCargo”> <complexContent> <extension base=”tns3:RespuestaEnvuelta”> <sequence/> </extension> </complexContent> </complexType> </schema> </wsdl:types> <wsdl:message name=”emitirSolSolicitud”> <wsdl:part name=”solicitudEnvueltaCargo”
type=”tns2:SolicitudEnvueltaCargo”/> </wsdl:message> <wsdl:message name=”emitirSolRespuesta”>
<wsdl:part name=”emitirSolDevuelta” type=”tns2:RespuestaEnvueltaCargo”/> </wsdl:message> <wsdl:portType name=”InterfazAdaptadorCargo”>
<wsdl:operation name=”emitirSol”
parameterOrder=”solicitudEnvueltaCargo”> <wsdl:input message=”intf:emitirSolSolicitud” name=”emitirSolSolicitud”/> <wsdl:output message=”intf:emitirSolRespuesta”
name=”emitirSolRespuesta”/>
</wsdl:operation> </wsdl:portType> <wsdl:binding name=”UnionSoapInterfazAdaptadorCargo”>
type=”intf:InterfazAdaptadorCargo”> <wsdlsoap:binding style=”rpc”> transport=”http://schemas.xmlsoap.org/soap/http”/> <wsdl:operation name=”emitirSol”> <wsdlsoap:operation soapAction=””/> <wsdl:input name=”emitirSolSolicitud”>
<wsdlsoap:body encodingStyle=”http://schemas.xmlsoap.org/soap/encoding/” namespace=”http://[direccion]” use=”encoded”/>
</wsdl:input>
5
10
15
20
25
30
<wsdl:output name=”emitirSolRespuesta”>
<wsdlsoap:body encodingStyle=”http://schemas.xmlsoap.org/soap/encoding/” namespace=”http://[direccion]” use=”encoded”/>
</wsdl:output>
</wsdl:operation> </wsdl:binding> <wsdl:service name=”ServicioInterfazAdaptadorCargo”>
<wsdl:port binding=”intf: UnionSoapInterfazAdaptadorCargo” name=”InterfazAdaptadorCargo”> <wsdlsoap:address location=”http://localhost:8080/serverfinto/services/SdcCharge”/>
</wsdl:port> </wsdl:service> </wsdl:definitions>
La puerta de enlace 110 de terceros proporciona acceso seguro, eficiente a servicios expuestos proporcionados por un proveedor de servicio de telecomunicaciones. La puerta de enlace 110 de terceros mejora la autorización de terceros mediante el empleo de identificadores certificados obtenidos durante la autenticación segura. Incluir el identificador de certificado en el registro de la aplicación de empresa en la base de datos 228 extiende eficientemente el uso del identificador de certificado para la autorización, sin requerir identificadores de autorización separados o independientes para las aplicaciones de empresa. La autorización mejorada de aplicaciones de empresa proporciona una fuerte protección contra acceso de terceros no autorizados de telecomunicaciones valiosas.
Además, el campo MSISDN y campo identificador de certificado proporcionan criterios de autorización independientes para diferentes tipos de solicitantes de servicio. En conjunción con los campos de estados de múltiples niveles en el modelo de datos, el modelo de datos soporta una gestión de la política flexible para el manipulador 224 de solicitud de servicio. Las políticas pueden especificar criterios de estado para registros en el modelo de datos a uno o más niveles (por ejemplo, el nivel de empresa, el nivel de usuario final, o el nivel de aplicación de empresa) dentro de cada rama en el modelo de datos antes de que una solicitud se considere autorizada.
Resumiendo la técnica para permitir de manera segura el acceso a múltiples tipos diferentes de solicitantes de servicio, la puerta de enlace 110 de terceros recibe una solicitud de servicio expuesto desde un primer tipo de solicitante de servicio (por ejemplo, una aplicación de empresa). La puerta de enlace 110 de terceros también recibe una solicitud de servicio de comunicación de red de un segundo tipo de solicitante de servicio (por ejemplo, un servicio de telefonía móvil) La puerta de enlace de terceros autentica la solicitud de servicio expuesto y obtiene un identificador de autorización seguro (por ejemplo, una clave pública) de la autenticación de la solicitud de servicio expuesto.
La base de datos 228 de perfiles proporciona resultados de búsqueda, basándose en el identificador de autorización seguro, a partir de una rama de solicitante de servicio de un modelo de datos definido en la base de datos 228 de perfiles. La puerta de enlace 110 de terceros determina una aplicación de empresa representada en los resultados de la búsqueda. La autorización para la aplicación de la empresa procede basándose en uno o más identificadores de estado (por ejemplo, un identificador de aplicación de empresa) en los primeros resultados de búsqueda.
Con respecto al segundo tipo de solicitante de servicio, la puerta de enlace 110 de terceros extrae un identificador de dispositivo de la solicitud de servicio de comunicación de red. La base de datos 228 de perfiles también proporciona resultados de la búsqueda desde una rama de solicitante de servicio diferente basándose en el identificador del dispositivo. Un dispositivo de abonado representado en los segundos resultados de la búsqueda es determinado y autorizado basándose en uno o más identificadores de estado de dispositivo de abonados en los segundos resultados de la búsqueda.
Mientras varias realizaciones de la invención han sido descritas, será aparente para aquellos expertos en la técnica que son posibles muchas más realizaciones e implementaciones dentro del ámbito de la invención. En consecuencia, la invención no debe ser restringida excepto a la luz de las reivindicaciones adjuntas y sus equivalentes.
Claims (1)
-
imagen1 imagen2 imagen3
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP05425657.3A EP1764972B1 (en) | 2005-09-20 | 2005-09-20 | Authentication and authorization architecture for an access gateway |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2640764T3 true ES2640764T3 (es) | 2017-11-06 |
Family
ID=60409526
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES05425657.3T Expired - Lifetime ES2640764T3 (es) | 2005-09-20 | 2005-09-20 | Arquitectura de autenticación y autorización para una puerta de enlace de acceso |
Country Status (1)
| Country | Link |
|---|---|
| ES (1) | ES2640764T3 (es) |
-
2005
- 2005-09-20 ES ES05425657.3T patent/ES2640764T3/es not_active Expired - Lifetime
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1946023B (zh) | 用于接入网关的认证和授权体系结构 | |
| US7917124B2 (en) | Third party access gateway for telecommunications services | |
| EP1444633B1 (en) | A system and a method relating to user profile access control | |
| US9479908B2 (en) | Short message service protocol gateway | |
| US7296156B2 (en) | System and method for SMS authentication | |
| US20030233329A1 (en) | System and method for providing subscription content services to mobile devices | |
| US7512973B1 (en) | Wireless-access-provider intermediation to facilliate digital rights management for third party hosted content | |
| CN102067143A (zh) | 用于电子装置的安全管理的系统、方法和装置 | |
| WO2007136872A2 (en) | Systems and methods for adding credit to a wireless telecommunications account | |
| ES2274980T3 (es) | Arquitectura para proveer servicios en interneet. | |
| CN102263809A (zh) | 一种基于企业服务总线实现服务安全管控的方法及装置 | |
| ES2328150T3 (es) | Informacion dirigida a un dispositivo destinatario sobre las propiedades del contenido de un mensaje. | |
| ES2640764T3 (es) | Arquitectura de autenticación y autorización para una puerta de enlace de acceso | |
| CN1941778B (zh) | 用于电信服务的第三方接入网关 | |
| HK1105258B (en) | Authentication and authorization architecture for an access gateway | |
| HK1102042B (en) | Third party access gateway for telecommunications services | |
| Krishna et al. | Short messaging service as an alternative for pushing information to build efficient information passing systems in academic institutions | |
| CN101931643B (zh) | 用于移动通信服务系统的用户信息管理系统及方法 | |
| Silfvast | A Web Services Interface for Managing Mobile Messaging Services |