有选择性地允许和禁止网络上访问软件应用的系统及方法

文档序号:6354199阅读:306来源:国知局
专利名称:有选择性地允许和禁止网络上访问软件应用的系统及方法
技术领域
使用许可过程来有选择性地提供对网络应用的访问的系统、方法、过程和计算机程序产品,它们提供改进的控制和跟踪能力。
背景技术
因特网的发展已导致在线商务空前的增涨,在当今世界,企业经常需要在线存在以保持竞争力。此在线存在的一部分是向顾客提供在线服务的能力。例如,现在银行在因特网上提供各种服务,以允许顾客从家里访问和管理它们的银行帐户。
在线应用已变为包裹运输行业中的重要工具。包裹承运人,如the United Parcel Services of America,Inc.(UPS),现在具有提供在线服务如包裹跟踪、签名跟踪、途中费率和时间计算、地址确认和发运的因特网网站。
为了在线提供服务,企业经常需要准予其顾客访问一个或多个应用。同时,企业需要控制对其应用的访问,并保证该应用的用户同意某些条款和使用条件。例如,企业可提供几种应用,并需要对某些层次的用户限制一些应用。或者,企业可向每人提供基础应用,并在额外费用或付费使用的基础上提供升级的或附加的功能。从而,需要一种改进的系统,以提供对在线应用的访问并控制使用它们的条款和条件。
控制和跟踪在线应用的使用的能力进一步被第三方软件的普及而复杂化,此软件代表用户访问在线服务和应用。例如,在包裹运输行业中许多顾客使用第三方发运系统来管理包裹发运。许多这样的发运系统包括在线部件,此部件自动地连接到承运人在线应用并向用户提供承运人在线服务或应用的好处。承运人和其它企业从这些第三方应用而受益,因为更多的人使用他们的服务。但是,在企业和在线应用的用户之间的辅助层使企业难以确定哪个用户在实际使用他们的在线供应。从而,在此行业中需要一种改进的系统,以便通过第三方应用来跟踪和控制在线服务和应用的使用。
因而,不断需要克服现有技术中缺陷的改良在线应用许可和访问方法及系统,其中,这些缺陷的一部分已在上面讨论。


前面已经概括地描述本发明,引入以下附图作为参考,它们不必按比例制图,在附图中图1为根据本发明实施例的网络应用许可和访问系统的结构的高层次视图。
图2为根据本发明实施例的高级流程图,此流程图描述终端用户接受许可协议条款并获得开发者密钥的过程。
图3为把用户介绍到网络应用提供者经营的网站的欢迎网页实例。
图4为根据本发明的网页实例,其中,此网页提示用户指明该用户是终端用户还是第三方开发者。
图5为根据本发明的网页实例,其中,此网页提示用户通过提供注册信息而注册。
图6为根据本发明的网页实例,其中,此网页提示用户选择用户标识符和口令。
图7为根据本发明的网页实例,其中,此网页提示用户登录到网站。
图8A和8B为根据本发明的网页实例,其中,此网页显示可供用户使用的在线工具列表。
图9为根据本发明的网页实例,其中,此网页提示用户在接收许可之前先提供附加信息。
图10为根据本发明的网页实例,其中,此网页通知用户已发放开发者密钥,并允许用户检索与在线工具有关的文档。
图11为根据本发明实施例的高级流程图,此流程图描述第三方开发者请求开发者密钥并接受许可协议条款的过程。
图12为根据本发明实施例的高级流程图,此流程图描述用户获得访问密钥并接受许可协议条款的过程。
图13为提示用户指定所请求访问密钥类型的网页实例。
图14A和14B为提示用户输入有效的开发者密钥以便获得访问密钥的网页实例。
图15为根据本发明的网页实例,其中,此网页提示用户在接收访问密钥之前先提供附加信息。
图16为显示访问密钥的网页实例。

