ES2389882T3 - Sistema y método para acceder globalmente y de manera segura a la información unificada en una red informática - Google Patents

Sistema y método para acceder globalmente y de manera segura a la información unificada en una red informática Download PDF

Info

Publication number
ES2389882T3
ES2389882T3 ES10163803T ES10163803T ES2389882T3 ES 2389882 T3 ES2389882 T3 ES 2389882T3 ES 10163803 T ES10163803 T ES 10163803T ES 10163803 T ES10163803 T ES 10163803T ES 2389882 T3 ES2389882 T3 ES 2389882T3
Authority
ES
Spain
Prior art keywords
service
data
user
global server
engine
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
Application number
ES10163803T
Other languages
English (en)
Inventor
Daniel Mendez
Mark Riggins
Prasad Wagle
Hong Q. Bui
Mason Ng
Sean Michael Quinlan
Christine C. Ying
Christopher R. Zuleeg
David J. Cowan
Joanna A. Aptekar-Strober
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Good Technology Corp
Original Assignee
Visto Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Visto Corp filed Critical Visto Corp
Application granted granted Critical
Publication of ES2389882T3 publication Critical patent/ES2389882T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

Un terminal de usuario (105) que comprende:una interfaz de comunicación (240) diseñada para comunicarse por intermedio de un canal de comunicación 5 Internet(110);un motor web (140) configurado para entrar en contacto con un servidor global (115) a través del canal de comunicaciónInternet utilizando la interfaz de comunicación para recuperar datos de configuración (356), estando el motor webdiseñado para presentar una pluralidad de servicios (615) utilizando los datos de configuración recuperados, identificandola pluralidad de servicios al menos un ejecutable telecargable de acceso de servicio operativo para el acceso a un motorde servicio (175) a partir del terminal de usuario a través del canal de comunicación Internet;un dispositivo de presentación visual (230) para presentar la pluralidad de servicios a un usuario del terminal de usuario yun dispositivo de entrada (220) que permite al usuario seleccionar un servicio a partir de la pluralidad;en donde el motor web está configurado para telecargar un ejecutable telecargable de acceso al servicio correspondienteal servicio seleccionado a través del canal de comunicación Internet utilizando la interfaz de comunicación y para ejecutarel ejecutable telecargable cargado, lo que permite recuperar una dirección de servicio correspondiente al motor deservicio que será utilizado por el terminal de usuario para el acceso a un servicio de recuperación de datos del espaciode trabajo (967) proporcionado por dicho motor de servicio, permitiendo dicho servicio de recuperación de datos delespacio de trabajo la recuperación de un elemento del espacio de trabajo en los datos del espacio de trabajoconservados en un terminal distante del servidor global y correspondiente a la dirección de servicio recuperada.

Description

