CN1227858C - 实现对计算机网络中服务的安全访问的***和方法 - Google Patents

实现对计算机网络中服务的安全访问的***和方法 Download PDF

Info

Publication number
CN1227858C
CN1227858C CN98814246.5A CN98814246A CN1227858C CN 1227858 C CN1227858 C CN 1227858C CN 98814246 A CN98814246 A CN 98814246A CN 1227858 C CN1227858 C CN 1227858C
Authority
CN
China
Prior art keywords
client computer
service
client
applet
described system
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
CN98814246.5A
Other languages
English (en)
Other versions
CN1354934A (zh
Inventor
马克·D·里金斯
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.)
BlackBerry Ltd
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
Publication of CN1354934A publication Critical patent/CN1354934A/zh
Application granted granted Critical
Publication of CN1227858C publication Critical patent/CN1227858C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • 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
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • 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/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Storage Device Security (AREA)

Abstract

全球服务器(106)包括一个用于建立与客户机通信联络的通信引擎:与确定客户机特权的通信引擎相连接的安全装置;与安全装置连接的小服务程序主机引擎,用于基于户特权、为客户机(114a)提供一个应用小程序,此程序实现与安全服务(110a)间的输入/输出。以及一个密钥保存,用于存储使得客户机能够访问安全服务的密匙。全球服务器可以与多个站点连接,其中每一个站点提供多种服务。每一个站点都可以通过防火墙(116)而被保护。相应地,全球服务器存储密匙,经由防火墙(116)实现与服务(110a)的通信。

Description