发明内容
本发明提供用于控制对联网应用的访问的系统和方法。本发明的实施例公开使用开发者和访问密钥来验证和控制用户对一个或多个网络应用的访问。所公开的网络访问和许可系统包括客户计算机、一个或多个网络工具、以及配置为发放和准许使用开发者和访问密钥的访问应用。
根据本发明的实施例,公开一种向用户提供通过网络对应用的访问的系统,包括客户计算机;在网络上与该计算机通信的访问应用;与访问应用和客户计算机通信的一个或多个网络应用,其中,所述访问应用配置为向客户计算机发放开发者密钥和访问密钥,并允许在从客户计算机接收到输入时访问一个或多个网络应用,其中,所述输入包括有效的开发者和访问密钥。
根据本发明的另一实施例,公开一种向用户提供通过网络对应用的访问的系统,包括客户计算机;在网络上与该计算机通信的访问应用;与访问应用和客户计算机通信的一个或多个网络应用,其中,访问应用配置为向客户计算机发放开发者密钥和访问密钥,并允许在从客户计算机接收到输入时访问一个或多个网络应用,其中,所述输入包括有效的开发者和访问密钥,并且其中进一步地,访问应用另外配置为向客户计算机发送与用户的许可协议。
根据本发明的另一实施例,公开一种向用户提供通过网络对应用的访问的系统,包括客户计算机;在网络上与该计算机通信的访问应用;与访问应用和客户计算机通信的一个或多个网络应用,其中,访问应用配置为向客户计算机发放开发者密钥和访问密钥,并允许在从客户计算机接收到输入时访问一个或多个网络应用,其中,所述输入包括有效的开发者和访问密钥,并且其中进一步地,访问应用另外配置为跟踪顾客对网络应用的访问。
根据本发明的实施例,公开一种向用户提供通过网络对应用的访问的系统,包括客户计算机;在网络上与该计算机通信的访问应用;与访问应用和客户计算机通信的一个或多个网络应用,其中,访问应用配置为向客户计算机发放开发者密钥和访问密钥,并允许在从客户计算机接收到输入时访问一个或多个网络应用,其中,所述输入包括有效的开发者和访问密钥,并且其中进一步地,访问应用另外配置为在发放开发者密钥之前,向客户计算机发送第一许可协议,并在发放访问密钥之前,向客户计算机发送第二许可协议。
根据本发明的另一实施例,公开一种向用户提供对网络上在线工具的访问的系统,包括客户计算机;在网络上与客户计算机通信的访问控制应用,访问控制应用配置为授权用户访问在线工具,并进一步配置为向授权用户发放开发者密钥和访问密钥;以及配置为跟踪授权用户对在线工具的访问的访问跟踪应用。
根据本发明的实施例,描述一种限制用户对网络应用的访问的方法,包括以下步骤向用户发放第一密钥,其中,第一密钥准予用户访问与网络应用相关的输入记录格式,其中进一步地,输入记录包括第一密钥字段和第二密钥字段;向用户发放第二密钥;从用户接收输入;并且,如果所述输入的第一密钥字段包含第一密钥并且所述输入的第二密钥字段包含第二密钥,就允许网络应用处理所述输入。
根据本发明的又一实施例,描述一种限制用户对网络应用的访问的方法,包括以下步骤进入与用户的许可协议;向用户发放第一密钥,其中,第一密钥准予用户访问与网络应用相关的输入记录格式,其中进一步地,输入记录包括第一密钥字段和第二密钥字段;向用户发放第二密钥;从用户接收输入;并且,如果所述输入的第一密钥字段包含第一密钥并且所述输入的第二密钥字段包含第二密钥,就允许网络应用处理所述输入。
根据本发明的还一实施例,描述一种限制用户对网络应用的访问的方法,包括以下步骤进入与用户的第一许可协议;向用户发放第一密钥,其中,第一密钥准予用户访问与网络应用相关的输入记录格式,其中进一步地,输入记录包括第一密钥字段和第二密钥字段;进入与用户的第二许可协议;向用户发放第二密钥,从用户接收输入;并且,如果所述输入的第一密钥字段包含第一密钥并且所述输入的第二密钥字段包含第二密钥,就允许网络应用处理所述输入。
根据本发明的另一实施例,公开一种允许应用提供者跟踪第三方软件用户对网络应用的访问的方法,此方法包括以下步骤向第三方软件的开发者发放第一密钥,其中,第一密钥对于第三方软件的多个用户是共有的;向用户发放第二密钥,其中,用户是第三方软件的多个用户之一;要求提供第一和第二密钥,以访问网络应用;以及,用第一和第二密钥来跟踪对网络应用的访问。
具体实施例方式
现在结合附图更详细地描述本发明,在附图中示出本发明的优选实施例。然而,本发明能以不同的形式来体现,并且不应推断为限制于本文所述的实施例;相反,提供这些实施例使得本描述将是彻底和完全的,并会完全地把本发明的范围传达给本领域中技术人员。在本文中相同的参考号指相同的部件。
对于本发明所属领域中的且从前面描述中的论述和相关附图中受益的技术人员会想到本发明的许多修改例和其它实施例。从而,应该理解,本发明不局限于所公开的具体实施例,并且,认为所述修改例和其它实施例包括在后附权利要求的范围内。尽管在此使用具体的术语,但它们是在一般性的和叙述性的意义上使用,而不是限制性的。
以下段落描述用于控制对网络应用的访问并为网络应用提供许可的系统和方法。在优选实施例中,获得对网络应用的访问有三个阶段。在第一阶段中,开发者向网络应用提供者10注册,接收许可协议并被发放开发者密钥15,在优选实施例中,密钥15是十六字符的字母数字标识符。
在优选实施例中,开发者是已经或正在开发客户应用以访问网络应用的用户类型。当开发者接收开发者密钥15时,允许开发者访问与各种有效的网络应用有关的文档。另外,开发者密钥15使开发者与法律协议发生联系,开发者在访问应用文档之前必须同意此法律协议。在下述的各个实施例中,开发者可以是第三方软件开发者(为销售而编制软件的人)或终端用户开发者(为个人或公司使用而编制软件的人)。
在所述过程的第二阶段中,分配访问密钥25。在第三方软件开发者的情形中,对第三方开发者软件的特定安装分配唯一访问密钥25。在终端用户开发者的情形中,对终端用户开发者分配唯一访问密钥。在优选实施例中,与开发者密钥15一样,访问密钥25是十六字符的字母数字标识符。
用户与客户应用相互作用,或者客户应用不需人的介入即可自动地操作。例如,开发者可设计访问和使用由UPS经营的各种网络应用的发运系统客户应用。在此实例中,客户应用可下载用于特定公司或企业的发运信息,并自动地与UPS跟踪工具联系,以跟踪在营业日寄送的每个包裹。以此方式,由开发者创建的客户应用不需用户的介入就可访问网络应用。可替换地,用户使用客户应用以访问一个或多个网络应用。
在优选实施例中,对于客户应用的特定安装,分配访问密钥25。在一个实施例中,每次客户安装可与一个用户关联,或者可替换地, 多个用户共享访问客户应用的单次安装。术语终端用户在此用来描述终端用户开发者和/或安装第三方开发者应用的用户。但应认识到,分配给终端用户开发者的访问密钥25可被终端用户开发者所开发的客户应用的多个用户共享。相似地,分配给第三方开发者应用的安装的访问密钥25可由此安装的多个用户共享。
只有已经分配开发者密钥15,才能获得访问密钥25。在优选实施例中,单个开发者密钥15分配给客户应用,并且每次安装客户应用时接收唯一访问密钥25。一般来说,开发者密钥15识别用于访问联网应用的客户应用,并且访问密钥识别哪个用户和/或哪个客户安装正在访问所述工具。
过程的第三阶段是实际访问和使用网络应用。在优选实施例中,一旦分配有效的开发者和访问密钥,用户就可访问一个或多个网络应用。联网应用,如包裹跟踪工具,只需要开发者和/或访问密钥的有效组合。然而,其它应用需要附加的用户特定信息。例如,在一个实施例中,根据识别客户应用的有效开发者密钥15、识别客户应用安装的访问密钥25以及识别特定用户的用户标识符和/或口令,就可判定对网络应用的访问。
在以下段落和参考附图中描述这三个阶段的每一个。图1示出根据本发明实施例的网络应用许可和访问系统25的结构。在此实施例中,一个或多个客户计算机30通过网络40与网络应用提供者服务器35进行电子通信。在此图中描述的网络40可以是因特网或本领域中的其它任何公知网络。
在此图示中,许可和访问应用45驻留在网络应用提供者服务器35中,但容易明白,此应用可驻留在服务器之外,只要它能与一个或多个客户计算机30通信就行。而且在此实施例中,一个或多个在线工具50驻留在网络应用提供者服务器35中。在以下描述的实施例中,术语在线工具50指执行与包裹跟踪和运输有关的服务的软件应用。但本领域中技术人员容易明白,术语在线工具50应定义为包括所有的企业应用,包括与包裹运输行业无关的应用。一旦用户获得开发者密钥15和访问密钥20,在线工具50就变为可供客户计算机30使用。
在图1中示出在线工具文档文件55,文档文件55包括与一个或多个在线工具50有关的信息。一旦分配开发者密钥15,文档文件55就变为可供客户计算机30使用,并且,在一个实施例中,文档文件55提供用户访问和使用在线工具50所需的技术文档。在一个优选实施例中,对于每个在线工具50可使用独立的文档文件55。但本领域中技术人员容易明白,单个文档文件应用于多个工具,或者,多个文档文件与单个在线工具相关联。
另外,在图1的系统结构中示出几个文件,包括用户简档文件60、开发者密钥文件65和访问密钥文件70。用户简档文件60储存与第三方开发者75和终端用户80有关的信息,而开发者和访问密钥文件储存分配给各种类型系统用户的密钥。
图2为根据本发明实施例的高级过程流程图,并示出终端用户30通过因特网获得开发者密钥15并接受许可协议条款的过程。
在步骤100中,用户使用计算机30上的网络浏览器以连接到网络应用提供者10的网站,并且被提供识别该站点的介绍性网页(图3)。在优选实施例中,访问在线工具是网站所提供的几个选项之一,并且当用户激活超文本链接时,过程前进到网站的在线工具50部分。
在步骤101中,请求用户识别他或她是终端用户80还是第三方开发者75。图4示出用户可在步骤101中看见的网页类型。在此实施例中,网页把终端用户80描述为倾向于把一个或多个在线工具50引入到它们自己企业的e-商务许可应用中的用户,并且用户的企业应用不能用于其它方面的商业销售。相反,第三方开发者75被识别为倾向于把在线工具50引入到其它公司的e-商务应用或引入到用户计划向其它人推销的软件应用中的用户。与术语终端用户80和第三方开发者75有关的其它信息通过网页底部的超文本链接而可得到。
以下段落描述用于终端用户80的流程。用于第三方开发者75类型用户的流程在后面描述。当用户被识别为终端用户80时,过程前进到步骤102,在此步骤中,判断用户先前是否已向网络应用提供者10注册。如果用户已经注册,过程就前进到步骤104的登录程序。如果用户先前没有注册,过程就前进到步骤103,并且要求用户完成注册简档并请求选择用户名和口令。
图5为用户可接收到的网页实例,此网页在允许用户登录到系统之前向用户提示信息。在此实例中,需要姓名、住处、电子邮箱和电话号码。但容易明白,在替换实施例中可需要其它信息。例如,银行需要与用户核查和储蓄帐户有关的信息,以在对其应用提供访问之前确认用户是否加入该银行。
图6示出允许用户指定用户标识符和口令的登录网页。在此实施例中,用户还具有指定核实问题和响应的选项,如果用户以后忘记他或他的口令,就使用所述问题和响应。使用此种核实响应在本领域中是众所周知的。
在优选实施例中,从用户接收的注册简档信息由许可和访问应用45捕获,并储存在用户简档文件60中。当用户试图用注册用户名和口令登录时,许可和访问应用45通过比较输入的用户名和口令与用户简档文件60中的注册简档信息而验证用户名和口令。
在步骤104中,提示用户用有效的用户名和口令登录。图7示出允许用户输入他或她的用户标识符和口令的网页。在优选实施例中,登录网页包含连接到条款和条件网页的链接。条款和条件网页强加某些限制和法律义务,用户必须同意这些限制和法律义务才能访问在线工具50。在一个实施例中,许可和访问应用45在接收到有效的用户名和口令时开始工作。在替换实施例中,除非用户首先激活到条款和条件网页的链接,否则不会进行此过程。在另一实施例中,登录网页包括用户必须在其中打勾以肯定地表示用户已经阅读和同意所述条款和条件的框(未示出)。
接着,在过程中,用户具有退出(步骤105)或编辑先前提供的注册简档信息(步骤106)的选项。
在确认有效的用户名和口令时,过程前进到步骤107,在此步骤中,向用户提供可用在线工具50的列表。图8A和8B示出用户可在步骤107中看见的网页,此网页显示可用应用(在本文中称作在线工具50)的列表以及它们每一个的附加描述。每一个示出的在线工具50包括包裹跟踪和运输,但本领域中技术人员容易明白,本发明对于在网络上向用户提供在线应用的任何企业都同样有利。在这些图中,标为Get Tool的超文本链接与每一个在线工具50相关。
在此实例中,可供用户使用的在线工具50分为标准和高级工具。标准工具对用户是免费的,并且包括包裹跟踪、费率和服务选择、途中时间计算和地址确认。此提供者10所提供的高级工具包括签名跟踪和发运工具。如以下更详细描述的,高级工具不是所有用户都能使用的,或者是付费使用的。
用户通过点击与应用有关的链接而选择所需的在线工具50。当因此激活在线工具时,过程前进到步骤108,在此步骤中,判断是否已向用户分配开发者密钥15。如果用户未接收到开发者密钥15,过程就前进到步骤109,在此步骤中,用户接收终端用户许可协议85。
在本领域中,许可协议是众所周知的。在优选实施例中,许可协议布置成网页形式,并通过用户的浏览器而提供给他或她。然而,容易明白,可通过电子邮件或通过本领域中其它已知的方式而向用户提供许可协议。在优选实施例中,许可协议网页具有提示用户肯定地在两个框之一中打勾的区域,以接受或拒绝许可协议85的条款。如果用户拒绝同意协议85的条款,用户就返回到介绍性网页。如果用户接受协议85的条款,过程就前进到步骤110。
在步骤110中,提示用户提供附加的注册信息。图9的网页屏示出在过程的此阶段中请求的信息类型。在优选实施例中,附加注册信息由许可和访问应用45捕捉并储存在用户简档文件60中。在替换实施例中,附加注册信息储存在与用户简档信息独立的文件中。另外,本领域中技术人员容易明白,属于许可和访问应用45的一部分或全部功能可由驻留或不驻留在相同网络应用提供者服务器35内的不同应用来执行。
在完成所要求的字段时,开发者密钥15分配给用户(步骤111)。图10示出终端用户80在开发者密钥15发放时接收的网页类型。在此实施例中,开发者密钥15通过电子邮件发送给终端用户80,但容易明白,开发者密钥15可在网页上显示,或通过本领域中已知的其它方式提供给用户。
图10所示网页还提供连接到每个在线工具50的在线工具文档55的链接。在所公开的实施例中,在发放开发者密钥15时,每个在线工具50的文档55制作得可供终端用户80使用。但本领域中技术人员容易明白,可基于用户提供的注册信息而限制终端用户80所能使用的文档55。可替换地,网络应用提供者10列出所有的可用在线工具文档55,但对某些类型的用户,限制在线工具的使用。在另一替换实施例中,根据在线工具50的不同种类而发放不同的开发者密钥15。例如,一个开发者密钥15可发放给不收费的在线工具50,同时另一个开发者密钥15用于高级在线工具50。
每个用户都需要开发者密钥15来访问在线工具50。在此示例中,在完成所要求的注册信息时, 自动地发放开发者密钥15。可替换地,网络应用提供者10在发放开发者密钥15之前要求用户人工授权。在另一实施例中,一种类型的用户,如终端用户80,可被自动地发放开发者密钥15,而另一种类型的用户,如第三方开发者75,则要求在发放开发者密钥15之前进行授权。本领域中技术人员容易认识到,用户输入的任何或全部注册信息可用于判断开发者密钥15是自动地发放还是要求人工授权过程。
一旦已向用户发放开发者密钥15并且用户已选择在线工具50,过程就前进到步骤112,在此步骤中,判断用户是否已选择高级工具50。在优选实施例中,一些在线工具50可供具有有效开发者密钥15的全部用户使用,而其它高级在线工具只供选择用户使用。在替换实施例中,网页只列出授权用户选择的那些在线工具50,而绕过对高级服务请求的检查。一旦许可和访问应用45确定用户被授权访问所选在线工具,过程就前进到步骤114,并且用户接收与所选工具50有关的文档55。
在公开的实施例中,如果用户请求未授权用户访问的在线工具50的文档55,就在步骤115中向网络应用提供者提出授权请求90。如果授权请求90被批准,网络应用提供者10就通知用户(步骤116)授权用户访问在线工具50。在优选实施例中,储存在开发者密钥文件65中的数据确定用户被授权访问哪个在线工具50。当准予授权请求90时,更新开发者密钥文件65,以反映用户更大的访问权利(步骤117)。然而,本领域中技术人员容易认识到,用户访问权利可分别储存或包含在网络应用许可和访问系统25的其它文件的一部分中。
在优选实施例中,批准授权请求90是基于市场决策的人工步骤。但本领域中技术人员容易明白,批准过程可以是自动的,并且基于用户简档中的信息或基于从用户请求的附加信息进行判断。
用户在步骤114中接收的在线应用文档55可采取多种形式。在优选实施例中,文档55详细解释如何访问和使用在线工具。例如,文档55包括用户手册95、技术规范书100和一个或多个文件格式105,如输入和输出记录格式。
前面步骤描述终端用户80获得开发者密钥15的过程。然而,术语终端用户的意义广泛,并不局限于单个用户。例如,在本文中所用的术语终端用户80可以是用于公司的客户应用的开发者。在此实例中,终端用户开发者,虽然不是第三方开发者75(因为将要开发的软件不用于商业销售),但仍然开发由其它人使用的客户应用。因而,公司内的多个用户可使用终端用户开发者的客户应用并共享发放给终端用户80的开发者密钥。
以下段落描述根据本发明实施例的流程,其中,第三方开发者75同意开发者许可协议110并接收开发者密钥15。
参照图11中的高级流程图,在步骤200中,用户访问网络应用提供者10的网站,并接收介绍性网页。在步骤201中,判断用户是终端用户80还是第三方开发者75。在第三方开发者75的情形中,过程前进到步骤202,在此步骤中,判断是否已向第三方开发者75发放开发者密钥15。如果未发放开发者密钥15,过程就前进到步骤203,而且,产生第三方开发者对开发者密钥15的请求,并向网络应用提供者10提出此请求。
在优选实施例中,批准第三方开发者75的开发者密钥15请求的过程是人工的,因为这使网络应用提供者10能更有力地控制试图把在线工具50作为商业应用一部分的用户。在此过程中,网络应用提供者10人工审查开发者75的请求,并作出是否授予开发者密钥15的企业决策(步骤204),此开发者密钥最终将包含到软件中并销售给公众。当然,本领域中技术人员容易认识到,对于开发者的批准过程也可以是自动的,并可基于开发者注册信息或基于网络应用提供者10要求的附加信息而进行。
如果网络应用提供者接受开发者密钥15请求,过程就前进到步骤205,在此步骤中,第三方开发者75接收开发者许可协议110。由于发放的开发者密钥15用于商业软件,因此,进入与第三方开发者75的开发者许可协议110中的步骤可以是人工的,以使网络应用提供者10能更有力地控制此交易。当然,本领域中技术人员容易明白,与许可第三方开发者75有关的步骤也容易地自动进行。
如果第三方开发者75接受开发者许可协议110并具有有效的用户名(步骤206),过程就前进到步骤207,并且网络应用提供者10更新一个或多个文件,以向具有此开发者密钥15的用户提供适当的应用。在公开的实施例中,发放给第三方开发者75的开发者密钥15将包含在商业软件中,并且此软件的每个用户将使用相同的开发者密钥15。在一个实施例中,当发放的开发者密钥15用于商业软件中并且标记设置为指示多个用户使用密钥15时,更新开发者密钥文件65。容易明白,对于发放给第三方开发者75的开发者密钥15,可保留独立的文件,而且,一些或全部数据可驻留在网络应用许可和访问系统25的一个或多个其它文件中。
再参照图11,当确定用户具有有效的开发者密钥15时,提示用户登录(步骤208)并选择用户请求其文档55的在线工具50(步骤209)。作为步骤208的登录过程的一部分,用户可选择退出系统(步骤210)或更新他或她的用户简档信息(步骤211)。在第三方开发者75的情形中,在步骤208中登录到系统的用户可以是第三方开发者75或任何购买和使用由第三方开发者75销售的第三方软件的用户。可替换地,步骤208中的用户可以是授权使用第三方开发者软件的特定安装的几个用户中的任一个。第三方商业软件的用户共享发放给第三方开发者75的开发者密钥15,其中,第三方开发者75开发此软件。然而,每次安装此软件时,被赋予唯一的访问密钥25。
当用户选择在线工具50时,过程前进到步骤212,在此步骤中,判断用户是否已访问所选择的工具50。许可和访问应用45处理用户对与所选在线工具50有关的文档55的请求。
在一个实施例中,开发者密钥文件65包括用于指定开发者密钥15的在线工具50的列表。在此实施例中,第三方软件的所有用户和/或此软件的所有客户安装都具有相同级别的授权。在替换实施例中,在访问密钥25级别确定用于一组工具50的授权级别,并且根据用户的访问密钥25来判断此用户是否已访问指定的工具。在另一实施例中,多个用户已访问特定安装的第三方开发应用,并且根据单个用户的识别而判断用户是否访问在线工具50。
在又一实施例中,用户可访问所有在线工具50的文档55,但只授权访问其中一些工具。可替换地,可为每个在线工具50保留授权用户的独立文件,此文件用于判断指定用户是否被授权请求指定在线工具50的文档55。再者,可在开发者密钥级别、访问密钥级别或单个用户级别上控制对联网应用的访问。本领域中技术人员容易认识到,控制用户访问的许多方法在本领域中都是众所周知的,并可用于本发明。
如果用户被授权访问所选择的在线工具50,过程就前进到步骤213,允许用户访问所选工具50的在线工具文档55。如果用户来被授权访问所选择工具50的文档55,过程就前进到步骤214,在此步骤中,通知用户他或她缺少对于所选工具50的授权。
图12是描述分配访问密钥25的过程的流程图。在以下段落中描述的过程应用于各个被分配访问密钥25的用户。此过程还应用于向第三方商业应用(由单个用户或多个用户操作)的各次安装分配访问密钥25。在步骤300中,向用户提供欢迎网页并提供请求访问密钥20的链接。在图4中,这可在网页左侧上的Get Access Key(获得访问密钥)链接中看到。当用户点击Get Access Key链接时,用户接收与图13所示相似的网页,并被提示请求超文本标记语言访问密钥(以后称作HTML访问密钥115)或可扩展标记语言访问密钥(以后称作XML访问密钥120)。HTML和XML是在本领域中众所周知的标准,并用于定义万维网网页上的以及企业往来文档中的组元。两种格式共享相似的标签结构,但是,HTML定义文档中的组元如何显示,而XML定义包含什么样的组元。HTML和XML的使用是示例性的,其它数据格式和/或语言在本领域中是众所周知的,并可用于本发明。
用户通过点击相关的链接而选择HTML访问密钥115或XML访问密钥120。当用户选择两种类型的访问密钥之一时,过程前进到步骤301,在此步骤中,如果用户请求HTML访问密钥115,用户就接收与图14A相似的网页;或者,如果用户请求XML访问密钥120,用户就接收与图14B相似的网页。在步骤301中,提示用户输入他或她的开发者密钥15。在替换实施例中,不提示安装第三方软件的用户输入开发者密钥15,因为当第三方软件连接到网络应用许可和访问系统25时自动地送出有效密钥15。事实上,安装第三方软件的用户甚至意识不到与正在使用的软件有关的开发者密钥15。事实上,在一些实施例中,第三方和/或终端用户软件与许可和访问应用45之间的通信可以是自动的且根本不需人为干涉的。
由用户或客户应用发送的开发者密钥15被许可和访问应用45捕获,并与开发者密钥文件65进行验证。如果接收有效的开发者密钥15,过程就前进到步骤302。
在步骤302中,向用户示出访问许可协议125,并提示接受或拒绝协议125的条款。如果用户接受访问许可协议125的条款,过程就前进到步骤303,并且提示用户提供附加的用户信息。图15示出向寻求访问密钥的用户请求的附加信息的类型。在优选实施例中,以黑体字型示出请求字段。本领域中技术人员容易认识到,根据网络应用提供者10的业务需要以及用户请求访问的在线工具50,可请求不同类型的用户信息。另外,根据用户的类型或所请求的在线工具50,向用户请求的信息可以不同。
当提供请求信息时,过程前进到步骤304,产生并分配访问密钥20。在优选实施例中,访问密钥20由许可和访问应用45产生,并储存在访问密钥文件70中。但本领域中技术人员容易明白,访问密钥20可由独立的应用产生和/或储存在网络应用许可和访问系统25的其它文件或数据库中。相似地,当过程到达步骤304时,可自动地产生访问密钥20,或者,所述过程包括人工授权步骤,在此步骤中,网络应用提供者10在分配访问密钥20之前,仔细检查每个请求。例如,人工步骤在发放访问密钥20之前要求签名的访问许可协议125。
图16示出网络应用提供者10用于提供访问密钥20的网页类型。访问密钥20可由网页提供,或可替换地,通过电子邮件或本领域中技术人员熟悉的其它数据传送方法来提供。
在接收到开发者密钥15和访问密钥20时,用户访问一个和多个在线工具50。在优选实施例中,用户对于所选择的在线工具50而接收的文档55包括描述输入到工具50中的数据格式。每个记录格式包括用于用户的开发者密钥15和访问密钥20的字段。当用户访问在线工具50时,执行检查,以确认输入记录包括有效的开发者密钥15和访问密钥20。如果两个密钥都有效,那么,在线工具50就处理输入的数据。如果一个或多个密钥无效,就返回错误消息。
在替换实施例中,输入记录只包含访问密钥20,许可和访问应用45从把发放的访问密钥链接到开发者密钥的文件或数据库获得开发者密钥。在优选实施例中,只有访问密钥20经过XML处理,并且开发者密钥和访问密钥都经过HTML处理。
在优选实施例中,许可和访问应用45在把输入数据传递到在线工具50之前,检查开发者密钥15和访问密钥20。但本领域中技术人员容易明白,独立的应用可执行此有效性检查,或者,在线工具50在处理用户数据之前执行此验证手续。在替换实施例中,工具50的选择判断由在线工具50还是由独立的应用来执行密钥验证手续。
跟踪功能也可以是密钥验证手续的一部分。因而,每次用户访问在线工具50时,或可替换地,每次第三方商业应用的客户安装用于访问在线工具50时,用开发者密钥15和访问密钥20更新跟踪文件,其中,访问密钥20用于访问工具50。在优选实施例中,单个数据库用于跟踪对每个在线工具50的所有访问。但本领域中技术人员容易明白,独立的跟踪文件可与每个在线工具50相关或与每个开发者或访问密钥相关。
在以上描述的过程中,开发者密钥15分配给每个客户应用,所述客户应用用于访问一组在线工具50。指定客户应用的每个用户使用与该客户应用有关的开发者密钥15。在优选实施例中,开发者密钥15嵌入到客户应用中,但容易明白,也可提示用户提供开发者密钥,作为客户应用操作的一部分。
与开发者密钥15形成对比,分配唯一访问密钥25以识别客户应用的多次安装。在一个实施例中,客户应用的每个用户被分配唯一访问密钥25。在替换实施例中,访问密钥25分配给由多于一个用户使用的客户应用的单次安装。因而,在此替换实施例中,用户与其它用户共享开发者密钥15和访问密钥25。
在许多情况下,网络应用提供者10不需要用户特有信息,并只基于开发者和访问密钥组合而允许访问一个或多个在线工具50。然而,在其它实施例中,访问一个或多个在线工具50要求各个用户提供用户特有信息。在此情况下,在准予访问之前,除了开发者和访问密钥的结合之外,还提示用户提供用户标识符和/或口令。
引导用户访问联网应用的此开发者和访问密钥在跟踪和控制对在线工具50的访问中给予网络应用提供者10很大的灵活性。访问密钥20允许许可和访问应用45跟踪商业软件的哪个用户和/或哪次安装正用于访问工具50。这又允许应用提供者10跟踪和控制用户使用不同客户应用的频率。
因而,当在特定用户和第三方开发者75之间有业务关系时,此双密钥系统表示网络应用提供者10。当然,本领域中技术人员容易明白,在两方或更多方之间建立此关系时所涉及的步骤容易适用于因特网应用的任何提供者。
在动态控制对其在线工具50的访问时,用于许可和应用访问的此种双密钥方法还向网络应用提供者10提供很大的灵活性,提供者10具有在开发者密钥15层次或访问密钥25层次上动态准予或禁止对其工具访问的能力。在优选实施例中,提供者10通过废弃开发者密钥15而禁止客户应用的所有用户。可替换地,提供者10通过废弃访问密钥25而禁止客户应用的各次安装或用户。此功能允许网络应用提供者10监视和动态地调整它与各个用户的,并如果需要的话,与用户组的关系。
本领域中技术人员容易认识到,本发明使用多于两个密钥时是同样有利的。例如,在替换实施例中,第一密钥分配给客户应用的开发者,第二密钥分配给客户应用的特定安装,而第三密钥分配给所述安装的特定用户。以此方式,本发明允许应用提供者10在开发者、客户或用户层次上跟踪和动态控制对在线工具50的访问。
因而,无论何时一个或多个用户代表另一用户或团体通过软件来访问联网应用本发明都是同样有利的。即使在用户正通过企业或公司所共有的软件而访问应用时,本发明也允许应用提供者跟踪各个用户对应用的访问。例如,在另一实施例中,企业或公司分配第一密钥给部门,分配第二密钥给在此部门中的领薪雇员,并分配第三密钥给在此部门中的小时工。在此实施例中,公司通过部门和员工的分类而跟踪和控制对其工具50的访问。这些实施例是示例性的,本领域中技术人员容易明白,在其它各种范围内,使用本发明来跟踪和控制对联网应用的访问的能力是同样有优势的。
在此详细描述中,应该指出对于本领域中技术人员很显然,只要基本不偏离本发明的原理,就可对优选实施例作出各种变化和修改。而且,根据后附权利要求所述,这些变化和修改认为是包括在本发明的范围内。进而,在随后的权利要求中,所有方式或步骤以及功能元件的结构、材料、操作和等效物都认为包括用于执行它们所述功能的任何结构、材料或操作。
权利要求
1.一种有选择性地向用户提供对网络应用的访问的系统,此系统包括客户计算机;通过网络与所述客户计算机进行电子通信的访问应用;以及与所述访问应用和所述客户计算机进行电子通信的网络应用;其中,所述访问应用配置为向所述客户计算机发放开发者密钥和访问密钥,并允许在从所述客户计算机接收到输入时,访问所述网络应用,其中,所述输入包括所述开发者和访问密钥。
2.如权利要求1所述的系统,其中,所述访问应用进一步配置为保留所述客户计算机访问所述网络应用的记录。
3.如权利要求1所述的系统,其中,所述访问应用另外配置为向所述客户计算机发送许可协议。
4.如权利要求1所述的系统,其中,所述访问应用另外配置为在发放所述开发者密钥之前,向所述客户计算机发送第一许可协议,并进一步配置为在发放所述访问密钥之前,向所述客户计算机发送第二许可协议。
5.一种有选择性地向用户提供对网络上在线工具的访问的系统,此系统包括客户计算机;通过所述网络与所述客户计算机进行电子通信的访问控制应用,所述访问控制应用配置为授权所述用户访问所述在线工具,并且,所述访问控制应用进一步配置为向所述授权用户发放开发者密钥和访问密钥;以及与所述访问控制应用进行电子通信的访问跟踪应用,所述访问跟踪应用配置为跟踪所述授权用户对所述在线工具的访问。
6.一种有选择性地向用户提供对网络应用的访问的方法,包括以下步骤向用户发放第一密钥,其中,所述第一密钥准予所述用户访问与所述网络应用相关的输入记录格式,其中进一步地,所述输入记录格式包括第一密钥字段和第二密钥字段;向所述用户发放第二密钥;从所述用户接收输入,所述输入与所述网络应用相关,并且根据所述输入记录格式进行格式化;以及如果所述输入的所述第一密钥字段包含所述第一密钥并且所述输入的所述第二密钥字段包含所述第二密钥,则允许所述网络应用处理所述输入。
7.如权利要求6所述的方法,其中,所述第一密钥是开发者密钥,而所述第二密钥是访问密钥。
8.如权利要求6所述的方法,进一步包括在向所述用户发放所述第一密钥之前进入许可协议的步骤。
9.如权利要求6所述的方法,进一步包括在向所述用户发放所述第二密钥之前进入许可协议的步骤。
10.如权利要求6所述的方法,进一步包括在向所述用户发放所述第一密钥之前进入第一许可协议并且在向所述用户发放所述第二密钥之前进入第二许可协议的步骤。
11.如权利要求6所述的方法,其中,所述用户是终端用户。
12.如权利要求6所述的方法,其中,所述用户是第三方开发者软件的用户。
13.如权利要求6所述的方法,其中,发放给所述用户的所述第一和第二密钥对于所述用户是唯一的。
14.如权利要求6所述的方法,其中,所述第一密钥是与其它用户所共有的,而所述第二密钥对于所述用户是唯一的。
15.一种允许应用提供者跟踪第三方软件的用户对网络应用的访问的方法,所述方法包括以下步骤向所述第三方软件的开发者发放第一密钥,其中,所述第一密钥是所述第三方软件的多个用户所共有的;向用户发放第二密钥,其中,所述用户是所述第三方软件的所述多个用户之一;要求提供所述第一和第二密钥,以访问所述网络应用;以及通过所述第一和第二密钥而跟踪对所述网络应用的所述访问。
16.如权利要求15所述的方法,其中,所述第二密钥对于所述用户是唯一的。
17.如权利要求15所述的方法,进一步包括在发放所述第一密钥之前进入与所述开发者的许可协议的步骤。
18.如权利要求15所述的方法,进一步包括在发放所述第二密钥之前进入与所述用户的许可协议的步骤。
19.如权利要求15所述的方法,其中,要求提供所述第一和第二密钥以访问所述网络应用包括以下步骤向所述开发者提供用于与所述网络应用相关的输入文件的数据格式,其中,所述记录布局包括第一密钥字段和第二密钥字段;以及确认所述网络应用的所述输入文件在所述第一密钥字段中包含所述第一密钥并在所述第二密钥字段中包含所述第二密钥。
20.如权利要求15所述的方法,其中,通过所述第一和第二密钥而跟踪对所述网络应用的所述访问包括以下步骤使用所述第一和第二密钥更新跟踪文件以表示所述网络应用被访问。
21.一种有选择性地提供对网络上软件的访问的方法,所述方法包括以下步骤向第一个第三方开发者发放第一开发者密钥,并向第二个第三开发者发放第二开发者密钥,其中,所述第一个第三方开发者与第一客户应用相关,而所述第二个第三方开发者与第二客户应用相关;向第一用户发放第一访问密钥,其中,所述第一用户是通过所述第一客户应用而访问所述软件的第一多个用户中的一个;向第二用户发放第二访问密钥,其中,所述第二用户是通过所述第二客户应用而访问所述软件的第二多个用户中的一个;以及向所述第一和第二用户提供对所述软件的访问。
22.如权利要求21所述的方法,进一步包括以下步骤跟踪所述第一和第二用户对所述软件的访问;保留与所述第一和第二用户相关的跟踪数据;以及比较与所述第一用户相关的所述跟踪数据和与所述第二用户相关的所述跟踪数据。
23.如权利要求21所述的方法,进一步包括以下步骤跟踪所述第一和第二多个用户对所述软件的访问;保留与所述第一和第二多个用户相关的跟踪数据;以及使与第一多个用户有关的所述跟踪数据和所述第一个第三方开发者相关联,并且,使与第二多个用户有关的所述跟踪数据和所述第二个第三方开发者相关联;比较与所述第一个第三方开发者相关的所述跟踪数据和与所述第二个第三方开发者相关的所述跟踪数据。
24.如权利要求21所述的方法,进一步包括以下步骤禁止所述第一用户对所述软件的访问,而不影响所述第二用户对所述软件的访问。
25.如权利要求21所述的方法,进一步包括以下步骤禁止所述第一用户对所述软件的访问,而不影响所述第一多个用户中的其它用户对所述软件的访问,其中,所述第一多个用户正通过所述第一客户应用访问所述软件。
26.如权利要求21所述的方法,进一步包括以下步骤禁止所述第一多个用户对所述软件的访问,而不影响所述第二多个用户对所述软件的访问。
27.一种有选择性地允许和禁止对软件应用的访问的系统,此系统包括驻留在第一和第二计算机系统上的第一客户应用;驻留在第三计算机系统上的第二客户应用;驻留在软件提供者系统上的访问应用;其中,所述访问应用配置为使第一开发者密钥与所述第一客户应用相关,并使第二开发者密钥与所述第二客户应用相关;其中,所述访问应用配置为使第一访问密钥与所述第一计算机系统相关,使第二访问密钥与所述第二计算机系统相关,并使第三访问密钥与所述第三计算机系统相关;以及其中进一步地,所述访问应用配置为在接收包含所述第一开发者密钥和所述第一访问密钥中至少一个的输入时,允许所述第一计算机系统访问所述软件应用;并且配置为在接收包含所述第一开发者密钥和所述第二访问密钥中至少一个的输入时,允许所述第二计算机系统访问所述软件应用;以及配置为在接收包含所述第二开发者密钥和所述第三访问密钥中至少一个的输入时,允许所述第三计算机系统访问所述软件应用。
28.如权利要求27所述的系统,其中,所述访问应用配置为禁止对所述第一计算机系统的访问,而不影响所述第二和第三计算机系统对所述软件应用的访问。
29.如权利要求27所述的系统,其中,所述访问应用配置为禁止对所述第一和第二计算机系统的访问,而不影响所述第三计算机系统对所述软件应用的访问。
30.如权利要求27所述的系统,其中,所述访问应用配置为禁止对所述第三计算机系统的访问,而不影响所述第一和第二计算机系统对所述软件应用的访问。
31.如权利要求27所述的系统,其中,所述访问应用配置为跟踪所述第一、第二和第二计算机系统对所述软件应用的访问。
32.如权利要求31所述的系统,其中,所述访问应用配置为收集和比较与所述第一、第二和第二计算机系统相关的跟踪数据。
全文摘要
本发明涉及有选择性地允许和禁止网络上访问软件应用的系统及方法,本发明提供用于控制对联网应用的访问的系统和方法。本发明的实施例公布使用开发者和访问密钥来验证和控制用户对一个或多个网络应用的访问。所公布的网络访问和许可系统包括客户计算机、一个或多个网络工具、以及配置为发放和准许使用开发者和访问密钥的访问应用。
文档编号G06F21/00GK1695101SQ02805075
公开日2005年11月9日 申请日期2002年2月15日 优先权日2001年2月16日
发明者埃里克·戴维斯, 史蒂文·芸, 詹姆斯·阿佩尔鲍姆, 格里·萨默, 丹·特伯维尔, 达文·吉廷斯, 达文·扬 申请人:美国联合包裹服务公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1