Sistema y método para acceder globalmente y de manera segura a la información unificada en una red informática
5 ANTECEDENTES DE LA INVENCIÓN
CAMPO DE LA INVENCIÓN
La invención se refiere, en general, a redes informáticas y más en particular, a da a conocer un sistema y método para 10 acceder globalmente, y de forma segura, a información unificada en una red informática.
DESCRIPCIÓN DE LA TÉCNICA RELACIONADA
La red Internet interconecta actualmente unas 100.000 redes informáticas y varios millones de ordenadores. Cada uno
15 de estos ordenadores memoriza numerosos programas de aplicación para proporcionar numerosos servicios, tales como generación, envío y recepción de correo electrónico, acceso a sitios de World Wide Web, generación y recepción de documentos en fax, memorización y recuperación de datos, etc.
Un usuario itinerante, esto es, un usuario que se desplaza y accede a una estación de trabajo a distancia, se enfrenta
20 con varios problemas. Los diseñadores de programas han desarrollado técnicas de comunicación para permitir al usuario itinerante establecer un enlace de comunicación y para telecargar la información necesaria y los programas de aplicaciones de servicio necesarios desde la estación de trabajo distante a un ordenador local. Con la utilización de estas técnicas, el usuario itinerante, puede manipular los datos en la estación de trabajo distante y cuando acabe dicha operación, puede cargar los datos manipulados de nuevo desde la estación de trabajo distante al ordenador local. Sin
25 embargo, los ordenadores lentos y los canales de comunicación lentos hacen que la telecarga de grandes ficheros y programas sea un proceso consumidor de tiempo excesivo. Además, la telecarga de ficheros y programas a través de canales inseguros constituye una grave amenaza para la integridad y confidencialidad de los datos telecargados.
La coherencia de datos es también una preocupación importante para el usuario itinerante. Por ejemplo, cuando
30 mantiene múltiples copias independientemente modificables de un documento, un usuario corre el riesgo de utilizar una versión obsoleta. En el momento en que el usuario notifica una incoherencia, puede haberse realizado ya una falsa comunicación entre las partes o una pérdida de datos.
En tal caso, el usuario debe dedicar más tiempo a intentar reconciliar las versiones incoherentes y resolver el problema 35 de las comunicaciones indebidas.
El problema de la incoherencia de los datos se aumenta cuando se mantienen múltiples copias de un documento en diferentes lugares de la red. Por ejemplo, debido a los sistemas de seguridad de la red tales como la tecnología de ‘firewall’ convencional, un usuario puede tener acceso solamente a una particular de estas localizaciones de la red. Sin
40 acceso a los demás sitios, el usuario no puede confirmar que la versión en el sitio accesible sea la más reciente.
Los problemas de la coherencia de datos pueden surgir también cuando se utilizan programas de aplicación de diferentes proveedores. Por ejemplo, el motor web Netscape NavigatorTM y el motor web Internet ExplorerTM memoriza cada uno distintivos para referencia rápida a sitios web de interés. Sin embargo, puesto que cada motor web utiliza
45 diferentes formatos y memoriza distintivos en diferentes ficheros, dichos distintivos no son intercambiables. Además, un motor web puede memorizar un distintivo necesario y el otro puede no hacerlo. Un usuario que, por ejemplo, ejecuta el motor web Internet ExplorerTM en su domicilio y ejecuta el motor web Netscape NavigatorTM en su lugar de trabajo corre el riesgo de tener distintivos incoherentes en cada localización.
50 El documento WO 96/17306 describe un sistema en el que se proporcionan servicios, tales como servicios de películas cinematográficas bajo demanda, a un dispositivo de cliente, tal como un decodificador, a través de un servidor multimedia. El decodificador genera y envía una demanda de servicio, incluyendo dicha demanda una dirección lógica del servidor que proporciona el servicio solicitado y envía la demanda a través del servidor multimedia; la posterior comunicación entre el servidor y el decodificador se encaminan a través del servidor multimedia. Esto permite al cliente
55 acceder a múltiples servicios por intermedio de un servidor único, esto es el servidor multimedia, lo que significa que los denominados servicios back-end se puedan asignar a los servidores de servicios, lo que permite al dispositivo del cliente centrarse en sus recursos en la presentación.
El documento US5572643 describe un sistema para acceder a datos desde un explorador de la web y resuelve los
60 problemas asociados con el retardo incurrido cuando se telecargan algunos tipos de datos desde algunos sitios web. En particular, enseña a visualizar notificaciones informativas al usuario durante este así denominado “tiempo inactivo”.
Por lo tanto, se necesita un sistema y método para permitir a múltiples usuarios acceder a servicios informáticos, a distancia, sin consumir un tiempo de usuario excesivo, sin amenazar gravemente a la integridad y confidencialidad de los
65 datos y sin comprometer la coherencia de los datos.
SUMARIO DE LA INVENCIÓN
La presente invención da a conocer un sistema y métodos para proporcionar un acceso global y seguro a servicios en una red informática.
5 Estos sistemas y métodos se describen en las reivindicaciones adjuntas. Un usuario puede obtener acceso a un servidor global utilizando cualquier terminal, que esté conectado a través de una red informática tal como la red Internet al servidor global y que está habilitado con un motor web. Un cliente memoriza un primer conjunto de datos del espacio de trabajo y está acoplado, a través de una red informática, a un servidor global.
10 Los motores de servicios para gestionar servicios tales como la gestión del correo electrónico, acceso a distintivos, establecimiento de calendarios, acceso a red, etc., se pueden memorizar en cualquier lugar en la red informática. El servidor global está configurado para proporcionar al usuario acceso a servicios, que están basados en el nivel de gestión de autenticación o las preferencias del usuario pueden incluir solamente un subconjunto de servicios disponibles.
15 A la recepción de una demanda de servicio desde el cliente, el servidor global envía información de configuración para permitir el acceso al servicio.
Un método de la presente invención incluye establecer un enlace de comunicación entre el cliente y el servidor global. El método incluye establecer un enlace de comunicación entre el cliente y un servicio basado en las demandas del usuario.
20 El método recibe datos de configuración y utiliza los datos de configuración para configurar los componentes del cliente tales como el sistema operativo, el motor web y otros componentes. La configuración de los componentes del cliente permite al cliente comunicarse con el servicio y proporciona una interfaz de usuario específica del servicio y del usuario al cliente. El establecimiento de un enlace de comunicación puede incluir también la confirmación de los privilegios de acceso.
25 El sistema y métodos de la presente invención proporcionan ventajosamente un acceso global y seguro a terceros, esto es, el servidor global. El sistema y métodos dan a conocer una técnica segura para permitir a un usuario acceder al servidor global y de este modo, a los datos del espacio de trabajo a distancia y de una forma segura. Gracias a los servicios de seguridad y de identificación y de protección firewall (‘cortafuegos’) globales, realizados por el servidor
30 global, las entidades corporativas pueden memorizar información relativamente secreta en el servidor global para uso por los clientes autorizados. No obstante, la presente invención permite también a las entidades corporativas mantener solamente una parte de su información secreta en el servidor global, de modo que se produciría solamente una pérdida limitada si el servidor global sufriera una anomalía operativa. Además, el servidor global puede actuar, en una forma de realización preferida, como un mandatario del cliente para controlar el acceso a los servicios, registrar el uso de claves y
35 registrar el acceso de recursos.
Puesto que el sistema y método que operan a través de Internet, el sistema es accesible utilizando cualquier terminal conectado que tenga un motor web tal como un teléfono inteligente habilitado para Internet, decodificador de televisión (p.e., TV de web), etc., y es accesible a través de cualquier distancia.
40 Además, un usuario itinerante puede estar autorizado para acceder a los datos del espacio de trabajo a partir del servidor global o puede estar autorizado para acceder a un servicio para tener acceso a los datos del espacio de trabajo desde un cliente. Por ejemplo, un usuario puede preferir no memorizar información personal en el servidor global, pero puede preferir tener acceso remoto a la información. Además, el usuario puede preferir memorizar elementos del espacio de
45 trabajo muy confidenciales sobre el cliente, en el lugar de trabajo, como una seguridad añadida si el servidor global sufriera una anomalía operativa.
La presente invención puede, además, resultar ventajosa para el usuario itinerante que necesita un acceso de emergencia a información. El usuario itinerante puede solicitar a un director de Sistemas de Información de Gestión (MIS)
50 que controle el cliente para proporcionar al servidor global las claves adecuadas para permitir el acceso a la información sobre el cliente. Si se desea solamente un acceso temporal, las claves se pueden destruir posteriormente de forma automática o a petición.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
55 La Figura 1 es un diagrama de bloques que ilustra una red, susceptible de acceso a distancia, para la sincronización de datos segura, en conformidad con la presente invención;
La Figura 2 es un diagrama de bloques que ilustra detalles de un terminal distante representado en la Figura 1; 60 La Figura 3 es un diagrama de bloques que ilustra detalles de un servidor global representado en la Figura 1;
La Figura 4 es un diagrama de bloques que ilustra detalles de un agente de sincronización representado en la Figura 1;
65 La Figura 5 es una representación gráfica de un distintivo ejemplo en un formato global;
La Figura 6 es una representación gráfica de los datos de configuración de la Figura 3;
La Figura 7 es un diagrama de bloques que ilustra los detalles de un cliente representado en la Figura 1;
La Figura 8 es un diagrama de bloques que ilustra los detalles de un sistema base representado en la Figura 1;
La Figura 9 ilustra una lista de servicios ejemplo;
La Figura 10 es un diagrama de flujo que ilustra un método para el acceso a distancia a un servidor seguro;
La Figura 11 es un diagrama de flujo que ilustra detalles de la etapa, representada en la Figura 10, de crear un enlace entre un cliente y un servidor global;
La Figura 12 es un diagrama de flujo que ilustra detalles de la etapa representada en la Figura 10 de proporcionar acceso a un servicio en una primera forma de realización;
La Figura 13 es un diagrama de flujo que ilustra detalles de la etapa representada en la Figura 10 de proporcionar acceso a un servicio en una segunda forma de realización;
La Figura 14 es un diagrama de flujo que ilustra detalles de la etapa representada en la Figura 10 de proporcionar acceso a un servicio en una tercera forma de realización y
La Figura 15 es un diagrama de flujo que ilustra un método para sincronizar múltiples copias de un elemento del espacio de trabajo a través de una red segura.
DESCRIPCIÓN DETALLADA DE LA FORMA DE REALIZACIÓN PREFERIDA
La Figura 1 es un diagrama de bloques que ilustra una red 100, que comprende un primer sitio tal como un terminal informático distante 105 acoplado a través de un canal de comunicación 110 a un servidor global 115. El servidor global 115 está acoplado, a su vez, a través de un canal de comunicación 120 a un segundo sitio tal como una Red de Área Local (LAN) 125 y a través de un canal de comunicación 122 a un tercer sitio tal como un cliente 167. El canal de comunicación 110, el canal de comunicación 120 y el canal de comunicación 122 se pueden referir como componentes de una red informática tal como la red Internet. El servidor global 115 está protegido por un firewall global 130 y la red LAN 125 está protegida por un LAN firewall 135.
La red LAN 125 comprende un cliente 165, que comprende un sistema base 170 para sincronizar datos del espacio de trabajo 180 (datos de correos electrónicos, datos de ficheros, datos de agendas de trabajo, datos de usuarios, etc.) con el servidor global 115 y puede incluir un motor de servicio 175 para proporcionar servicios informáticos tales como programación, correo electrónico, servicio buscapersonas, tratamiento de textos o similares.
Los expertos en esta técnica reconocerán que los datos del espacio de trabajo 180 pueden incluir otros tipos de datos tales como programas de aplicación. Se apreciará, además, que los datos del espacio de trabajo 180 pueden dividirse cada uno en elementos de espacio de trabajo, en donde cada elemento de espacio de trabajo se puede identificar por información de versión particular 782 (Figura 7). Por ejemplo, cada correo electrónico, fichero, agenda de trabajo, etc., se puede referir como “un elemento de espacio de trabajo en datos de espacio de trabajo”. Para una mayor simplicidad, cada elemento de espacio de trabajo en el cliente 165 se refiere, en esta descripción, como estando memorizado en formato A. Se apreciará, además, que los datos del espacio de trabajo 180 o parte de ellos pueden memorizarse en diferentes localizaciones tales como localmente en el cliente 165, en otros sistemas en la red LAN 125 o en otros sistemas (no ilustrados) conectados al servidor global 115.
El cliente 167 es similar al cliente 165. Sin embargo, los datos del espacio de trabajo memorizados en el cliente 167 se refieren como estando memorizados en formato B, que puede ser el mismo o diferente al formato A. Todos los aspectos anteriormente descritos y los descritos a continuación con referencia al cliente 165 son también posibles con respecto al cliente 167. Por ejemplo, el cliente 167 puede incluir servicios (no ilustrados) accesibles a partir del terminal distante 105, puede incluir un sistema base (no ilustrado) para sincronizar los elementos del espacio de trabajo con el servidor global 115, etc.
El servidor global 115 incluye un sistema de seguridad 160 para proporcionar solamente a un usuario autorizado un acceso seguro a través de firewalls, a los servicios. El sistema de seguridad 160 puede realizar los servicios de identificación y de autenticación y en consecuencia, puede permitir múltiples niveles de acceso basado en el nivel de identificación y de autenticación. El servidor global 115 incluye, además, un sistema de configuración 155 que telecarga datos de configuración 356 (Figuras 3 y 6) al terminal distante 105 para configurar los componentes del terminal distante 105 tales como el sistema operativo 270 (Figura 2), el motor web 283 (Figura 2), el motor de programas de aplicación applets 290 (Figura 2), etc. El sistema de configuración 155 utiliza los datos de configuración 356 para permitir al terminal distante 105 acceder a los servicios proporcionados por el motor de servicio 175 y para proporcionar una interfaz de usuario específica del servicio y del usuario.
El servidor global 115 memoriza datos del espacio de trabajo 163, que incluyen una copia independientemente modificable de cada elemento del espacio de trabajo seleccionado en las partes seleccionadas de los datos del espacio de trabajo 180. En consecuencia, los datos del espacio de trabajo 163 incluyen una copia independientemente modificable de cada información de versión correspondiente 782 (Figura 7). Los datos del espacio de trabajo 163 pueden incluir también elementos del espacio de trabajo que se originan en el servidor global 115, tales como correos electrónicos enviados directamente al servidor global 115 o elementos del espacio de trabajo que se telecargan desde otro cliente (no ilustrado).
El servidor global 115 mantiene los datos del espacio de trabajo 163 en un formato, referido como un “formato global”, que se selecciona para ser fácilmente convertible por el traductor global 150 a y desde el formato A y a y desde el formato B. Tanto con el formato A como con el formato B, un experto en esta técnica conoce que el formato global incluye realmente un formato global para cada tipo de información. Por ejemplo, puede existir un formato global para los distintivos (Figura 5), un formato global para ficheros, un formato global para datos de agendas de trabajo, un formato global para correos electrónicos, etc.
El servidor global 115 incluye, además, un agente de sincronización 145 para examinar los elementos del espacio de trabajo de los datos del espacio de trabajo 163. Más concretamente, el sistema base 170 y el agente de sincronización 145, colectivamente referidos en esta descripción como “medios de sincronización”, cooperan para sincronizar los datos del espacio de trabajo 163 con las partes seleccionadas de los datos del espacio de trabajo 180. Los medios de sincronización pueden sincronizar individualmente elementos del espacio de trabajo (p.e., documentos de procesadores de textos específicos) o pueden sincronizar carpetas de elementos del espacio de trabajo (p.e., una carpeta de distintivos). En general, el sistema base 170 gestiona las partes seleccionadas de los datos del espacio de trabajo 180 dentro de la red LAN 125 y el agente de sincronización 145 gestiona las partes seleccionadas de datos del espacio de trabajo 163 dentro del servidor global 115.
Se apreciará que el traductor global 150 coopera con los medios de sincronización para la conversión entre el formato A (o el formato B) y el formato global. Se apreciará, además, que el servidor global 115 puede sincronizar los datos del espacio de trabajo 163 con los datos del espacio de trabajo 180 y con los datos del espacio de trabajo (no ilustrados) sobre el cliente 167. En consecuencia, los datos del espacio de trabajo 163 se pueden sincronizar fácilmente con los datos del espacio de trabajo (no ilustrados) sobre el cliente 167.
El terminal distante 105 incluye un motor web 140, que envía demandas al servidor global 115 y recibe información para visualizar desde el servidor global 115. El motor web 140 puede utilizar el Protocolo de Transferencia Hipertexto (HTTP) y el Lenguaje de Marcas de Hipertexto (HTML) para establecer una interfaz con el servidor global 115. El motor web 140 puede estar habilitado para la ejecución de programas de aplicación applets que, cuando se ejecutan, actúan como la interfaz de seguridad para proporcionar acceso al servidor global 115 y que funcionan como la interfaz de aplicación con el servicio solicitado. Utilizando la presente invención, un usuario puede actuar con cualquier cliente distante 105 conectado a la red de Internet para acceder al servidor global 115 y de este modo, acceder a los servicios y a los datos del espacio de trabajo sobre, o accesibles por, el servidor global 115.
La Figura 2 es un diagrama de bloques que ilustra detalles del terminal distante 105, que incluye una Unidad Central de Proceso (CPU) 210 tal como un Microprocesador de Motorola Power PC” o un microprocesador de Intel PentiumTM. Un dispositivo de entrada 220, tal como un teclado y ratón, y un dispositivo de salida 230 tal como un monitor de Tubo de Rayos Catódicos (CRT) están acoplados a través de un bus de señales 235 a la unidad CPU 210. Una interfaz de comunicación 240, un dispositivo de memorización de datos 250, tal como una Memoria de Solo Lectura (ROM) y un disco magnético y una Memoria de Acceso Aleatorio (RAM) 260 están acoplados, además, a través del bus de señales 235 a la unidad CPU 210. La interfaz de comunicación 240 está acoplada a un canal de comunicación 110 según se ilustra en la Figura 1.
Un sistema operativo 270 incluye un programa para controlar el procesamiento por la unidad CPU 210 y se suele memorizar en un dispositivo de memorización de datos 250 y cargarse en una memoria RAM 260 (según se ilustra) para su ejecución. El sistema operativo 270 incluye, además, un motor de comunicación 275 para generar y transmitir paquetes de mensajes a través de la interfaz de comunicación 240 a y desde el canal de comunicación 110. El sistema operativo 270 incluye, además, un módulo de configuración de sistema operativo (OS) 278, que configura el sistema operativo 270 basado en datos de configuración de OS 356 (Figura 3) tal como datos del Protocolo de Control de Transmisión (TCP), direcciones del Servidor de Nombres de Dominios (DNS) recibidos desde el servidor global 115.
El sistema operativo 270 incluye, además, el motor web 140 para la comunicación con el servidor global 115. El motor web 140 puede incluir un módulo de configuración de motor web (WE) 286 para configurar elementos del motor web 140, tales como direcciones de páginas de inicio, distintivos, datos de memorización, preferencias de usuarios, etc., basados en los datos de configuración 356 recibidos desde el servidor global 115. El motor web 140 puede incluir, además, un motor de encriptación 283 para utilizar técnicas de encriptación para comunicarse con el servidor global 115. El motor web 140 puede incluir, además, un motor de programa de aplicación applets 290 para gestionar la ejecución de programas de aplicación telecargados incluyendo applets para proporcionar mayor seguridad. El motor de programa de aplicación applets 290 puede incluir un modo de configuración de motor Apple (AE) 295 para configurar los elementos del motor de applets 290 basado en los datos de configuración 356 recibidos desde el servidor global 115.
La Figura 3 es un diagrama de bloques que ilustra el detalle del servidor global 115, que incluye una Unidad Central de Procesos (CPU) 310, tal como un microprocesador de Motorola Power PCTM o un microprocesador de Intel PentiumTM. Un dispositivo de entrada 320, tal como un teclado y ratón, y un dispositivo de salida 330, tal como un monitor de Tubo de Rayos Catódicos (CRT) están acoplados a través de un bus de señales 335 a la unidad CPU 310. Una interfaz de comunicación 340, un dispositivo de memorización de datos 350 tal como una memoria de solo lectura (ROM) y un disco magnético y una memoria de acceso aleatorio (RAM) 370 están acoplados, además, a través del bus de señales 335 a la unidad CPU 310. Según se ilustra en la Figura 1, la interfaz de comunicación 340 está acoplada al canal de comunicación 110 y al canal de comunicación 120.
Un sistema operativo 380 incluye un programa para controlar el procesamiento por la unidad CPU 310 y se suele memorizar en el dispositivo de memorización de datos 350 y cargarse en la memoria RAM 370 (según se ilustra) para su ejecución. El sistema operativo 380 comprende, además, un motor de comunicación 382 para generar y transferir paquetes de mensajes a través de la interfaz de comunicación 340 a y desde el canal de comunicación 345. El sistema operativo 380 incluye también un motor de páginas web 398 para transmitir datos de páginas web 368 al terminal distante 105, de modo que el terminal distante 105 pueda visualizar una funcionalidad de listado de páginas web 900 (Figura 9) que se ofrece por el servidor global 115. Otros datos de páginas web 368 pueden incluir información para visualizar selecciones del método de seguridad.
El sistema operativo 380 puede incluir un motor de concentrador de applets 395 para transmitir applets al terminal distante 105. Un motor de configuración 389 funciona en conjunción con el motor de concentrador de applets 395 para transmitir applets de configuración 359 y datos de usuarios y configuración 356 al terminal distante 105. El terminal distante 105 ejecuta los applets de configuración 359 y utiliza los datos de usuario y de configuración 356 para configurar los elementos (p.e., el sistema operativo 270, el motor web 140 y el motor de applets 290) del terminal distante 105. Los datos de usuario y de configuración 356 se describen con mayor detalle haciendo referencia a la Figura 6.
El sistema operativo 380 incluye también el agente de sincronización 145 descrito con referencia a la Figura 1. El agente de sincronización 145 sincroniza los datos del espacio de trabajo 163 sobre el servidor global 115 con los datos del espacio de trabajo 180 sobre el cliente 165. Según se indicó anteriormente con referencia a la Figura 1, el traductor global 150 efectúa la conversión entre el formato A utilizado por el cliente 165 y el formato global utilizado por el servidor global 115.
El sistema operativo 380 puede incluir también un motor de seguridad 392 para determinar si dar instrucciones a un motor de comunicación 382 para crear un enlace de comunicación seguro con un cliente 165 o un terminal 105 para determinar los derechos de acceso del usuario. Por ejemplo, el motor de seguridad 392 envía al cliente 165 o al terminal distante 105 los applets de seguridad 362 que, cuando se ejecutan por el receptor, interroga al usuario y dan la respuesta correspondiente al servidor global 115. El servidor global 115 puede examinar la respuesta para identificar y realizar la autenticación del usuario.
Por ejemplo, cuando un cliente 165 intenta acceder al servidor global 115, el motor de seguridad 384 determina si el servidor global 115 acepta las comunicaciones hacia el interior desde un puerto particular. Si es así, el motor de seguridad 392 permite al motor de comunicación 382 abrir un canal de comunicación 345 para el cliente 165. De no ser así, no se abrirá ningún canal. Una vez abierto un canal, el motor de seguridad 392 envía un applets de seguridad de autenticación 362 al terminal distante 105 para consultar al usuario con respecto a la información de identificación y autenticación tal como un administrador ID de usuario y una contraseña. El applets de seguridad de autenticación 362 generará y enviará una respuesta de nuevo al servidor global 115, que utilizará la información para verificar la identidad del usuario y proporcionar acceso en consecuencia.
Se apreciará que un “motor para servicios demandados” puede ser el motor de configuración 389 y el motor de concentrador de applets 395 cuando se proporcionan servicios a un terminal distante 105 o al cliente 165. El motor para servicios demandados puede ser el motor de páginas web 398 cuando se realizan operaciones de recuperación de datos del espacio de trabajo 163 directamente desde el servidor global 115. El motor para servicios demandados puede ser el motor de configuración 389 y el motor de concentrador de applets 395 cuando se realizan operaciones de recuperación de datos del espacio de trabajo 180 desde el cliente 165 o desde cualquier otro sitio conectado al servidor global 115. El motor para servicios demandados puede ser un motor de seguridad 392 cuando se realizan servicios de seguridad, tales como una identificación y autenticación del usuario. El motor para servicios demandados puede ser el agente de sincronización cuando se realiza la sincronización con el cliente 165. Además, el motor para servicios demandados puede ser cualquier combinación de estos componentes.
La Figura 4 es un diagrama de bloques que ilustra detalles del agente de sincronización 145, que incluye un módulo de comunicación 405 y un módulo de sincronización general 410. El módulo de comunicación 405 incluye rutinas para comprimir datos y rutinas para la comunicación a través del canal de comunicación 120 con el sistema base 170. El módulo de comunicación 405 puede incluir, además, rutinas para comunicarse en un canal seguro a través del firewall global 130 y a través del firewall LAN 125.
El módulo de sincronización general 410 incluye rutinas para determinar si se han sincronizado, o no, los elementos del espacio de trabajo y rutinas para envío al sistema base 170 de información de versión (no ilustrada) de elementos
determinados para modificarse después de la última sincronización. El módulo de sincronización general 410 puede mantener su propia última signatura de sincronización (no ilustrada), recibir una copia de la signatura de sincronización con la demanda de sincronizar desde el sistema base 170 o cualquier otro medio para garantizar que se hayan sincronizado los datos del espacio de trabajo. El módulo de sincronización global 410 incluye, además, rutinas para recibir versiones preferidas de elementos de espacio de trabajo en datos de espacio de trabajo 180, desde el sistema base 170 y rutinas para el envío de versiones preferidas de elementos de espacio de trabajo en datos de espacio de trabajo 180 al sistema base 170.
La Figura 5 ilustra un elemento del espacio de trabajo de distintivos ejemplo en el formato global. El traductor 150 incorpora toda la información necesaria para la conversión entre todos los formatos incorporados. Por ejemplo, si para un primer cliente, un distintivo en el formato A necesita elementos X, Y y Z y para un segundo cliente un distintivo en el formato B necesita los elementos W, X e Y, el traductor global 150 incorpora elementos W, X, Y y Z para generar un distintivo en el formato global. Además, el traductor 150 incorpora la información que se necesita por los medios de sincronización (según se describe más adelante en la Figura 4) tales como la última fecha modificada. En consecuencia, un distintivo en el formato global puede incluir una identificación de usuario (ID) 505, un identificador ID de entrada 510, un identificador ID matriz 515, un identificador de ID de carpeta 520, un nombre 525, una descripción 530, el localizador de recursos uniformes (URL) 535, la posición 540, un indicador de ID suprimido 545, una última fecha modificada 550, una fecha creada 555 y un indicador de ID de separación 560.
La Figura 6 es un diagrama de bloques que ilustra detalles de los datos de usuarios y de configuración 356. Los datos de configuración 356 incluyen ajustes operativos 605 tales como datos de TCP y la dirección de DNS, ajustes operativos del explorador de la web, tales como dirección de páginas de inicio, distintivos y datos de memorización, ajustes operativos del motor de applets y fecha de configuración de applets tal como la dirección de correo electrónico del usuario, nombre y frecuencia de reloj de signatura. Se apreciará que se necesitan datos de usuarios y de configuración 356 específicos de applets, puesto que el servicio puede no estar situado en el propio cliente local del usuario 165. Los datos de usuario y de configuración 356 incluyen, además, preferencias de usuarios predeterminadas 610 tales como tipo de impresión, tamaño de ventana, tamaño de texto, etc.
Los datos de configuración 356 incluyen, además, el conjunto de servicios 615, que se proporcionará al usuario. Los servicios 615 incluyen una lista de usuarios registrados y la lista de cada usuario de servicios disponibles preferidos por el usuario 615. Los servicios pueden incluir, además, una lista de niveles de autenticación que se necesitan para acceder a los servicios 615. Los datos de usuario y de configuración 137 incluyen, además, direcciones de servicio 620 que especifican la localización de cada uno de los servicios 615 accesibles a través del servidor global 115.
La Figura 7 es un diagrama de bloques que ilustra detalles del cliente 165, que incluyen una unidad CPU 705, un dispositivo de entrada 710, un dispositivo de salida 725, una interfaz de comunicación 710, un dispositivo de memorización de datos 720 y una memoria RAM 730, cada uno de ellos acoplado a un bus de señalización 740.
Un sistema operativo 735 incluye un programa para controlar el procesamiento por la unidad CPU 705 y se suele memorizar en el dispositivo de memorización de datos 720 y cargarse en la memoria RAM 730 (según se ilustra) para su ejecución. Un motor de servicio 175 incluye un programa de servicio para gestionar los datos del espacio de trabajo 180 que incluyen información de la versión (no ilustrada). El motor de servicio 175 puede memorizarse, además, en el dispositivo de memorización de datos 720 y cargarse en la memoria RAM 730 (según se ilustra) para su ejecución. Los datos del espacio de trabajo 180 se pueden memorizar en el dispositivo de memorización de datos 330. Según se indicó anteriormente con referencia a la Figura 1, el sistema base 170 funciona para sincronizar los datos del espacio de trabajo 180 sobre el cliente 165 con los datos del espacio de trabajo 163 sobre el servidor global 115. El sistema base 170 se puede memorizar también en el dispositivo de memorización de datos 720 y cargarse en la memoria RAM 730 (según se ilustra) para su ejecución. El sistema base 170 se describe con mayor detalle haciendo referencia a la Figura 8.
La Figura 8 es un diagrama de bloques que ilustra detalles del sistema base 170, que incluye un módulo de comunicación 805, un módulo de interfaz de usuario 810, módulos localizadores 815, un módulo de inicio de sincronización (“synch-start”) 820, un módulo de sincronización general 825 y un módulo de sincronización basada en contenidos 830. Para mayor simplicidad, cada módulo se ilustra como en comunicación entre sí a través de un bus de señales 840. Se apreciará que el sistema base 170 incluye los mismos componentes incluidos en el agente de sincronización 145.
El módulo de comunicación 805 incluye rutinas para comprimir datos y rutinas para comunicarse a través de la interfaz de comunicación 710 (Figura 7) con el agente de sincronización 145 (Figura 1). El módulo de comunicación 805 puede incluir rutinas para aplicar la tecnología de Capa de Conexión Segura (SSL) y técnicas de identificación y autenticación del usuario (esto es, certificados digitales) para establecer un canal de comunicación segura a través del sistema de LAN firewall 135 y a través del global firewall 130. Puesto que la sincronización se inicia desde dentro del LAN firewall 135 y utiliza protocolos de frecuente habilitación tales como el Protocolo de Transferencia de Hipertexto (HTTP), el firewall típico 135 que impide las comunicaciones hacia el interior en general y algunos protocolos de salida no actúan como un impedimento para la sincronización de correos electrónicos. Ejemplos de módulos de comunicación 805 pueden incluir pilas de TCP/IP o el protocolo de AppleTalkTM.
La interfaz de usuario 810 incluye rutinas para la comunicación con un usuario y pueden incluir una interfaz de usuario gráfica (GUI) convencional. La interfaz de usuario 810 opera en coordinación con los componentes del cliente 165 según aquí se describe.
Los módulos localizadores 815 incluyen rutinas para identificar las posiciones de memoria de los elementos del espacio de trabajo en los datos del espacio de trabajo 180 y las posiciones de memoria de los elementos del espacio de trabajo en los datos del espacio de trabajo 163. La identificación de posiciones de memoria de elementos del espacio de trabajo se puede realizar utilizando un software inteligente, esto es, direcciones de memorias preestablecidas o el dispositivo de registro del sistema o utilizando cuadros de diálogo para la consulta de un usuario. Se apreciará que los módulos localizadores 815 pueden realizar la identificación de la posición de memoria del elemento del espacio de trabajo en la iniciación operativa del sistema o después de cada comunicación con el servidor global 115 para mantener posiciones de memoria actualizadas de los elementos del espacio de trabajo.
El módulo de inicio de sincronización 820 incluye rutinas para determinar cuándo iniciar la sincronización de datos del espacio de trabajo 163 y datos del espacio de trabajo 180. Por ejemplo, el módulo de inicio de sincronización 820 puede iniciar la sincronización de datos a petición del usuario, en una hora particular del día, después transcurrir un periodo de tiempo predeterminado, después de un número de cambio predeterminado, después de una acción del usuario tal como una registro de salida del usuario o con criterios similares. El módulo de inicio de sincronización 820 inicia la sincronización de datos dando instrucciones al módulo de sincronización general 825 para iniciar la ejecución de sus rutinas. Se apreciará que las comunicaciones con el agente de sincronización 145 se inician preferentemente desde dentro de la red LAN 125, porque el LAN firewall 125 típico impide las comunicaciones entrantes y permite las comunicaciones salientes.
El módulo de sincronización general 825 incluye rutinas para demandar información de versión desde el agente de sincronización 145 (Figura 1) y rutinas para comparar la información de versión con respecto a una última signatura de sincronización 835 tal como una última fecha de sincronización y tiempo para determinar qué versiones han sido modificadas. El módulo de sincronización general 825 incluye, además, rutinas para comparar las versiones locales y remotas para determinar si solamente una o ambas versiones de un elemento del espacio de trabajo particular han sido modificadas y rutinas para realizar una acción de respuesta de sincronización adecuada. Las acciones de respuesta de sincronización adecuadas pueden incluir el envío de la versión modificada (como la versión preferida) de un elemento del espacio de trabajo en datos del espacio de trabajo 180 o enviar solamente una compilación de los cambios a los otros dispositivos de memorización. Otras acciones de respuesta de sincronización adecuadas pueden incluir, si se necesita una reconciliación entre dos versiones modificadas, dar instrucciones luego al módulo de sincronización basada en contenidos 830 para ejecutar sus rutinas (descritas a continuación).
Se apreciará que el agente de sincronización 145 examina preferentemente la información de versión local 124 y envía solamente los elementos que han sido modificados desde la última signatura de sincronización 835. Esta técnica hace uso eficiente de la potencia del procesador y evita la transmisión de datos innecesarios a través del canal de comunicación 712. El módulo de sincronización general 825 en la red LAN 135 compara, consecuentemente, los elementos de datos para determinar si se necesita una reconciliación. A la terminación de la sincronización de datos, el módulo de sincronización general 825 actualiza la última signatura de sincronización 835.
El módulo de sincronización basada en contenidos 830 incluye rutinas para reconciliar dos o más versiones modificadas de datos del espacio de trabajo 163, 180 en el mismo elemento del espacio de trabajo. Por ejemplo, si el original y la copia de un elemento del espacio de trabajo de usuario han sido ambos modificados independientemente desde la última sincronización, el módulo de sincronización basada en contenidos 830 determina la acción de respuesta adecuada. El módulo de sincronización basada en contenidos 830 puede solicitar a un usuario seleccionar una versión preferida de las versiones modificadas o puede responder basándose en preferencias preestablecidas, esto es, memorizando ambas versiones en ambos dispositivos de memorización o integrando los cambios en una versión preferida única que sustituye a cada versión modificada en ambos dispositivos de memorización. Cuando ambas versiones se memorizan en ambos dispositivos de memorización, cada versión puede incluir un enlace a la otra versión, de modo que el usuario pueda ser advertido para seleccionar la versión preferida.
Se apreciará que cualquier cliente 165, que desee una sincronización, puede tener un sistema base 170. Como alternativa, un sistema base 170 puede gestionar múltiples clientes 165. Se apreciará, además, que para un cliente de pequeña magnitud 165 de potencia informática limitada, tal como un teléfono inteligente, toda la sincronización se puede realizar por el servidor global 115. En consecuencia, componentes del sistema base 170 tales como el módulo de interfaz de usuario 810, los módulos localizadores 815, el módulo de sincronización general 825 y el módulo de sincronización basada en contenidos 830 pueden estar situado en el servidor global 115. Para iniciar la sincronización desde el cliente 165, el cliente 165 incluye el módulo de comunicación 805 y el módulo de inicio de sincronización 820.
La Figura 9 ilustra una lista ejemplo 900 de servicios accesibles proporcionados por la página web basada en el Lenguaje de Marcas de Hipertexto (HTML) direccionable por URL, según se mantiene por el motor de página web 398 del servidor global 115. La lista 900 incluye un título 910 “página de inicio de usuario distante”, un listado de los servicios proporcionados 615 y un puntero 970 para seleccionar uno de los servicios proporcionados 615. Según se ilustras, los servicios proporcionados pueden incluir un servicio de correo electrónico 920, un servicio de agenda de trabajo 930, un
servicio de acceso a Internet 940, un servicio buscapersonas 950, un servicio de envío de fax 960, un servicio de autenticación de usuario 963 y un servicio de recuperación de datos del espacio de trabajo 967.
Aunque no estén ilustrados, otros servicios 615 tales como creación de distintivos, QuickCardTM, se pueden incluir en la lista 900. Aunque la página web proporciona los servicios 615 en una lista 900, otras estructuras de datos, tales como diagramas sectoriales o tablas se pueden utilizar como alternativa.
La Figura 10 es un diagrama de flujo que ilustra un método 1000 para permitir a un usuario acceder a los servicios 615 en el sistema de la red informática 100. El método 1000 se inicia por el terminal distante 105 en la etapa 1005 creando un enlace de comunicación con el servidor global 115. El servidor global 115 en la etapa 1010 confirma que el usuario tiene privilegios para acceder a la funcionalidad del servidor global 115. La confirmación de los privilegios de acceso del usuario pueden incluir el examen de un certificado de usuario, la obtención de una contraseña secreta, la utilización de la tecnología de signaturas digitales, la realización de una técnica de dificultad operativa/respuesta, etc. Se apreciará que el motor de seguridad 392 puede hacer que el motor de concentrador de applets 395 envíe, a través del canal de comunicación 345, al terminal distante 105 un applets de seguridad de autenticación 362 que, cuando se ejecute, se comunica con el servidor global 115 para realizar la autenticación del usuario.
Después de que se confirmen los privilegios de acceso del usuario, el motor de página web 398 del servidor global 115, en la etapa 1015, transmite datos de páginas web 368 y datos de usuario y de configuración 356 al terminal distante 105. El motor web 140 del terminal distante 105, en la etapa 1020, utiliza los datos de páginas web 368 y los datos de usuarios y de configuración 356 para visualizar una lista de servicios de páginas web 900 (Figura 9) en el dispositivo de salida 230 y para permitir el acceso a los servicios 615 que ofrece el servidor global 115.
Una lista de servicios ejemplo 900 se ilustra y se incorpora con referencia a la Figura 9.
A partir de las opciones listadas en la página web 900, el usuario, en la etapa 1025, selecciona un servicio 615 por intermedio del dispositivo de entrada 220. En respuesta, el motor para servicios demandados (descrito con referencia a la Figura 3) proporciona el servicio seleccionado 615. Por ejemplo, el motor de concentrador de applets 395 del servidor global 115, en la etapa 1030, puede telecargar, al terminal distante 105, un applets correspondiente 359 y datos de usuarios y de configuración 356 para ejecutar el servicio demandado 615. Como alternativa, el motor de páginas web 398 puede utilizar, por ejemplo, HTTP y HTML para proporcionar el servicio seleccionado 615. Según se describió anteriormente con referencia a la Figura 6, los datos de usuarios y de configuración 356 pueden incluir preferencias específicas del usuario, tales como fuentes de impresión, preferidas por el usuario, para configurar el servicio seleccionado 615. Los datos de usuarios y de configuración 356 pueden incluir también información específica del usuario e información específica del servicio, tal como distintivos, datos de la agenda de trabajo, números de páginas de búsquedas, etc., que han sido memorizados. Como alternativa, el applets correspondiente 359 y los datos de usuarios y de configuración 356 podrían haberse telecargado en la etapa 1015.
La acción de proporcionar acceso al servicio por un applets 359 se describe con mayor detalle a continuación haciendo referencia a las Figuras 12-14.
El motor de applets 290 del terminal distante 105, en la etapa 1035, inicia la ejecución del programa applets telecargado correspondiente. El servidor global 115, en la etapa 1040, inicia el servicio seleccionado 615 y en la etapa 1045, selecciona uno de entre tres modos descritos con referencia a las Figuras 12-14 para acceder al servicio 615. Por ejemplo, si el usuario selecciona un servicio 615 en un servidor de servicios (p.e., el cliente 165) que no está protegido por un firewall separado, entonces el servidor global 115 puede proporcionar al usuario un acceso directo. Si el usuario selecciona un servicio 615 proporcionado por un servicio de servicio dentro de la red LAN 125, entonces el servidor global 115 puede acceder al servicio 615 como un mandatario para el usuario. Se apreciará que cada firewall 130 y 135 puede memorizar reglas que establezcan el modo adecuado de acceso que debe seleccionarse para el servidor global
115. Otros factores para seleccionar el modo de acceso pueden incluir la preferencia del usuario, la disponibilidad y la viabilidad. El servidor global 115, en la etapa 1050, utiliza el modo seleccionado para proporcionar al usuario del terminal distante 105 acceso al servicio seleccionado 615.
La Figura 11 es un diagrama de flujo que ilustra detalles de la etapa 1005, que se inicia por el terminal distante 105, en la etapa 1105, utilizando un localizador de recursos uniformes (URL) para la llamada al servidor global 115. El servidor global 115 y el terminal distante 105, en la etapa 1107, crean un canal de comunicación segura entre ellos, posiblemente aplicando la tecnología de Capa de Conexión Segura (SSL). Es decir, el motor de seguridad 392 del servidor global 115, en la etapa 1110, determina si se permiten las comunicaciones seguras entrantes y si es así, crea un canal de comunicación con el terminal distante 105. El motor web 140 del terminal distante 105 y el motor de seguridad 392 del servidor global 115, en la etapa 1115, negocian los parámetros del canal de comunicación segura, posiblemente utilizando certificados de claves públicas. Un canal de comunicación segura ejemplo es el RSA con la encriptación de RC4. De este modo, la etapa 1115 puede incluir la selección de un protocolo de encriptación que es conocido por el servidor global 115 y el terminal distante 105. El motor de encriptación 283 del terminal distante 105 y el motor de comunicación segura 392 del servidor global 115, en la etapa 1120, utilizan los parámetros de canales seguros para crear el canal de comunicación segura. El método 505 finaliza en este momento.
La Figura 12 es un diagrama de flujo que ilustra detalles de la etapa 1050 en una primera forma de realización, referida como etapa 1050a, en donde el servidor global 115 proporciona al terminal distante 105 una conexión directa a un servicio 615. La etapa 1050a se inicia por el motor de applets 290, en la etapa 1205, ejecutando un programa applets de configuración 359 para el servicio seleccionado 615 que recupera la dirección de servicio 620 desde el dispositivo de memorización de datos 380 y la información de autenticación desde el sistema de seguridad de claves keysafe 365. La interfaz de comunicación 240, en la etapa 1210, crea una conexión directa y segura con la interfaz de comunicación 340 del servidor global 115 en la dirección de servicio recuperada 620 y utiliza la información de autenticación para su propia autenticación. El programa applets, en la etapa 1215, actúa como la interfaz de entrada/ salida (I/O) con el servicio 615. A continuación, finaliza la etapa 1050a.
La Figura 13 es un diagrama de flujo que ilustra detalles de la etapa 1050 en una segunda forma de realización, referida como etapa 1050b, en donde el servidor global 115 actúa para el terminal distante 105 como un mandatario para el servicio 615. La etapa 1050b se inicia con un programa applets de configuración 359, en la etapa 1305, que solicita la dirección de servicio 620 para el servicio seleccionado 615, lo que da lugar a la recuperación de la dirección de servicio 620 dirigiendo el applets 359 al servidor global 115. El applets 359, en la etapa 1310, crea una conexión con la interfaz de comunicación 340 del servidor global 115. El servidor global 115, en la etapa 1315, recupera la dirección de servicio 620 del servicio seleccionado 615 y la información de autenticación IOI para el servicio seleccionado 615 desde la seguridad de teclas keysafe 365. La interfaz de comunicación 340 del servidor global 115, en la etapa 1320, negocia los parámetros de canales seguros para crear un canal seguro con el servidor de servicios. La interfaz de comunicación 340, en la etapa 1320, efectúa también su propia autenticación como el usuario.
En adelante, el applets 359, en la etapa 1325, actúa como la interfaz de entrada/salida (I/O) con la interfaz de comunicación 340 del servidor global 115. Si el servidor global 115, en la etapa 1330, determina que no está autorizado para realizar una demanda de usuario del terminal distante 105, entonces el servidor global 115, en la etapa 1345, determina si finaliza, o no, el método 1050b, p.e., si el usuario ha abandonado o no. Si es así, entonces finaliza el método 1050b. De no ser así, el método 1050b retorna a la etapa 1325 para obtener otra demanda. Si el servidor global 115, en la etapa 1330, determina que está autorizado para realizar la demanda de usuario del terminal distante 105, entonces el servidor global 115, en la etapa 1340, actúa como el mandatario para el terminal distante 105 para el servicio 615. Como mandatario, el servidor global 115 envía la demanda de servicio al servicio seleccionado 615 y reenvía respuesta al programa applets demandante 359 que se ejecuta actualmente en el terminal distante 105. El método 1050b pasa luego a la etapa 1345.
La Figura 14 es un diagrama de flujo que ilustra detalles de la etapa 1050 en una tercera forma de realización, referida como etapa 1050c, en donde el servicio 615 que se solicita está situado en el servidor global 115. La etapa 1050 se inicias con un programa applets en la etapa 1405 que recupera la dirección de servicio 620 para el servicio seleccionado 615, que da lugar a proporcionar el programa applets de configuración 359 con la dirección de servicio 620 del servicio 615 en el servidor global 115. De este modo, el programa applets en la etapa 1410 crea una conexión segura con el servidor global 115. No se necesita ninguna etapa adicional de identificación y de autenticación puesto que el terminal distante 105 ha identificado y autenticado ya, por sí mismo, al servidor global 115 según se describe con referencia a la etapa 1010 representada en la Figura 10.
En la etapa 1415, se realiza una determinación de si el servicio 615 se está ejecutando actualmente, o no. Si es así, a continuación, en la etapa 1425, se realiza una determinación de si el servicio 615 puede gestionar, o no, múltiples usuarios. Si es así, entonces el servidor global 115, en la etapa 1430, crea una instancia para el usuario y el programa applets en la etapa 1440 actúa como la interfaz de entrada/salida (I/O) con el servicio 615 en el servidor global 115. A continuación, finaliza el método 1050c. De no ser así, si el servicio 615, en la etapa 1425, determina que no puede gestionar múltiples usuarios, entonces el método 1050c prosigue con la etapa 1440. Además, si en la etapa 1415, el servidor global 115 determina que el servicio 615 no se está ejecutando actualmente, entonces el servidor global 115, en la etapa 1420, inicializa el servicio 615 y prosigue con la etapa 1425.
La Figura 15 es un diagrama de flujo que ilustra un método 1500 para utilizar un traductor global 150 para sincronizar los datos del espacio de trabajo 163 y los datos del espacio de trabajo 180 en una red segura 100. El método 1500 se inicia con la interfaz de usuario 900, en la etapa 1505, que permite a un usuario seleccionar elementos del espacio de trabajo de datos del espacio de trabajo 163 y datos del espacio de trabajo 180 para la sincronización de los medios de sincronización. Los módulos localizadores 815, en la etapa 1510, identifican las posiciones de memoria de los elementos del espacio de trabajo en datos del espacio de trabajo 163 y datos del espacio de trabajo 180. Si un elemento del espacio de trabajo seleccionado no tiene una posición de memoria correspondiente, tal como en el caso de añadir nuevos elementos del espacio de trabajo al servidor global 115, entonces se selecciona una de ellas. La posición de memoria seleccionada puede ser un elemento del espacio de trabajo preexistente o un nuevo elemento del espacio de trabajo. Según se indicó anteriormente, la identificación de la posición de memoria del elemento del espacio de trabajo se puede realizar utilizando software inteligente o cuadros de diálogo. El módulo de sincronización general 825, en la etapa 1515, establece el estado anterior de los elementos del espacio de trabajo igual al conjunto nulo, lo que indica que se ha añadido toda la información del elemento del espacio de trabajo.
El módulo de inicio de la sincronización 820, en la etapa 1520, determina si se han cumplido, o no, criterios predeterminados que indican que debe iniciarse la sincronización de los elementos del espacio de trabajo seleccionados
en la etapa 1505. Si no es así, entonces el módulo de inicio de sincronización 820, en la etapa 1525, permanece a la espera y realiza un bucle de retorno a la etapa 1520.
De no ser así, el módulo de comunicación 805 y el módulo de comunicación 405, en la etapa 1530, establecen un canal de comunicación segura entre ellos.
El módulo de sincronización general 825, en la etapa 1535, determina si se han modificado, o no, cualesquiera elementos del espacio de trabajo. Es decir, el módulo de sincronización general 825, en la etapa 1535, examina la información de versión de cada elemento del espacio de trabajo seleccionado en los datos del espacio de trabajo 180 con respecto a la última signatura de sincronización 435 para localizar los elementos del espacio de trabajo modificados. Esta comparación puede incluir la comparación de la fecha de la última modificación con la fecha de la última sincronización o puede incluir una comparación entre el estado actual y el estado anterior en el momento de la última interacción. De forma similar, el módulo de sincronización general 815 examina la información de versión de cada elemento del espacio de trabajo correspondiente en datos del espacio de trabajo 163 y la última signatura de sincronización 435 para localizar los elementos del espacio de trabajo modificados.
Si, en la etapa 1535, no se localizan elementos del espacio de trabajo modificados o sus carpetas, entonces el módulo de sincronización general 825, en la etapa 1560, actualiza la última signatura de sincronización 435 y finaliza el método 1500. De no ser así, el módulo de sincronización general 825, en la etapa 1540, determina si se ha modificado más de una versión de un elemento de espacio de trabajo desde la última sincronización.
Si solamente se ha modificado una versión, entonces el módulo de sincronización general 825 correspondiente, en la etapa 1545, determina los cambios realizados. Según se indicó anteriormente, la determinación de los cambios realizados se puede efectuar comparando el estado actual del elemento del espacio de trabajo con respecto al estado anterior del elemento del espacio de trabajo en el momento de la última interacción entre ellos. Si se realizaron los cambios solamente para la versión en los datos del espacio de trabajo 163, entonces el traductor global 150, en la etapa 1550, convierte los cambios al formato utilizado por el otro dispositivo de memorización y el módulo de sincronización general 410, en la etapa 1555, envía los cambios convertidos al módulo de sincronización general 825 para actualizar el elemento del espacio de trabajo obsoleto en los datos del espacio de trabajo 180. Si la versión actualizada es un elemento del espacio de trabajo en los datos del espacio de trabajo 180, entonces el módulo de sincronización general 825 envía los cambios, a la versión actualizada, hacia el traductor global 150 para su conversión y luego, al módulo de sincronización general 410 para actualizar el elemento del espacio de trabajo obsoleto en los datos del espacio de trabajo 163. El módulo de sincronización general 825 y el módulo de sincronización general 410, en la etapa 1557, actualizan el estado anterior del elemento del espacio de trabajo para reflejar el estado actual en el momento de esta interacción. El método 1500 retorna luego a la etapa 1535.
Si el módulo de sincronización general 825, en la etapa 1540, determina que se han modificado múltiples versiones, entonces el módulo de sincronización general 825, en la etapa 1565, calcula los cambios para cada versión y en la etapa 1570, da instrucciones al módulo de sincronización basada en contenidos 830 para examinar el contenido con el fin de determinar si existe cualquier conflicto operativo. Por ejemplo, el módulo de sincronización basada en contenidos 830 puede determinar que existe un conflicto operativo si un usuario borra un párrafo en una versión y modificó el mismo párrafo en otra versión. El módulo de sincronización basada en contenidos 830 puede determinar que no existe un conflicto operativo si un usuario borra diferentes párrafos en cada versión. Si no se encuentra ningún conflicto, entonces el método 1500 pasa a la etapa 1550 para la conversión y envío de los cambios en cada versión al otro dispositivo de memorización. Sin embargo, si se encuentra un conflicto, entonces el módulo de sincronización basada en contenidos 830, en la etapa 1575, reconcilia las versiones modificadas. Según se indicó anteriormente, la reconciliación puede incluir la demanda de instrucciones desde el usuario o basarse en preferencias anteriormente seleccionadas que realizan acciones de respuesta, tales como memorizar ambas versiones en ambos dispositivos de memorización. Se apreciará que un enlace entre dos versiones puede situarse en cada una de las dos versiones, de modo que el usuario reconozca, al examinar ambas versiones, la selección de la versión preferida. El método 1500 prosigue luego con la etapa 1550.
Se apreciará, además, que en la etapa 1510, nuevos elementos del espacio de trabajo y elementos del espacio de trabajo preexistentes a los que se fusionarán nuevos elementos del espacio de trabajo se establecen para “modificarse” y el estado anterior se establece para el conjunto nulo. De este modo, el módulo de sincronización general 825, en la etapa 1540, determinará que más de una versión ha sido modificada y el módulo de sincronización basada en contenidos 830, en la etapa 1570, determinará que no existe un conflicto operativo. Los cambios en cada uno se convertirán y reenviarán al otro dispositivo de memorización. En consecuencia, las dos versiones serán efectivamente fusionadas y memorizadas en cada dispositivo de memorización.
Por ejemplo, si se creó una primera carpeta de distintivos por el motor web 140 sobre el cliente 165, se creó una segunda carpeta por un motor web 140 en el terminal distante 105, no existiendo ninguna carpeta preexistente en el servidor global 115 y el usuario seleccionó cada una de estas carpetas para su sincronización, entonces los medios de sincronización fusionarán efectivamente las primera y segunda carpetas. Es decir, el módulo de sincronización general 825 en el cliente 165 determinará que la primera carpeta ha sido modificada y el estado anterior es igual al conjunto nulo. El módulo de sincronización general 825 determinará y enviará los cambios, esto es, todos los elementos del espacio de trabajo en la primera carpeta, a una nueva carpeta global en el servidor global 115. De forma similar, el módulo de
sincronización general (no ilustrado) en el terminal distante 105 determinará que, en el momento de su última interacción, en el estado anterior de cada una de la segunda y las carpetas globales es el conjunto nulo. El módulo de sincronización general 825 dará instrucciones al módulo de sincronización basada en contenidos 830 para examinar los cambios realizados a cada carpeta para determinar si existe, o no, un conflicto operativo. Si no existiere ningún conflicto, el 5 módulo de sincronización general 825 reenviará los cambios a la carpeta global y el módulo de sincronización general 410 enviará sus cambios al segundo dispositivo de memorización, con lo que se realiza la fusión de los elementos del espacio de trabajo de las primera y segunda carpetas en las carpetas globales y segundas carpetas. El módulo de sincronización general 410 informará al módulo de sincronización general 825 de que la carpeta global ha sido modificada en relación con la última interacción y reenviará los nuevos cambios a la primera carpeta. De este modo, las
10 tercera y segunda carpetas serán objeto de fusión y memorización en cada dispositivo de memorización.
La descripción anterior de la forma de realización preferida de la invención es a modo de ejemplo solamente y se pueden realizar otras variaciones de la forma de realización antes descrita y sus métodos por la presente invención. Por ejemplo, un servidor puede ser cualquier ordenador que sea consultado por un cliente. De este modo, el terminal distante 105
15 puede referirse como un tipo de cliente. Aunque el sistema y método han sido descritos con referencia a programas applets, se pueden utilizar, como alternativa, otros ejecutables telecargables tales como applets de JavaTM, aplicaciones de JavaTM o control de ActiveXTM desarrollados por Microsoft Corporation. Los componentes de esta invención se pueden poner en práctica utilizando un ordenador digital de uso general programado, utilizando circuitos integrados específicos de la aplicación o empleando una red de circuitos y componentes convencionales interconectados.