实现对计算机网络中服务的安全访问的***和方法
技术领域
本发明一般涉及到计算机网络,更具体地说涉及到实现对计算机网络中服务的安全访问的***和方法。
背景技术
在初期,互联网提供了面向研究的环境,用户和主机对那里的信息的自由、开放式的交换很感兴趣,并且在那里用户和主机相互信赖。然而,互联网络戏剧性地增长,目前大约有100,000互相连接的计算机网络和几百万用户。由于互联网络的规模和公开性,它变成了数据盗窃、数据蚀变和其它恶作剧的目标。
事实上,在互联网上的每个人都是有弱点的。在连接之前,公司会权衡互联网连接与安全性损失的利弊。当前的安全技术用来提供客户机和服务器认证、数据机密性、***完整性以及***访问控制等。
当前的安全技术中最流行的是防火墙,它包括在可信赖的网络和互联网之间安置的一个中间***。为避免可信赖网络和互联网之间未经认证的通信,防火墙提供了安全性能的外部参数。一个防火墙可以包括屏蔽路由器、代理服务器和应用层网关。
为了能够访问可信赖的网络中受到保护的服务,互联网上的用户需要用某种方法,例如输入口令、或者利用硬件令牌完成对于询问的回答,向防火墙提供身份。通过适当的认证,用户可以通过防火墙进入局域网络,但是它通常被限制在预定的服务设置之内,例如电子邮件、FTP(文件传输协议)等等。
一些局域网络管理员只是将服务器放置在防火墙之外,该服务器经常被称为“献身的羔羊”,该服务器存储那些可以被远程用户很容易访问的非机密数据,因而具有很少的安全性能。
一个非军事化区域、或DMZ,处于用来保护可信赖网络的两个防火墙之间。在DMZ中,外部防火墙在允许超级文本传送协议(HTTP)请求的同时保护服务器免受外部威胁。如果在DMZ中一个服务器受到危害,内部防火墙就会保护可信赖的网络。许多公司利用DMZ来维护它们的网络服务器。
另一种保护计算机网络的安全技术是公用密钥证书的发行和使用。证书机构把公用密钥证书发布给用户,并且通过某一方法使用户的身份生效、并且发布一个描述用户姓名和公用密钥的证书。作为可靠性的证据,利用本人的私用密匙,该证书机构用计数法标记用户的证书。
这样,当用户经由一台客户计算机连接到一台服务器上时,这台客户计算机就会和服务器交换公用密钥证书。通过利用证书机构的公用密钥来检验证书的署名,每一个用户都会检验该接收证书的可靠性。接着,通过用服务器公用密钥加密信息,用户能够给服务器发送安全的通信链路,并且用用户公用密钥加密信息,服务器能够给用户发送安全通信链路。虽然任何用户可以给出一个公用密钥证书,但是仅有该真实用户和该真实主机才拥有解密信息所需的相应私用密匙。认证和密钥分配的计算机安全***的实例包括由麻省理工学院开发的KerberosTM安全***和由IBM公司开发的NetSPTM安全***。
这些安全技术无法解决与漫游(移动的)用户相关的问题。对于漫游用户来说,维护识别和认证信息例如口令、证书、密钥等等是一个烦琐的处理过程。另外,访问多机***要求多个密钥,这经常使得跟踪和利用变得过于复杂。而且对防火墙之后的***的直接访问会危害到安全性能。因此,容易、安全地对计算机服务实现远端访问的***和方法是必需的。
发明内容
本发明提供一种实现对计算机网络中服务的安全访问的***和方法。此网络***包括一个全球服务器,经由一个计算机网络与计算机服务器连接。全球服务器包括一个通信引擎,用于建立与客户机的通信链路;安全装置,用于与确定客户机特权的通信引擎连接;一个与安全装置连接的小服务程序(servlet)主机引擎,基于客户机特权给客户机提供一个应用小程序,此程序使得客户机与安全服务之间能够进行输入/输出操作;以及一个密钥保存(文件),用于存储使得能够对安全服务进行访问的密匙。全球服务器可以与多个站点连接,其中每一个站点提供多种服务。每一个站点都可以被防火墙保护。相应地,全球服务器存储此密匙,用于通过防火墙与服务进行通信。
此方法包括下列步骤:与客户机建立通信链路;识别和认证客户机;确定客户机特权;基于客户机特权,提供一个应用小程序给客户机,此程序使得客户机与安全服务之间能够进行输入/输出操作;检索使访问安全服务密匙;
本发明的***和方法更好地提供了全球可访问的可信赖的第三方,即全球服务器。该可信赖的第三方安全地存储密匙,起着单一的识别和认证服务的作用。其它***可以通过全球服务器被访问。全球服务器使用存储的密匙认证某一身份下的用户,此身份被另一***的现有安全服务所领会,并建立起与所需服务之间的安全通信通道。由于全球防火墙,全球服务器很显著地被保护,以免受外部威胁。相应地,通过与服务相连接的防火墙,全球服务器为经过认证的客户机提供安全通信。全球服务器可以提供多级别的识别和认证服务。相应地,基于用户状态、识别与认证的强度以及通信通道的保密性,全球服务器可以提供多级别的资源访问。
由于全球防火墙以及由全球服务器执行的识别和认证服务,公司能够在全球服务器上存储相对机密的信息,用于供经认证的客户机使用。然而,本发明使得公司在全球服务器仅能保持它们的一部分机密信息,这样这个有限的损失就可以由可信赖的第三方***妥协处理。此外,全球服务器可以很方便地起到客户机代理的作用,用于控制对服务的访问、记录密匙的使用以及对记录资源的访问。
附图说明
图1是一个方框图,图示了一个按照本发明的漫游用户网络访问***;
图2是一个方框图,图示了图1所示的一例客户机的细节;
图3是一个方框图,图示了图1所示的全球服务器的细节;
图4是一个方框图,图示了图1所示的一例服务器的细节;
图5是一个流程图,图示了一种用于远程访问一个安全服务的方法;
图6是一个流程图,图示了在客户机和全球服务器之间产生连接的图5所示的步骤的细节;
图7图示了一个示例性的网页;
图8A是一个流程图,按照第一实施例图示了图5所示的访问服务步骤的细节;
图8B是一个流程图,按照第二实施例图示了图5所示的访问服务步骤的细节;
图8C是一个流程图,按照第三实施例图示了图5所示的访问服务步骤的细节;
具体实施方式
图1是一个方框图,图示了一个按照本发明的示例性漫游用户网络访问***100。***100包括一个计算机互连网络,在这里是指互联网102。***100另外包括第一公司网络112、第二公司网络118、一个信息站(kiosk)网络138和一个网络服务提供商(ISP)网络143,每一个网络都被连接到互联网上。
公司网络112包括一个防火墙116,连接在互联网102和客户计算机114a之间。公司网络118包括一个防火墙,连接在互联网102和内部网络信号总线126之间。公司网络118另外包括:第一个服务器108a,用于提供第一服务110a;第二服务器108b,用于提供第二服务110b;一个客户计算机114b,用于存储提供第三服务110c的程序;以及一个第二客户计算机114c;并且每一个都被连接到信号总线126。这些服务110a-110d包括一个电子邮件服务程序、一个地址簿服务程序、一个日历服务程序、一个页面调度服务程序以及一个公司数据库服务程序。
信息站网络138包括第一客户计算机114d以及第二客户计算机114e,并且每一个都被连接到互联网102上。ISP网络143包括一个ISP148,它通过无线电通道146连接到第一客户计算机114f上,并且通过调制解调器152、156以及传输线154连接到第二客户计算机114g上。
互联网102包括一个被全球防火墙104保护的全球服务器106,并且还包括一个用于提供服务110d的服务器108e。客户计算机114a-114g和服务110a-110d之间的内部通信是经由全球服务器106完成的。例如,如果客户计算机114a-114g的任何一个用户想访问服务110a-110d(此服务被提供在***100内用户未知的站点),那么他就可以利用一个已知的统一资源定位符(URL)来访问由全球服务器106提供的网页。一个示例性的网页300在图7中被显示、描述。全球防火墙104保护全球服务器106免受外部威胁。
在获得对全球服务器106提供的功能的访问特权之前,用户必须首先获得全球服务器106的授权。获得授权通常要求进行用户识别和认证,例如利用公用密匙证书。一旦进行了认证,全球服务器106为用户提供对服务110a-110d的访问。应该理解,基于识别和认证的变化强度、以及通信通道的保密性,用户将被授与对服务110a-110d访问的变化级别。
为使用户能够访问并控制服务110a-110d,全球服务器106可以在分布式网络环境中使用常规的应用小程序、小服务程序(servlets)或者代理服务器,比如由Netscape公司提供的JavaTM分布式环境。全球服务器106为用户的客户机提供对服务110a-110d的访问和控制。全球服务器106可以通过对用户的客户机重定向来访问服务110a-110d本身;全球服务器106可以访问服务110a-110d本身并通过代理给客户机提供输入/输出;或者全球服务器106可以提供服务110a-110d本身。参考图8A-8C,将描述对服务110a-110d不同的三种访问模式。
全球服务器106保存所有服务110a-110d的网络地址、用户的公用和私人密匙、用户的帐户编号、以及防火墙认证信息等等。防火墙认证信息包括必要的识别、口令和传送防火墙116和120需要的证书。相应地,用户仅需要保存全球服务器106的URL、以及识别和认证信息,比如一个口令或者用于可使用全球服务器106功能的硬件标记。这样,这个漫游用户可以通过任何连接到互联网102的计算机终端,能够访问计算机服务110a-110d。
图2是一个方框图,图示了客户计算机114的细节,其中客户机114a-114d的每一个都是客户机114的一种情况。客户机114包括一个中央处理器(CPU)210,比如一个摩托罗拉PC微处理器或者英特尔奔腾微处理器。一个输入设备220(例如键盘以及鼠标)以及一个输出装置230(比如阴极射线管(CRT)显示器),经由信号总线240连接到CPU210。一个通信接口250、一个数据存储装置260(例如只读存储器芯片(ROM)或者磁盘)、以及一个随机存取存储器(RAM)270,经由信号总线240也被连接到CPU210。客户计算机114的通信接口250,如图1所示被连接到互联网102,并且将参考图1描述。
操作***280,包括用于控制CPU210处理过程的程序,并且它通常被存储在数据存储装置260中、并装入RAM270中用于执行。操作***280包括一个通信引擎282,用于产生信息数据包并经由通信接口250将它们传送到互联网106或从互联网接收信息数据包。
操作***280进一步包括一个互联网引擎,比如一个网页浏览器284,例如由网景公司提供的NetscapeTM网页浏览器或者由微软公司提供的IE浏览器。网页浏览器284包括一个用公用和私用密匙加密信息的加密引擎285,和一个应用小程序引擎286,用于执行从全球服务器106下载的应用小程序,使得客户机能够访问计算机服务110a-110d。下载的应用小程序288可以包括安全应用小程序290,用于执行服务例如用户识别和认证、信息完整***、以及证书检验。浏览器284进一步接收网页数据(391、图3)、配置数据390和识别一组用来选择服务110a-110d的信息,并且利用此信息来显示此网页(700、图7)。此网页浏览器284使得用户能够通过客户机114a-114b选择地执行服务110a-110d中的一种。
应该理解,客户机114a-114g例如客户机114b可以包括一个服务引擎490(图4),用于提供服务110a-110d例如服务110c。这样,对于一个客户机114b的用户,在不知道客户机114b提供服务110c的情况下,经由全球服务器106请求对服务110c的访问是有可能的。相应地,全球服务器106将为客户机114提供一个应用小程序288,目的是为用户提供回到客户机114b的服务110c的接口输入/输出。
图3是一个方框图,图示了全球服务器106的细节,此服务器包括一个CPU310例如一个摩托罗拉PC微处理器、或者一个英特尔奔腾微处理器。一个输入设备320例如键盘和鼠标、以及一个输出装置330例如一个CRT显示器通过信号总线340,被连接到CPU310上。一个通信接口350、一个数据存储装置360例如只读存储器或者磁盘、以及一个RAM370,经由信号总线340也被连接到CPU310。通信接口350照惯例作为互联网102的一部分被连接到客户机114。应该理解,虽然全球服务器106被描述为单一计算机,但它可以被理解为同时包括构成网络的多个计算机。
操作***380,包括用于控制CPU310处理过程的程序,并且通常被存储在数据存储装置260上、并且被装入RAM370中用于执行。操作***380包括一个通信引擎382用于产生信息数据包、并且经由通信接口350与客户计算机114交换信息数据包。
操作***380进一步包括作为全球防火墙一部分的安全服务384,用于开放与用户通信的通道。例如,当一个客户机试图访问全球服务器106时,此安全服务384首先确定全球服务器106是否从特定端口(没有显示)接收了进入的(in-bound)通信,并且在下面描述的小服务程序主机引擎386中确定连接到该特定端口是否经过了认证。假如是的话,经由该特定端口,安全服务384就会允许通信引擎382开放到客户机114a-114b的通信通道。否则,将不开放通道。
操作***380更进一步包括一个网页引擎387,它基于用户的识别、用户认证的强度以及通信信道的保密性,把网页数据391和识别一组可用服务110a-110d的信息传送到客户机114a-114g。一个示例性的网页700被显示在图7中,并且参考图7被描述。网页引擎387使得用户能够从网页700中选择服务110a-110d。
网页引擎387包括一个小服务程序主机引擎286,它能把包括一个认证应用小程序(没有显示)的安全应用小程序290下载到客户计算机114上,并且相应地执行小服务程序398的认证小服务程序397,以完成识别和认证服务。认证应用小程序290提示用户输入识别和认证信息,然后把此信息传达到认证小服务程序397。认证小服务程序397检验信息是否正确。应该理解,用户的认证信息不一定被送到认证小服务程序397,而是要用一种安全方法例如一个安全混杂来证明它的存在和正确性。小服务程序主机引擎386更进一步包括一个安全通信引擎396,它可以利用公用密钥证书与客户计算机114商讨安全通信通道。
相对于服务110a-110d的一个选择,小服务程序主机引擎386下载相应的应用小程序388、相应的配置数据390以及相应的用户数据392,并且可以把相应的服务地址信息394下载到客户计算机114。配置数据390包括用于配置用户网页浏览器284的信息、用于配置下载的应用小程序288的信息、以及用于配置选中的服务110a-110d的信息。用户数据392可以包括用户和服务所特定的信息,例如存储的书签、日历数据、寻呼机编号等等,此信息被特意地存储在全球服务器106上,以便可以容易地存取。服务地址信息394识别服务110a-110d的站点,这些服务是由全球服务器106提供给***100的。客户计算机114执行下载的相应的应用小程序288,此程序经由小服务程序主机引擎386(可能使用一个相应的小服务程序398)使得用户能够访问并控制其相应的服务110a-110d。可下载的应用小程序388、配置数据390、用户数据392以及服务地址信息394可以被存储在此数据存储设备360中。
密钥保存395是一个数据文件,用于存储每一个用户的认证信息、公用以及私用的密匙、每一个防火墙的口令信息等等。密钥保存395以链表格式组织,这样,基于选中的服务110a-110d,全球服务器106能够检索适当的防火墙口令信息、适当的用户认证信息以及密匙等等。密钥保存395可以被存储在数据存储装置360上。
图4是一个方框图,图示了服务器108的细节,这样服务器108a-108c和客户机114b分别是服务器108的不同实例。服务器108包括一个CPU410,例如一个摩托罗拉PC微处理器或者一个英特尔奔腾微处理器。一个输入设备420例如一个键盘和鼠标、以及一个输出装置430例如一个CRT显示器,经由信号总线440被连接到CPU410。一个通信接口450、一个数据存储装置460例如ROM或者磁盘、以及一个RAM470经由信号总线也被连接到CPU410。如图1所示及描述的那样,通信接口450被连接到客户机114上。
操作***480,包括一个用于控制CPU410处理过程的程序,通常被存储在数据存储装置460、并且被装入RAM470用于执行。操作***480也包括一个通信引擎482,用于产生信息数据包、并经由通信接450与客户机114或全球服务器106交换信息数据包。操作***480进一步包括用于商讨与用户的安全通道的安全服务484、一个用于开放与用户之间的安全通道的通信引擎486、以及一个用于为用户提供服务110a-110d的服务引擎490。
服务引擎490包括一个服务接口492,用于接收并翻译当前在客户机114执行的与下载的应用小程序288交换的信息,并且包括一个服务处理机494和服务数据496用于处理来自用户的服务请求。服务数据496可以包括先前产生的文件、数据库信息等等。应该理解,服务数据496类似于用户数据392,以至于包括相同的信息类型,但是它是在工作服务器108上被维护,不是在全球服务器108上。
图5是一个流程图,图示了使得用户能够在计算机网络***100上访问服务110a-110d的方法500。该方法500由客户机114以步骤505开始,此步骤产生一个与全球服务器106的通信联络。参考图6,步骤505将被更详细地描述。在步骤510中,全球服务器106确认用户有访问全球服务器106的功能的特权。确认用户访问特权的步骤可以包括检查用户证书、获得秘密口令、利用数字签名技术等等。应该理解,安全服务384可以使得小服务程序主机引擎386经由通信通道把安全应用小程序389传送到客户机114,以用于执行用户认证。
在用户访问特权被确认之后,全球服务器106的网页引擎387,在步骤515中把网页数据391和配置数据390下载到客户机114。在步骤520中,客户机114的浏览器284利用网页数据391和配置数据390、在客户机114的输出装置上显示网页700(图7)并且使得它能够访问由全球服务器106提供的服务110a-110d。一个示例性的网页700将如图7被显示和描述。
在步骤525中,经由输入设备220,用户从列出的网页700选项中选择一项服务110a-110d。作为响应,在步骤530中,全球服务器106的主机引擎386把相应的应用小程序(s)388、应用小程序配置数据390、用户数据392以及可能的服务地址信息394下载到客户机114。应用小程序配置数据390,最好包括用户特定的参数选择例如用户偏爱的字体,用于配置选中的服务110a-110d。用户数据392可以包括用户特定的以及服务特定的信息,例如存储的书签、日历数据、寻呼机编号等等。服务地址信息394识别选中的服务110a-110d的站点。也可以,相应的应用小程序388、应用小程序配置数据390、用户数据392以及服务地址信息394,在步骤515中已经与网页数据391以及配置数据390一起被下载。
在步骤535中,客户机114的应用小程序引擎286执行相应的下载的应用小程序288。工作服务器108在步骤537中初始化服务引擎490。全球服务器106在步骤538中选择图8A-8C中所描述的三种访问模式之一,用于使得客户计算机114能够与相应的服务引擎490联络。例如,如果用户选择服务器108c上的服务110d,它不被分离的防火墙保护,那么全球服务器106可能使用户能够直接访问。如果用户选择由公司网络118内的服务器108a提供的服务110a,那么全球服务器106可以为用户提供直接的访问。应该理解,每一个防火墙106以及120可以存储策略,此种策略建立全球服务器106应该选择的访问的正确模式。其它选择访问模式的因素可以包括用户偏爱性、有效性以及可行性。在步骤540中,全球服务器106为客户机114提供到选中的服务110a-110d的访问。参考图8A、8B以及8C,步骤540将更详细地描述。
图6是一个流程图,图示了步骤505的细节,此步骤从步骤605开始,在步骤605中用户通过客户机114利用已知的URL调用全球服务器106。在步骤607中,全球服务器106和客户机114之间建立一个安全通信通道,有可能是通过应用安全槽层(SSL)技术。即在步骤610中,全球服务器106的安全服务384确定联接安全通信是否许可,并且假如许可的话,建立一个与客户机114的通信通道。在步骤615中,客户机114的浏览器284和全球服务器106的安全服务384,协商安全通信通道参数,有可能是利用公用密匙鉴定。一例安全通信通道是使用RC4加密的RSA。应该理解全球服务器106可以被配置用来利用十种加密协议中的一种,并且客户机114可以被激活以利用五种加密协议中的一种。因此,步骤615可以包括选择一种对全球服务器106和客户机114通用的加密协议。在步骤620中,客户机114的加密引擎285和全球服务器的安全通信引擎396,利用安全通道参数来建立安全通信通道。之后,方法505也就结束了。
图7图示了一个示例性的基于URL可寻址超文本标记语言(HTML)的网页700,此网页由小服务程序主机引擎386维护。网页700包括一个标题710“网页”、提供的服务715的列表以及一个用于选择一种可供选择的服务715的指针770。正如图示的那样,提供的服务715可以包括一个电子邮件服务720、一个日历服务730、一个互联网访问服务740、一个页面调度服务750以及一部传真发送服务760。虽然图中未示,网页700可以包括其它服务例如书签、快速查寻卡(QuickCard)等等。
图8A是一个流程图,图示了第一实施例中步骤540的细节,这里指的是步骤540a,其中全球服务器106为客户机114提供到服务110a-110d的定向连接。步骤540由步骤805中下载的应用小程序288开始,从数据存储装置360中检索服务110a-110d的选中的服务地址、以及从密钥保存395检索用于服务110a-110d的认证信息。在步骤810中,通信引擎282在检索的服务地址处与工作服务器108的通信引擎482建立一个直接的、安全的连接,并且利用认证信息认证它本身。在步骤815中,应用小程序288充当与服务引擎之间的输入/输出接口。然后步骤540就结束。
图8B是一个流程图,图示了第二实施例中步骤540的细节,这里指的是步骤540b,其中全球服务器106作为客户机114到服务110a-110d的一个代理。步骤540b始于步骤840,在步骤840中,应用小程序288检索服务地址,此地址导致步骤540b被指示到全球服务器106。这样,在步骤845中,应用小程序288与全球服务器106之间建立了连接。在步骤850中,全球服务器106的小服务程序主机引擎386,检索选中的服务110a-110d的服务地址、以及来自密钥保存395的用于此选中服务110a-110d的认证信息。在步骤855中,为创建一个与工作服务器108的安全通信引擎486之间的安全通道,全球服务器106的安全通信引擎396协商安全通道参数。
之后,在步骤860中,应用小程序288充当与全球服务器106的安全通信引擎396之间的输入/输出接口(使得用户能够作出服务引擎490的请求)。在步骤865中,如果小服务程序主机引擎386确定执行客户机114用户的请求是未经认证的话,那么小服务程序主机引擎386在步骤870中就会确定是否方法540b已经结束,例如用户是否已经退出。假如是的话,那么方法820b就会结束。否则,方法540b返回到步骤860以获得另一个请求。在步骤865中,如果小服务程序主机引擎386确定执行客户机114用户的请求是经过认证的话,小服务程序主机引擎386,就可能利用小服务程序398充当客户机114到服务引擎490的代理。作为代理,小服务程序主机引擎386为应用小程序288把服务请求传送到服务110a-110d,并且把回应传送到当前执行在客户机114上正在请求的应用小程序288。方法540b接着返回步骤870。
图8C是一个流程图,图示了第三个实施例中步骤540的细节,这里指的是步骤540c,其中被请求的服务110a-110d位于全球服务器106。步骤540e始于步骤880,在步骤880中,应用小程序288为服务110a-110d检索服务地址,这样就会为应用小程序288提供全球服务器106上的服务110a-110d的服务地址。这样,在步骤882中应用小程序288与全球服务器106之间建立了一个连接。因为在图5所示的步骤510中、客户机114已经把它本身识别并认证到全球服务器106上,就不再需要附加的识别步骤。
在步骤884,判断服务110a-110d是否在当前运转。假如这样的话,那么在步骤886中就会判断服务110a-110d是否能够处理多个用户。如果不是,那么在步骤890中全球服务器106会为用户建立一个实例(instance),并且在步骤532中应用小程序288充当与全球服务器106上的服务110a-110d之间的输入/输出接口。否则,在步骤886中,如果服务110a-110d确定不能处理多个用户,那么方法540a就会进入步骤892。进一步,在步骤884中,如果全球服务器106确定当前服务110a-110d没有执行,那么全球服务器106在步骤888中就会起动服务110a-110d,并且进入到步骤886。
上文所述本发明最佳实施例的描述,仅仅是为了举例,并且上述实施例的其它变化和方法也可由本发明提供。本发明的部件可以通过下面的方法实现,利用可编程的通用数字计算机、利用应用程序特定的集成电路、或者利用互相连接的常规部件和电路的网络。在此已经描述了用于说明的实施例,但并不限制于此。按照上文的教导,可以产生许多变化、作出许多改进。本发明仅由下面的权利要求限制。