Claims (15)

  1. REIVINDICACIONES
    1. Un terminal de usuario (105) que comprende:
    5 una interfaz de comunicación (240) diseñada para comunicarse por intermedio de un canal de comunicación Internet (110);
    un motor web (140) configurado para entrar en contacto con un servidor global (115) a través del canal de comunicación Internet utilizando la interfaz de comunicación para recuperar datos de configuración (356), estando el motor web
    10 diseñado para presentar una pluralidad de servicios (615) utilizando los datos de configuración recuperados, identificando la pluralidad de servicios al menos un ejecutable telecargable de acceso de servicio operativo para el acceso a un motor de servicio (175) a partir del terminal de usuario a través del canal de comunicación Internet;
    un dispositivo de presentación visual (230) para presentar la pluralidad de servicios a un usuario del terminal de usuario y
    15 un dispositivo de entrada (220) que permite al usuario seleccionar un servicio a partir de la pluralidad;
    en donde el motor web está configurado para telecargar un ejecutable telecargable de acceso al servicio correspondiente al servicio seleccionado a través del canal de comunicación Internet utilizando la interfaz de comunicación y para ejecutar
    20 el ejecutable telecargable cargado, lo que permite recuperar una dirección de servicio correspondiente al motor de servicio que será utilizado por el terminal de usuario para el acceso a un servicio de recuperación de datos del espacio de trabajo (967) proporcionado por dicho motor de servicio, permitiendo dicho servicio de recuperación de datos del espacio de trabajo la recuperación de un elemento del espacio de trabajo en los datos del espacio de trabajo conservados en un terminal distante del servidor global y correspondiente a la dirección de servicio recuperada.
  2. 2.
    El terminal de usuario según la reivindicación 1, en donde dicho elemento del espacio de trabajo incluye datos del espacio de trabajo de la agenda.
  3. 3.
    El terminal de usuario según la reivindicación 1, en donde el terminal de usuario está configurado utilizando el
    30 ejecutable telecargable de acceso al servicio para acceder al servicio elegido proporcionado por otro motor de servicio a través de Internet.
  4. 4. El terminal de usuario según cualquiera de las reivindicaciones precedentes, en donde el terminal de usuario está
    diseñado para telecargar dicho ejecutable telecargable de acceso al servicio a partir del servidor global. 35
  5. 5.
    El terminal de usuario según una cualquiera de las reivindicaciones precedentes, en donde dicho motor de servicio proporciona un servicio de autenticación del usuario (963).
  6. 6.
    El terminal de usuario según una cualquiera de las reivindicaciones precedentes, en donde la pluralidad de
    40 ejecutables telecargables incluye un subconjunto de ejecutables telecargables disponibles, estando dicho subconjunto basado en la identidad del usuario.
  7. 7. El terminal de usuario según una cualquiera de las reivindicaciones precedentes, en donde el terminal de usuario
    está configurado para recibir respuestas de dicho motor de servicio a través del servidor global que actúa como un proxy, 45 o mandatario, para el terminal de usuario.
  8. 8. El terminal de usuario según una cualquiera de las reivindicaciones 1 a 6, en donde el terminal de usuario está configurado para acceder a dicho motor de servicio recuperando una dirección de servicio del motor de servicio a partir del servidor global.
  9. 9. El terminal de usuario según una cualquiera de las reivindicaciones precedentes, en donde el terminal de usuario está configurado para acceder a dicho motor de servicio enviando demandas de servicio y recibiendo respuestas a dichas demandas de servicio, a través del canal de comunicación Internet.
    55 10. Un método para el suministro de acceso a servicios (615) proporcionado por un motor de servicio (175) a un terminal de usuario (105) por intermedio de un servidor global (115), estando dicho motor de servicio situado en un terminal (165) distante de dicho servidor global y proporcionando dicho motor de servicio un servicio de recuperación de datos del espacio de trabajo (967) lo que permite la recuperación de un elemento del espacio de trabajo en los datos del espacio de trabajo conservados en dicho terminal (165), comprendiendo dicho método, además, la configuración del
    60 terminal de usuario (105) para:
    comunicarse (1005) con el servidor global a través de un canal de comunicación Internet (110) para recuperar (1015) datos de configuración (356) para ofrecer una pluralidad de servicios, identificando la pluralidad de servicios al menos un ejecutable telecargable de acceso al servicio que permite el acceso al motor de servicio a partir de un terminal de usuario
    65 (105) a través del canal de comunicación Internet; presentar (1020) a un usuario la pluralidad de servicios en un dispositivo de presentación visual;
    recibir (1025) una selección de un servicio a partir de la pluralidad y
    5 telecargar (1030) un ejecutable telecargable de acceso al servicio correspondiente al servicio elegido a través de Internet en el terminal de usuario y
    ejecutar el ejecutable telecargable cargado, lo que permite recuperar una dirección de servicio correspondiente al motor de servicio que se utilizará por el terminal de usuario para el acceso a un servicio de recuperación de datos del espacio 10 de trabajo (967) proporcionado por dicho motor de servicio.
  10. 11. El método según la reivindicación 10, en donde dicho elemento del espacio de trabajo incluye datos del espacio de trabajo de agenda.
    15 12. El método según la reivindicación 10, que comprende la configuración (1035) del terminal de usuario utilizando el ejecutable telecargable de acceso al servicio para acceder a un servicio proporcionado a través de Internet por un motor de servicio situado en otro terminal (167).
  11. 13. El método según una cualquiera de las reivindicaciones 10 a 12, que comprende la telecarga del ejecutable 20 telecargable de acceso al servicio a partir del servidor global.
  12. 14. El método según una cualquiera de las reivindicaciones 10 a 13, en donde dicho motor de servicio proporciona un servicio de autenticación del usuario (963).
    25 15. El método según una cualquiera de las reivindicaciones 10 a 14, en donde la pluralidad de ejecutables telecargables incluye un subconjunto de ejecutables telecargables disponibles, estando dicho subconjunto basado en la identidad del usuario.
  13. 16. El método según una cualquiera de las reivindicaciones 10 a 15, en donde el terminal de usuario recibe las
    30 respuestas de dicho motor de servicio por intermedio del servidor global (1340) que actúa como un proxy, mandatario, para el terminal de usuario.
  14. 17. El método según una cualquiera de las reivindicaciones 10 a 15, en donde el terminal de usuario accede a dicho
    motor de servicio (1205) recuperando una dirección de servicio del motor de servicio a partir del servidor global. 35
  15. 18. El método según una cualquiera de las reivindicaciones 10 a 18, en donde el terminal de usuario accede a dicho motor de servicio enviando demandas de servicio y recibe respuestas a dichas demandas de servicio, a través del canal de comunicación Internet.
    Firewall global Red sincronizacióndatos 100
    Servidor global Terminal distante
    Agente sincronización Traductor global Motor web Sistema configuración
    Sistema seguridad Datos espacio trabajo Cliente
    Firewall LAN
    Cliente
    Sistema base
    Motor servicios Datos espacio trabajo
    Terminaldistante
    Interfazcomunicaciones
    Dispositivo deentrada
    Dispositivoalmacenamientodatos
    Dispositivo desalida
    Sistema operativo
    Motor comunicaciones
    Módulo configuración OS Motor web Motor encriptación
    Módulo configuración WE Motor Applet
    Módulo configuración AE Interfazcomunicaciones
    Dispositivo deentrada
    Dispositivoalmacenamientodatos
    Datos espacio trabajo
    Datos configuración y usuario
    Applets configuración
    Applets seguridad Keysafe
    Datos página web
    Servidor global
    Dispositivo desalida
    Sistema operativo Agentes sincronización Traductor global
    Motor configuración
    Motor seguridad Motor concentrador Applets Motor página web
    Motor comunicaciones
    Agente sincronización
    ID usuario ID entrada ID matriz
    ¿Es una carpeta? Nombre Descripción
    Posición ¿Se borra? Última fecha modificada Fecha creación ¿Separación posterior?
    Distintivo formato global (ejemplo)
    Datos
    Cliente
    DispositivoDispositivoentrada salida
    DispositivoInterfazalmacenamiento datos comunicaciones
    Datos espacio Sistema operativo
    trabajo
    Info versión Sistema base
    Motor servicios
    Sistema base
    Módulo comunicacionesMódulo iniciosincronización
    Módulo interfaz usuario
    Módulo sincronización general
    Última signaturasincronización
    Móduloslocalizaciones
    Módulo sincronizaciónbasada encontenidos
    Página inicio usuario distante Correo electrónico Agenda de trabajo
    Acceso a Internet Buscapersonas Envío faxes
    Autenticación usuario Recuperación datos espacio trabajo
    Acceso a distancia servicio seguro
    Inicio
    Crear enlace entre cliente y servidor global
    Confirmar privilegios acceso usuario
    Descargar datos páginas web y datos configuración desde servidor global a cliente
    Configurar cliente y visualizar página web
    Usuario cliente selecciona un servicio
    Descargar correspondientes applet, datos de configuración de applet y datos de usuario desde servidor global a cliente
    Iniciar ejecución del applet
    Iniciar el servicio
    Seleccionar un modo de acceso
    Proporcionar acceso al servicio para el usuario cliente
    Fin Crear enlace entre cliente y servidor
    Inicio
    Llamar servidor global usando URL conocido
    Crear canal de comunicación
    Negociar parámetros canal seguro
    Crear canal seguro
    Fin
    Método de acceso a servicio
    Inicio
    Applet recupera dirección servicio e información autenticación
    Cliente crea conexión directa y segura con servicio y usa la información de autenticación para autenticarse
    Applet actúa como interfaz de entrada/salida con el servicio
    Fin
    (Redireccionar)
    Inicio
    Applet recupera dirección de servicio dirigiéndola al servidor global
    Applet crea conexión segura al servidor global
    El servidor global recupera la dirección de servicio y la información de autenticación
    El servidor global se conecta al servicio y usa la información de autenticación para autenticarse como usuario
    Applet actúa como interfaz de entrada/salida con el servidor global
    ¿Está el servidor global autorizado para realizar la demanda del usuario?
    ¿Fin?
    Fin Método de acceso a servicio 1050b
    El servidor global actúa como proxy para servicio
    Método de acceso a servicio
    Inicio
    Applet recupera dirección de servicio dirigiéndola al servidor global
    Applet crea conexión segura al servidor global
    ¿Se está ejecutando
    actualmente el
    servicio?
    Inicializar el
    servicio
    ¿Puede el servicio gestionar múltiples usuarios?
    Crear una instancia para el usuario
    Applet actúa como interfaz de entrada/salida con el motor de servicio
    Fin (Dirigir a datos)
    Inicio
    Seleccionar elementos espacio trabajo a sincronizar
    Identificar localizaciones elementos espacio trabajo
    Establecer estado operativo anterior de elementos espacio trabajo a nulo
    ¿Se han cumplido los
    Esperar
    criterios de inicio
    predeterminados?
    Establecer enlace comunicaciones seguras
    ¿Localizar un elemento espacio trabajo modificado?
    ¿Se ha modificado más de una versión?
    Determinar cambios
    Convertir cambios a formatos memorizados correspondientes
    Memorizar cambios en memoria correspondiente
    Actualizar estado anterior
    Actualizar última signatura sincronización
    Fin
    Sincronización y conversión
    Determinar cambios para cada versión
    ¿Algún conflicto?
    Reconciliar modificaciones
ES10163803T 1997-07-30 1998-07-23 Sistema y método para acceder globalmente y de manera segura a la información unificada en una red informática Expired - Lifetime ES2389882T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US90311897A 1997-07-30 1997-07-30
US903118 1997-07-30

Publications (1)

Publication Number Publication Date
ES2389882T3 true ES2389882T3 (es) 2012-11-02

Family

ID=25416970

Family Applications (2)

Application Number Title Priority Date Filing Date
ES10163803T Expired - Lifetime ES2389882T3 (es) 1997-07-30 1998-07-23 Sistema y método para acceder globalmente y de manera segura a la información unificada en una red informática
ES98936975T Expired - Lifetime ES2353255T3 (es) 1997-07-30 1998-07-23 Sistema y mã‰todo para acceder de manera global y segura a informaciã“n unificada en una red de ordenadores.

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES98936975T Expired - Lifetime ES2353255T3 (es) 1997-07-30 1998-07-23 Sistema y mã‰todo para acceder de manera global y segura a informaciã“n unificada en una red de ordenadores.

Country Status (9)

Country Link
EP (4) EP2172852B1 (es)
JP (2) JP2001512260A (es)
CN (1) CN1222886C (es)
AT (1) ATE483204T1 (es)
CA (1) CA2297969A1 (es)
DE (1) DE69841918D1 (es)
ES (2) ES2389882T3 (es)
IL (1) IL134231A0 (es)
WO (1) WO1999006900A2 (es)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6219694B1 (en) 1998-05-29 2001-04-17 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device having a shared electronic address
US7606936B2 (en) 1998-05-29 2009-10-20 Research In Motion Limited System and method for redirecting data to a wireless device over a plurality of communication paths
US6438585B2 (en) 1998-05-29 2002-08-20 Research In Motion Limited System and method for redirecting message attachments between a host system and a mobile data communication device
US7209955B1 (en) 1998-05-29 2007-04-24 Research In Motion Limited Notification system and method for a mobile data communication device
US7266365B2 (en) 1998-05-29 2007-09-04 Research In Motion Limited System and method for delayed transmission of bundled command messages
US7209949B2 (en) 1998-05-29 2007-04-24 Research In Motion Limited System and method for synchronizing information between a host system and a mobile data communication device
JP2000187646A (ja) * 1998-12-22 2000-07-04 Mitsubishi Electric Corp 情報転送システム
US6457062B1 (en) 1999-04-08 2002-09-24 Palm, Inc. System and method for synchronizing multiple calendars over wide area network
US6466236B1 (en) 1999-04-08 2002-10-15 Palm, Inc. System and method for displaying and manipulating multiple calendars on a personal digital assistant
US6308201B1 (en) 1999-04-08 2001-10-23 Palm, Inc. System and method for sharing data among a plurality of personal digital assistants
US7716109B1 (en) * 1999-04-29 2010-05-11 Citibank, N.A. System and method for web trading
SE514769C2 (sv) * 1999-07-16 2001-04-23 Ericsson Telefon Ab L M Sätt och system för autentisering av en mobilkommunikationsanordning
US7505762B2 (en) 2004-02-27 2009-03-17 Fusionone, Inc. Wireless telephone data backup system
US7035878B1 (en) 2000-01-25 2006-04-25 Fusionone, Inc. Base rolling engine for data transfer and synchronization system
US6694336B1 (en) 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
US6671757B1 (en) 2000-01-26 2003-12-30 Fusionone, Inc. Data transfer and synchronization system
US8156074B1 (en) * 2000-01-26 2012-04-10 Synchronoss Technologies, Inc. Data transfer and synchronization system
CA2346231A1 (en) * 2000-05-08 2001-11-08 Internet Number Corporation Method and system for accessing information on a network using message aliasing functions having shadow callback functions
US6944651B2 (en) 2000-05-19 2005-09-13 Fusionone, Inc. Single click synchronization of data from a public information store to a private information store
US6804699B1 (en) 2000-07-18 2004-10-12 Palmone, Inc. Identifying and locating lost or stolen personal digital assistant devices via a landline- or wireless-connected web server
US6925476B1 (en) 2000-08-17 2005-08-02 Fusionone, Inc. Updating application data including adding first change log to aggreagate change log comprising summary of changes
JP3297037B2 (ja) * 2000-10-31 2002-07-02 サイボウズ株式会社 情報登録支援システム、情報登録支援装置並びに方法、及び情報記憶媒体
US7587446B1 (en) 2000-11-10 2009-09-08 Fusionone, Inc. Acquisition and synchronization of digital media to a personal information space
US7010303B2 (en) 2000-12-22 2006-03-07 Research In Motion Limited Wireless router system and method
US7283808B2 (en) 2001-01-18 2007-10-16 Research In Motion Limited System, method and mobile device for remote control of a voice mail system
US7103656B2 (en) 2001-02-20 2006-09-05 Research In Motion Limited System and method for administrating a wireless communication network
CA2375844C (en) 2001-03-09 2008-12-30 Research In Motion Limited Advanced voice and data operations in a mobile data communication device
EP1399853A1 (en) * 2001-06-12 2004-03-24 Research In Motion Limited Certificate management and transfer system and method
IL159341A0 (en) 2001-06-12 2004-06-01 Research In Motion Ltd System and method for compressing secure e-mail for exchange with a mobile data communication device
KR100576558B1 (ko) 2001-06-12 2006-05-08 리서치 인 모션 리미티드 휴대용 데이터 통신 장치와의 교환을 위한 인코딩된메시지를 처리하는 시스템 및 방법
CA2454218C (en) 2001-07-10 2013-01-15 Research In Motion Limited System and method for secure message key caching in a mobile communication device
CN101232504B (zh) 2001-08-06 2012-09-19 捷讯研究有限公司 用于处理已编码消息的系统和方法
US7317699B2 (en) 2001-10-26 2008-01-08 Research In Motion Limited System and method for controlling configuration settings for mobile communication devices and services
US9332058B2 (en) 2001-11-01 2016-05-03 Benhov Gmbh, Llc Local agent for remote file access system
CA2469513C (en) 2001-12-07 2007-08-21 Research In Motion Limited System and method of managing information distribution to mobile stations
FI114245B (fi) * 2002-11-13 2004-09-15 Nokia Corp Synkronointi-istunnon järjestäminen
JP4119295B2 (ja) * 2003-04-07 2008-07-16 東京エレクトロン株式会社 保守・診断データ蓄積サーバ、保守・診断データの蓄積・取得システム、保守・診断データの蓄積・提供システム
US7591017B2 (en) * 2003-06-24 2009-09-15 Nokia Inc. Apparatus, and method for implementing remote client integrity verification
EP1652048A4 (en) 2003-07-21 2009-04-15 Fusionone Inc ORDERING NEWS MANAGEMENT SYSTEM
US8238696B2 (en) 2003-08-21 2012-08-07 Microsoft Corporation Systems and methods for the implementation of a digital images schema for organizing units of information manageable by a hardware/software interface system
US8166101B2 (en) 2003-08-21 2012-04-24 Microsoft Corporation Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system
CN100565505C (zh) * 2003-08-21 2009-12-02 微软公司 通过中介文件系统或设备同步计算机系统的系统和方法
US7634509B2 (en) 2003-11-07 2009-12-15 Fusionone, Inc. Personal information space management system and method
GB0328383D0 (en) * 2003-12-06 2004-01-14 Ibm Improved quality of service for network connected clients
US7647256B2 (en) 2004-01-29 2010-01-12 Novell, Inc. Techniques for establishing and managing a distributed credential store
US9542076B1 (en) 2004-05-12 2017-01-10 Synchronoss Technologies, Inc. System for and method of updating a personal profile
US9094429B2 (en) 2004-08-10 2015-07-28 Blackberry Limited Server verification of secure electronic messages
JP4574335B2 (ja) * 2004-11-19 2010-11-04 株式会社日立製作所 セキュリティシステム、認証サーバ、認証方法、およびプログラム
KR101202671B1 (ko) * 2004-12-28 2012-11-19 텔레콤 이탈리아 소시에떼 퍼 아찌오니 사용자가 가입자 단말에서 단말 장치에 원격으로 접속할 수있게 하기 위한 원격 접속 시스템 및 방법
CN100352231C (zh) * 2005-04-11 2007-11-28 深圳市天路软件开发有限公司 异地数据同步的传输方法及系统
US8365240B2 (en) 2005-04-18 2013-01-29 Research In Motion Limited Method for providing wireless application privilege management
US7774827B2 (en) 2005-06-06 2010-08-10 Novell, Inc. Techniques for providing role-based security with instance-level granularity
US7974945B2 (en) * 2005-06-16 2011-07-05 Information Appliance Associates System and method for synchronizing a BlackBerry with a Macintosh
JP4573710B2 (ja) * 2005-06-16 2010-11-04 日本電信電話株式会社 データベース管理装置、データベース管理方法及びデータベース管理プログラム
US7953971B2 (en) 2005-10-27 2011-05-31 Research In Motion Limited Synchronizing certificates between a device and server
US8191105B2 (en) 2005-11-18 2012-05-29 Research In Motion Limited System and method for handling electronic messages
US8355701B2 (en) 2005-11-30 2013-01-15 Research In Motion Limited Display of secure messages on a mobile communication device
US7840207B2 (en) 2005-11-30 2010-11-23 Research In Motion Limited Display of secure messages on a mobile communication device
US7814161B2 (en) 2006-06-23 2010-10-12 Research In Motion Limited System and method for handling electronic mail mismatches
CN101068141B (zh) * 2006-08-18 2011-09-21 腾讯科技(深圳)有限公司 通信终端与网络通信系统之间数据同步的方法及装置
US7603435B2 (en) 2006-11-15 2009-10-13 Palm, Inc. Over-the-air device kill pill and lock
US8135798B2 (en) 2006-11-15 2012-03-13 Hewlett-Packard Development Company, L.P. Over-the-air device services and management
US7574444B2 (en) 2006-11-15 2009-08-11 Palm, Inc. Device-side data de-duping
US20080115152A1 (en) 2006-11-15 2008-05-15 Bharat Welingkar Server-controlled heartbeats
US8179872B2 (en) 2007-05-09 2012-05-15 Research In Motion Limited Wireless router system and method
US7949355B2 (en) 2007-09-04 2011-05-24 Research In Motion Limited System and method for processing attachments to messages sent to a mobile device
CN101222355B (zh) * 2007-12-26 2010-07-21 北京航空航天大学 一种远程援助方法及其援助系统
US8479268B2 (en) * 2009-12-15 2013-07-02 International Business Machines Corporation Securing asynchronous client server transactions
UA56540U (ru) * 2010-12-03 2011-01-10 Игорь Николаевич Семенов Способ создания каталога закладок на сервере
US9733995B2 (en) * 2014-12-17 2017-08-15 Intel Corporation Scalable synchronization mechanism for distributed memory
US20200321107A1 (en) * 2015-05-19 2020-10-08 Iryou Jyouhou Gijyutu Kenkyusyo Corporation Integrated multi-facility electronic medical record system
JP2017028590A (ja) * 2015-07-25 2017-02-02 滋春 神山 関連付けられた複数のsimカードを挿入した各々の携帯電話やスマートフォンを使い、電池切れの際電池交換や携帯充電器の使用を不要にした通信システム
JP7277563B2 (ja) 2018-04-18 2023-05-19 アイボス・インコーポレイテッド ハイブリッドクラウドコンピューティングネットワーク管理

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4897781A (en) * 1987-02-13 1990-01-30 International Business Machines Corporation System and method for using cached data at a local node after re-opening a file at a remote node in a distributed networking environment
US5586260A (en) * 1993-02-12 1996-12-17 Digital Equipment Corporation Method and apparatus for authenticating a client to a server in computer systems which support different security mechanisms
US5623601A (en) * 1994-11-18 1997-04-22 Milkway Networks Corporation Apparatus and method for providing a secure gateway for communication and data exchanges between networks
WO1996017306A2 (en) * 1994-11-21 1996-06-06 Oracle Corporation Media server
US5734828A (en) * 1995-08-30 1998-03-31 Intel Corporation System for accessing/delivering on-line/information services via individualized environments using streamlined application sharing host and client services
US5647002A (en) 1995-09-01 1997-07-08 Lucent Technologies Inc. Synchronization of mailboxes of different types
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
WO1997015885A1 (en) * 1995-10-25 1997-05-01 Open Market, Inc. Managing transfers of information in a communications network
US5708709A (en) * 1995-12-08 1998-01-13 Sun Microsystems, Inc. System and method for managing try-and-buy usage of application programs