Claims (29)

1.一种用于允许客户访问安全服务的***,所述***包括:
一个通信引擎,用于建立与客户机的通信链路;
与所述通信引擎相连接的、用于确定客户机特权的安全装置;
一个与安全装置连接的小服务程序主机引擎,用于基于客户机特权为客户机提供一个应用小程序,所述应用小程序能实现与所述安全服务之间的输入/输出操作;以及
一个密钥保存装置,用于存储使得客户机能够访问安全服务的密匙。
2.按照权利要求1所述的***,其中,通信引擎利用SSL技术建立与客户机相联系的安全通信。
3.按照权利要求1所述的***,其中,通信引擎协商用于与客户机交换信息的加密协议。
4.按照权利要求1所述的***,其中,为与客户机交换信息,通信引擎利用公用密钥进行鉴定。
5.按照权利要求1所述的***,其中,安全装置利用公用密钥证书来认证客户机。
6.按照权利要求1所述的***,其中,为确定客户机特权,安全装置检查客户机身份以及认证的级别。
7.按照权利要求1所述的***,其中,为认证客户机,安全装置检查一本全球证书。
8.按照权利要求1所述的***,其中,安全装置利用数字签名技术来认证客户机。
9.按照权利要求1所述的***,其中,小服务程序主机引擎传送一个安全应用小程序给客户机,以使得客户机能够通过此安全装置执行一个认可的安全协议。
10.按照权利要求1所述的***,其中,服务是通过共同的防火墙保证安全的,并且密匙的配置实现了通过防火墙进行的通信。
11.按照权利要求1所述的***,进一步包括保护***的全球防火墙。
12.按照权利要求1所述的***,进一步包括一个识别安全服务站点的服务地址。
13.按照权利要求1所述的***,其中,应用小程序为客户机提供与安全服务的定向连接。
14.按照权利要求1所述的***,进一步包括一个与所述安全服务联系的代理,并且其中,应用小程序使得***与代理之间能够进行输入/输出。
15.一种用于使客户机访问安全服务的方法,所述方法包括以下步骤:
使用通信引擎建立与客户机的通信链路;
使用安全装置确定客户机特权;
使用小服务程序主机引擎,基于客户机特权,为客户机提供一个应用小程序,所述应用小程序实现与所述安全服务之间的输入/输出;
从密钥保存装置检索使得客户机能够访问所述安全服务的密匙。
16.按照权利要求15的方法,其中,建立通信链路包括利用SSL技术建立与客户机间安全通信的步骤。
17.按照权利要求15的方法,其中,建立通信链路包括为与客户机交换信息而商谈加密协议的步骤。
18.按照权利要求15的方法,其中,建立通信链路包括为与客户机交换信息而利用公用密钥证书的步骤。
19.按照权利要求15的方法,其中,确定客户机特权包括利用公用密钥证书认证客户机的步骤。
20.按照权利要求15的方法,其中,确定客户机特权包括为确定客户机特权而检查客户机身份和认证级别的步骤。
21.按照权利要求15的方法,其中,其中客户机特权包括为认证客户机而检查全球证书的步骤。
22.按照权利要求15的方法,其中,确定客户机特权包括为认证客户机而利用数字签名技术的步骤。
23.按照权利要求15的方法,其中,建立通信链路包括为了客户机能够执行认可的安全协议而给客户机传送小的安全应用程序。
24.按照权利要求15的方法,进一步包括以下步骤:通过防火墙利用密匙传送安全服务。
25.按照权利要求15的方法,其中,此方法是通过全球服务器执行的,并且它进一步包含了利用全球防火墙保护全球服务器。
26.按照权利要求15的方法,进一步包括一个识别安全服务站点的服务地址。
27.按照权利要求15的方法,其中,包括为客户机提供与安全服务的定向连接的步骤。
28.按照权利要求15的方法,进一步包括利用与安全服务联系的代理,并且其中,应用小程序使得***与代理之间能够进行输入/输出。
29.一种用于允许客户机访问安全服务的***,所述***包括:
用于建立与客户机的通信链路的装置;
用于确定客户机特权的装置;
基于客户机特权、为客户机提供应用小程序的装置,所述应用小程序实现与安全服务之间的输入/输出;
用于检索使得客户机能够访问安全服务的密匙的装置;
CN98814246.5A 1998-08-21 1998-08-21 实现对计算机网络中服务的安全访问的***和方法 Expired - Lifetime CN1227858C (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US1998/017410 WO2000011832A1 (en) 1998-08-21 1998-08-21 System and method for enabling secure access to services in a computer network

Publications (2)

Publication Number Publication Date
CN1354934A CN1354934A (zh) 2002-06-19
CN1227858C true CN1227858C (zh) 2005-11-16

Family

ID=22267718

Family Applications (1)

Application Number Title Priority Date Filing Date
CN98814246.5A Expired - Lifetime CN1227858C (zh) 1998-08-21 1998-08-21 实现对计算机网络中服务的安全访问的***和方法

Country Status (7)

Country Link
EP (1) EP1105996A4 (zh)
JP (1) JP2002523973A (zh)
CN (1) CN1227858C (zh)
CA (1) CA2341213C (zh)
EA (1) EA003374B1 (zh)
IL (1) IL141530A0 (zh)
WO (1) WO2000011832A1 (zh)

Families Citing this family (56)

* 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
US6701438B1 (en) 1999-06-14 2004-03-02 Sun Microsystems, Inc. Methods and apparatus for providing customizable security and logging protocols in a servlet engine
AU2056401A (en) 1999-12-02 2001-06-12 Senvid, Inc. Method, system and service model for remote recording of television programs
US7120692B2 (en) 1999-12-02 2006-10-10 Senvid, Inc. Access and control system for network-enabled devices
US9191443B2 (en) 1999-12-02 2015-11-17 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
US8793374B2 (en) 1999-12-02 2014-07-29 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
US7934251B2 (en) 1999-12-02 2011-04-26 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
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
US6631417B1 (en) * 2000-03-29 2003-10-07 Iona Technologies Plc Methods and apparatus for securing access to a computer
JP2001283062A (ja) * 2000-04-03 2001-10-12 Cybozu Inc グループウェアを用いた電子取引システム
US7814208B2 (en) * 2000-04-11 2010-10-12 Science Applications International Corporation System and method for projecting content beyond firewalls
US7181766B2 (en) 2000-04-12 2007-02-20 Corente, Inc. Methods and system for providing network services using at least one processor interfacing a base network
US7181542B2 (en) * 2000-04-12 2007-02-20 Corente, Inc. Method and system for managing and configuring virtual private networks
US7028333B2 (en) 2000-04-12 2006-04-11 Corente, Inc. Methods and systems for partners in virtual networks
US7047424B2 (en) 2000-04-12 2006-05-16 Corente, Inc. Methods and systems for hairpins in virtual networks
US6996628B2 (en) 2000-04-12 2006-02-07 Corente, Inc. Methods and systems for managing virtual addresses for virtual networks
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
EP1158745B1 (en) * 2000-05-26 2003-09-03 International Business Machines Corporation Method and system for secure pervasive access
US6859879B2 (en) 2000-05-26 2005-02-22 International Business Machine Corporation Method and system for secure pervasive access
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
BR0113510A (pt) * 2000-08-25 2003-07-01 Research In Motion Ltd Sistema e método para implementar um protocolo de segurança de camada de transporte aprimorado
US7085817B1 (en) 2000-09-26 2006-08-01 Juniper Networks, Inc. Method and system for modifying requests for remote resources
US7774455B1 (en) 2000-09-26 2010-08-10 Juniper Networks, Inc. Method and system for providing secure access to private networks
US7136896B1 (en) 2000-09-26 2006-11-14 Juniper Networks, Inc. Dynamic toolbar for markup language document
US7865569B1 (en) 2000-09-26 2011-01-04 Juniper Networks, Inc. Method and system for modifying script portions of requests for remote resources
JP3297037B2 (ja) * 2000-10-31 2002-07-02 サイボウズ株式会社 情報登録支援システム、情報登録支援装置並びに方法、及び情報記憶媒体
US7620719B2 (en) 2002-06-06 2009-11-17 Juniper Networks, Inc. Method and system for providing secure access to private networks
CA2432589C (en) 2000-12-22 2008-12-02 Research In Motion Limited Wireless router system and method
US7533409B2 (en) 2001-03-22 2009-05-12 Corente, Inc. Methods and systems for firewalling virtual private networks
EP1249981A1 (en) * 2001-04-02 2002-10-16 NuMeme Limited A security service system and method
CA2410118C (en) 2001-10-26 2007-12-18 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
US7146403B2 (en) 2001-11-02 2006-12-05 Juniper Networks, Inc. Dual authentication of a requestor using a mail server and an authentication server
EP1777912B1 (en) * 2001-11-02 2018-08-15 Juniper Networks, Inc. Method and system for providing secure access to resources on private networks
EP1442580B1 (en) 2001-11-02 2017-05-31 Juniper Networks, Inc. Method and system for providing secure access to resources on private networks
US7631084B2 (en) 2001-11-02 2009-12-08 Juniper Networks, Inc. Method and system for providing secure access to private networks with client redirection
JP4667747B2 (ja) * 2001-11-20 2011-04-13 ウェスタン・ディジタル・テクノロジーズ・インク ネットワークを介して制御可能な装置にアクセスし制御するシステム
CA2469513C (en) 2001-12-07 2007-08-21 Research In Motion Limited System and method of managing information distribution to mobile stations
US7395354B2 (en) 2002-02-21 2008-07-01 Corente, Inc. Methods and systems for resolving addressing conflicts based on tunnel information
US20060129681A1 (en) * 2002-08-19 2006-06-15 Axalto Sa Secured method to exchange data between data between browser and a web site
US8473355B2 (en) 2002-12-06 2013-06-25 Facebook, Inc. System and method for electronic wallet conversion
WO2005010715A2 (en) 2003-07-21 2005-02-03 Fusionone, Inc. Device message management system
CN1298194C (zh) * 2004-03-22 2007-01-31 西安电子科技大学 基于漫游密钥交换认证协议的无线局域网安全接入方法
US9542076B1 (en) 2004-05-12 2017-01-10 Synchronoss Technologies, Inc. System for and method of updating a personal profile
US7814216B2 (en) * 2004-09-07 2010-10-12 Route 1 Inc. System and method for accessing host computer via remote computer
EP1872251B1 (en) 2005-04-18 2015-10-21 BlackBerry Limited Method for providing wireless application privilege management
US7748046B2 (en) 2005-04-29 2010-06-29 Microsoft Corporation Security claim transformation with intermediate claims
US20080115152A1 (en) 2006-11-15 2008-05-15 Bharat Welingkar Server-controlled heartbeats
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
WO2008121345A1 (en) * 2007-03-29 2008-10-09 Christopher Murphy Methods and systems for internet security via virtual software
US8179872B2 (en) 2007-05-09 2012-05-15 Research In Motion Limited Wireless router system and method
CA2637179A1 (en) * 2008-07-30 2010-01-30 John H. Dunstan A device and system to enable and operate the selection, sales and distribution of lottery tickets and other tickets processes
US8943428B2 (en) 2010-11-01 2015-01-27 Synchronoss Technologies, Inc. System for and method of field mapping
CN104717192B (zh) * 2013-12-16 2018-05-18 腾讯科技(深圳)有限公司 合法性验证方法及中间服务器

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5644354A (en) * 1992-10-09 1997-07-01 Prevue Interactive, Inc. Interactive video system
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
US5826039A (en) * 1995-12-29 1998-10-20 Lucent Technologies Inc. Universal connection point for resources and communication unrelated to a physical endpoint
CA2202118A1 (en) * 1996-04-29 1997-10-29 Mitel Corporation Protected persistent storage access for mobile applications
AU733109B2 (en) * 1997-03-10 2001-05-10 Internet Dynamics, Inc. Methods and apparatus for controlling access to information
US5987523A (en) * 1997-06-04 1999-11-16 International Business Machines Corporation Applet redirection for controlled access to non-orginating hosts
US5870544A (en) * 1997-10-20 1999-02-09 International Business Machines Corporation Method and apparatus for creating a secure connection between a java applet and a web server

Also Published As

Publication number Publication date
JP2002523973A (ja) 2002-07-30
EP1105996A1 (en) 2001-06-13
CN1354934A (zh) 2002-06-19
CA2341213A1 (en) 2000-03-02
WO2000011832A1 (en) 2000-03-02
EP1105996A4 (en) 2005-08-17
EA003374B1 (ru) 2003-04-24
CA2341213C (en) 2009-05-26
EA200100257A1 (ru) 2001-12-24
IL141530A0 (en) 2002-03-10

Similar Documents

Publication Publication Date Title
CN1227858C (zh) 实现对计算机网络中服务的安全访问的***和方法
US7287271B1 (en) System and method for enabling secure access to services in a computer network
US6766454B1 (en) System and method for using an authentication applet to identify and authenticate a user in a computer network
US7627896B2 (en) Security system providing methodology for cooperative enforcement of security policies during SSL sessions
US7380273B2 (en) Method for authenticating a user access request
US6742127B2 (en) Method and apparatus for maintaining security in a push server
RU2332711C2 (ru) ЗАЩИЩЕННАЯ ОБРАБОТКА МАНДАТА КЛИЕНТСКОЙ СИСТЕМЫ ДЛЯ ДОСТУПА К РЕСУРСАМ НА ОСНОВЕ Web
CN100508517C (zh) 选择用于有线和无线设备的安全格式转换
KR100946110B1 (ko) 기존 ssl 세션을 브레이킹하지 않고 인증서-기반 인증으로 스텝 업하는 방법 및 시스템
CN101331731B (zh) 由身份提供商对联盟内的客户进行定制认证的方法、装置和程序产品
CN100544289C (zh) 将加密https网络数据包映射到其经过解密的副本的***和方法
JP2009514050A (ja) クライアント−サーバ環境においてクライアントを認証するためのシステムおよび方法
JP2005538434A (ja) 連携型(フェデレーテッド)環境におけるユーザ判定による認証のための方法およびシステム
JP2003022253A (ja) サーバ、情報処理装置及びそのアクセス制御システム並びにその方法
US7334126B1 (en) Method and apparatus for secure remote access to an internal web server
WO2005060202A1 (en) Method and system for analysing and filtering https traffic in corporate networks
WO2006026124A2 (en) Secure inter-process communications
US7421576B1 (en) Interception and modification of network authentication packets with the purpose of allowing alternative authentication modes
Gritzalis et al. Addressing threats and security issues in World Wide Web technology
Alqaydi et al. A modern solution for identifying, monitoring, and selecting configurations for SSL/TLS deployment
Vacca Internet Technologies
Van Jaarsveld Internal Control with Specific Reference to the Intranet
Burnside et al. Authentication on untrusted remote hosts with public-key sudo
WO2005033947A1 (ja) デジタルコンテンツのデータ保護制御システム

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: GOOD TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: VISTO CORPORATION

CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Goodall Technologies Co.

Address before: American California

Patentee before: Visto Corp.

CP02 Change in the address of a patent holder

Address after: American Delaware

Patentee after: Goodall Technologies Co.

Address before: American California

Patentee before: Goodall Technologies Co.

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20170120

Address after: Voight, Canada

Patentee after: Good Technology Holdings Ltd.

Address before: American Delaware

Patentee before: Goodall Technologies Co.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180119

Address after: Voight, Ontario, Canada

Patentee after: BlackBerry Ltd.

Address before: Voight, Canada

Patentee before: Good Technology Holdings Ltd.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20051116