Also Published As

Publication number Publication date
EP2172852A3 (en) 2011-11-09
EP2302872A2 (en) 2011-03-30
EP1018066A4 (en) 2004-11-03
EP2224673B1 (en) 2012-06-20
IL134231A0 (en) 2001-04-30
JP2001512260A (ja) 2001-08-21
WO1999006900A3 (en) 1999-04-08
WO1999006900A2 (en) 1999-02-11
ATE483204T1 (de) 2010-10-15
EP2302872A3 (en) 2014-10-08
EP2224673A2 (en) 2010-09-01
JP2009163755A (ja) 2009-07-23
EP1018066B1 (en) 2010-09-29
CA2297969A1 (en) 1999-02-11
EP2172852B1 (en) 2015-01-07
JP4563488B2 (ja) 2010-10-13
EP2224673A3 (en) 2010-09-15
CN1222886C (zh) 2005-10-12
DE69841918D1 (de) 2010-11-11
ES2353255T3 (es) 2011-02-28
CN1269032A (zh) 2000-10-04
EP2172852A2 (en) 2010-04-07
EP1018066A2 (en) 2000-07-12

Similar Documents

Publication Publication Date Title
ES2389882T3 (es) Sistema y método para acceder globalmente y de manera segura a la información unificada en una red informática
US6708221B1 (en) System and method for globally and securely accessing unified information in a computer network
US8117344B2 (en) Global server for authenticating access to remote services
ES2315960T3 (es) Sistema y procedimiento para sincronizar correo electronico a traves de una red.
US6732277B1 (en) Method and apparatus for dynamically accessing security credentials and related information
KR100890287B1 (ko) 외부 인증 장치와 통신 가능한 정보 처리 장치
JP4863777B2 (ja) 通信処理方法及びコンピュータ・システム
US10555147B2 (en) Systems and methods for facilitating service provision between applications
JP2004513453A (ja) 信頼性のある分散型ピアツーピアネットワークを確立する方法及びシステム
WO2001075651A2 (en) Replacing an email attachment with an address specifying where the attachment is stored
JP3661776B2 (ja) クライアントのプロファイル情報をサーバに提供する方法とシステム
KR20040101471A (ko) 데이터 분산 방법 및 시스템
JP2008065814A (ja) 情報アクセス制御方法
JP2003242122A (ja) ネットワークシステム、情報処理装置および方法、記録媒体、並びにプログラム
CA2617304A1 (en) System and method for globally and securely accessing unified information in a computer network
JP2003242107A (ja) ネットワークシステム、情報処理装置および方法、記録媒体、並びにプログラム
Coppola Advanced Guide: Installation and Administration