专利名称:用于属于不同机构的用户的无需证书复制的认证方法
技术领域:
本发明涉及根据权利要求1的前序部分的用于允许用户接入因特网的方法。
背景技术:
特别地,本发明旨在提高用户接入因特网的可能性。现在,因特网对于许多人来说已变成不可缺少的工作工具,并且由于无线网络 (例如WLAN),用户甚至可以从办公室外面接入因特网。例如,机场、铁路车站和图书馆具有热点区(Hot Spots),即用户可以通过网关连 接到因特网的接入点。在给定机构(Organization)的热点区内,通常仅对具有向该机构注册的有效帐 户的用户许可对此服务的访问。因此,给定机构的用户不能在由于兴趣缺乏或基础设施故障而未被所述机构覆盖 的区域中接入因特网。为了克服这些问题,已构思多种解决方案,其允许第一机构的用户通过第二机构 的接入点接入因特网。相对于使用中的平台,这些解决方案中的某些有时甚至要求用户的客户端的复杂 配置。在容易使用和客户端配置方面优选的其它解决方案仅仅通过将未被包括在授权 用户列表中的那些用户重新引导至不同机构的认证服务器而在网关层级操作。从专利US 5,898,780可已知后面的解决方案之一,该专利公开了一种方法和装 置,其允许用户通过使用他/她不具有帐户的本地因特网服务提供商(ISP)从远程位置接 入因特网。用户通过使用关于该远程ISP的他/她的帐户的证书(用户名和口令)向本地 ISP 的系统进行签署(signs with the local ISP' s system)。本地ISP的服务器认识到用户所输入的证书包含允许识别本地ISP的服务器的一 条信息,并向后者发送询问以便授权用户通过本地ISP接入因特网。然而,这种解决方案遇到用户的可察觉(sensible)数据(用户名和口令)被提供 给本地ISP的服务器、因此所述数据可能受到嗅探攻击的缺点。使用与从专利US 5,898. 780已知的原理相反的原理的解决方案已被特伦托大学 (University of Trento)使用并以Uni-fy的名义公诸于众。根据这种解决方案,假设用户客户端向大学的网关发送DHCP请求,该网关随后对 其分配IP地址。网关具有某些防火墙规则,每个根据发送数据分组的用户是否被包括在授权用户 列表中而具有两种可能动作。如果用户未被包括在授权用户列表中,则该数据分组将被路由到将处理授权的关 守(gateke印er)。根据“强制网络门户(captive portal) ”型的方法,将未授权用户引导 到本地网页,在那里,他/她可以选择他/她希望从其获得授权的机构。
3
在这里,使用户客户端与所选机构通信,并根据该机构所要求的协议来执行认证程序。用这种解决方案,特伦托大学的网络设备无论如何不能且不可获悉用户的可察觉 数据,所有可察觉数据被直接发送到所选机构。如何认证成功,则所选机构将向大学的关守发送授权请求,该授权请求将使用户 的状态从未授权变为已授权,由此允许他/她接入因特网。这种解决方案具有以下缺点不容易识别连接用户(例如,由于安全或开发票 (invoicing)原因)并且要求使用户的假名与向远程认证机构注册的用户身份相关联。此外,这种解决方案具有显著的系统可缩放性限制,因为用户想要被其认证的机 构的手动选择假设大学的网关知道所有现有的认证机构,并且其随着对每一个单个认证机 构的认证程序的任何修改而被不断地更新。随着认证机构数目的增加,大学的系统管理的复杂性也显著增加。
发明内容
本发明的主要目的是通过提供一种替换方法来克服现有技术的缺点,该替换方法 用于允许通过他/她最初未被认可(accredit)的机构的网关来接入因特网。通过结合了 在所附权利要求中阐述的特征的方法来达到此目的,所附权利要求意图作为本说明书的不 可缺少的部分。本发明是基于将提供认证证书的时刻(和接收者)分开的思想。更具体而言,该思想是当该用户连接到第一机构的网关并发送因特网接入请求 时,所述网关为第二机构提供对用户进行许可所需的证书的一部分。例如,用户可以提供第 二机构的用户名和标识符。如果接收到此类请求的网关未将用户识别为授权用户,则其将使用户重新引导至 第二机构的网页以供他/她的认证。在这里,通过所述网页,用户还为第二机构提供他/她的识别所需的证书,以便第 二机构可以验证用户的身份并允许他/她浏览因特网。这种解决方案提供多个优点。首先,可以由第一机构通过在因特网接入请求中提供的证书来识别用户,由此简 化出于公共安全或开发票原因进行的用户识别;然而,并不将用户的所有证书提供给第一 机构,这使得这种解决方案针对嗅探攻击而言相当稳健。其次,这种解决方案可容易地缩放,因为可以通过简单地添加能够执行根据本发 明的方法的功能的计算机系统(特别是网络节点和服务器)来向联盟(federation)添加 新的机构。
0030]有利的是,由用户提供给第一机构的证书是通过欢迎网页输入的且以namelg realm(名称@域)格式包括用户名,其中,realm表示第二机构的域名。基于指定的域,每个网关可以通过发送到DNS的请求或通过与存储在网关层级处 并包含属于该联盟的机构的所有认证服务器的列表的比较找到用户所属的机构的认证服务器。为了保证对网关与不同机构的认证服务器之间的通信进行认证,有利地签署信令 消息并优选地通过使用不对称加密算法对该信令消息进行编码,该不对称加密算法诸如PGP (Pretty Good Privacy)所使用的不对称加密算法,其使用公钥和私钥两者。以简化添加(或去除)新机构时的密钥交换管理为目标,该架构有利地包括密钥
管理服务器。每当添加新机构时,相关联的认证服务器的公钥被公布在此服务器上;各种机构 的网关将通过安全的通信协议(例如,HTTPS)周期性地与之联系以便更新各自的密钥列表。将密钥列表存储在网关层级保证密钥管理服务器的任何故障不会危及服务;在最 坏的情况下,新的认证服务器将以几小时的延迟被添加到系统。密钥管理服务器被各种机 构的所有网关通过存在于所有所述网关上的其自己的公钥认证,并且不允许外部用户未经 许可就进入他/她自己的机构。
通过以非限制性示例的方式提供的以下说明和附图,将更清楚本发明的其它目的 和优点,在附图中-图1示出允许属于任何所述机构的用户接入因特网的机构联盟;-图2是允许属于第一机构的用户通过第二机构的接入点接入因特网的过程的图 形表示;
具体实施例方式现在参照图1,示出了连接到因特网1的机构(E1、E2、E3)的联盟。为了本说明的目的,术语‘机构’指的是可以许可用户接入因特网或操纵结构化用 户管理系统的任何实体。在图1的示例中,机构El和E2装配有计算机系统,特别是网络节点,其包括网关 GW、认证服务器AS、和包含认证机构的用户所需的信息的数据库DB。网关GW执行所有防火墙功能并过滤任何未授权业务,而认证服务器AS在数据库 DB (MySQL或LDAP数据库,或口令文件)中或通过诸如RADIUS的标准协议验证用户的证书。在图1的示例中,机构E2装配有接入点3,其通过接入点3为用户提供无线接入。机构El装配有连接到网关GW的用于为用户提供有线接入的交换机4。机构E3是没有其自己的接入网络、但具有其自己的用户的因特网服务提供商 ISP。此机构装配有认证服务器AS和数据库DB,如同机构El和E2 —样;认证服务器AS 通过路由器RT连接到因特网,路由器RT与机构El和E2的网关GW不同,其不能执行下述 用户重新引导功能。当然,可以用网关GW替换路由器RT,虽然在这种情况下,其某些功能将保持不用。仍参照图1和2的示例,用户2是机构El的授权用户(S卩,属于该域),并向他/ 她未得到认证的机构E2发送网页请求。这种情况可能例如在机构El的用户(例如,公司ALFA的员工)在机场或在另一 机构(例如,公司BETA)附近并希望通过使用机场的基础设施或公司BETA的那些来接入因 特网时发生。
用户2验证机构E2的热点区的存在时,他/她发送DHCP请求,应该请求,他/她 被分配IP地址。这时,用户2可以发送因特网接入请求。网关GW截取此请求并将客户端重新引导至欢迎页面,在该欢迎页面上,用户输入 通过机构El进行他/她的认证所需的他/她的证书的一部分。根据本发明,提供给机构E2的证书包含关于用户想要得到其认证的机构、即本文 所述的示例中的机构El的至少一条信息。优选地,这些证书由用户2的用户名和机构El的域名组成,其将必须对用户2进 行认证。可以在单独的字段中输入用户名和域名,否则,如果用户2被要求以nameOrealm 格式输入帐户,则可以由网关自动地获得该用户名和域名,其中,‘name’是用户2的用户名 且realm表示机构El的域名。通过使用所述用户所提供的证书、机构e2可以因此联络机构El以便使用户2被 认证。借助于规则的以下分级结构来确定机构El的认证服务器的IP地址。首先,机构E2的网关GW将预定义名称放在域(例如authSerV)前面并向DN发 送请求以便知道用户来源(即,机构El之一)认证服务器AS的IP地址。例如,对于用户mario. rossiOorganizationl. it而言,网关GW将在DNS中搜索 authserv. organizationl. it 白勺 IP iiktlh。被放在域前面的名称对属于同一联盟的机构的所有认证服务器而言是相同的,以 便可以以简单的方式表达将由网关发送到DNS的询问(query)。当从DNS接收到肯定答复时,网关GW将使用户2重新引导至机构E2的认证服务 器;如果搜索不成功,则该过程将进入下一个规则。根据此下一个规则,在机构E2的本地数据库中搜索机构El的认证服务器AS的IP 地址。根据本发明,各种机构的所有网关GW将相应认证服务器的IP地址和域列表存储 在本地数据库中。所述列表被预定义中央服务器周期性地更新,该预定义中央服务器优选地为所有 联盟机构所共用。如果在所述数据库中的搜索也未成功,则接收到网页请求(webrequest)的网关 将切换到最后规则,根据该规则,将使用户重新引导至先前在安装网关时设置的默认认证 服务器。此最后规则基本上允许将因特网接入请求中的由用户明确指定的任何信息的不 存在识别为关于预定义机构的信息。换言之,如果用户2仅将他/她的名称提供给网关GW,而不指定他/她想要得到认 证的机构1的域,则网关将把此信息解释为期望将通过默认机构进行认证。一旦已找到认证服务器,网关将使客户端重新引导至认证服务器,并且用户将通 过输入他/她自己的口令而得到认证,由此返回到标准认证程序,诸如由类似NoCat系统的 ‘强制网络门户’系统所提供的标准认证程序。
如果用户名和口令验证成功,则认证服务器将向用户2的客户端发送授权消息, 该消息随后将被重新引导至网关GW。后者将输入必要的防火墙规则,以便提供包括在用户简档中的服务,并且随后将 使用户重新引导至最初请求的网页。上述过程在图2中举例说明,图2示出用户2的客户端、机构E2的网关、机构El 的认证服务器、和机构El的数据库之间的通信,该数据库存储经机构El授权的所有用户的 身份。参照图2:-客户端发送网页请求,例如http://WWW.google, it (序列cl),-网关截取该请求并将客户端重新引导至认证门户(序列c2),-客户端发送其证书,例如用户名(序列c3),-网关将客户端重新引导至认证服务器的门户(序列c4),_用户输入口令(序列c5),_认证服务器例如经由RADIUS协议通过将用户的证书(用户名和口令)与包含在 数据库中的那些相比较来对用户的证书进行验证(序列c6),-对用户进行授权(序列c7),-认证服务器向客户端发送防火墙打开消息作为认证确认(序列c8),-客户端将接收到的消息转送到网关以便打开防火墙(序列c9),-网关将客户端重新引导至所请求的站点http://WWW.google, it (序列clO),-客户端在所请求的站点http://WWW.google, it上接入因特网(序列cll)。这种架构提供绝对系统可缩放性。事实上,可以通过在新机构EX处安装网关GW并通过把将管理属于新域(例如 organizationX. it)的用户的认证服务器注册在DNS中来容易地扩展该系统;由于上述原 因,必须以例如authserv. organizationX. it的前述格式进行DNS中的注册。有利的是,为了避免任何其它系统取代认证服务器并尝试认证未注册用户,签署 (sign)认证服务器与网关之间的通信;特别地,签署该通信并优选地通过使用公钥/私钥 型的不对称加密方法来将其编码。优选地,当仅签署了消息时,使消息处于明文状态(clear),但是将用私钥计算的 哈希值(hash)与之附着,其一旦经公钥验证,则保证消息是由私钥的所有者创建的原始消 肩、ο随后签署这样交换的消息并优选地通过例如经由PGP软件获得的密钥(专用于签 名、公用于编码)进行编码。每个网关GW包含联盟的机构的认证服务器AS的公钥列表,因此其可以验证不存 在视图嗅探(sniff)该认证的错误认证服务器。为了在没有可缩放性限制的情况下保持系统更新,使用密钥管理服务器(图1中 的KS),其包含属于系统所识别的认证服务器的公钥的仓库(r印ository)(例如PGP)。因此,添加新机构包括在此列表中输入管理新域的认证服务器AS的密钥。每个网关包含密钥列表的副本;为了保持系统更新,根据本发明的方法,网关周期 性地查询密钥管理服务器KS并下载密钥列表。
当向系统添加新认证服务器时,将存在第一短暂时间段,其中,新机构的用户在漫 游模式下不能通过系统的其它域来使用其证书;所述时间段将持续直到本地密钥副本已在 所有网关中被更新。因此,此服务中止条件仅仅涉及并限于新机构的安装,而不是网络维护。由于每个网关包含所有机构的认证服务器的公钥列表的副本,所以即使在密钥管 理服务器KS出现故障或失败的情况下,系统也将继续工作。这样构思的系统允许管理不同机构的用户的业务的开发票,因为用来进行网络接 入的每个网关在特殊的日志中包含且必须保持关于每个用户的连接时间的信息;此类信息 包括用户的名称和各个机构两者,因此允许正确地为业务开发票。上述机制假设在各种机构之间存在信任策略(trust policy);如果需要控制机 制,则优选的是采用从所有其它服务器接收关于用户连接的信息的中央服务器以便可以验 证存储在每个网关中的连接。很明显,应将上述实施例理解为本发明的非限制性示例,并且在不脱离随附权利 要求所述的本发明的保护范围的情况下可以对系统进行许多修改。例如,可以用单机来实现网关、认证服务器和认证数据库(例如SQL数据库)或将 其分布在许多机器上。此外,用于对认证服务器与网关之间或认证服务器与客户端之间的通信进行编码 的方法可以是本领域中已知的任何类型。
8
权利要求
一种用于允许用户接入因特网的方法,其中用户通过第一机构的网关发送因特网接入请求,所述请求要求所述用户向所述第一机构提供用于通过第二机构进行他/她的认证的第一认证证书,所述证书包含关于所述第二机构的至少一条信息,并且其中,所述第一机构出于认证所述用户并允许他/她接入因特网的目的联系所述第二机构,并且其中,所述第二机构向所述用户给予接入因特网的授权,其特征在于应所述接入请求,所述网关将所述用户重新引导至所述第二机构的网页,并且所述用户通过所述网页向所述第二机构提供通过所述第二机构识别所述用户所需的第二认证证书。
2.如权利要求1所述的方法,其中,所述第一认证证书包括以nameOrealm格式表示的 用户名,其中,‘name’识别用户且‘realm’识别第二机构。
3.如权利要求1或2所述的方法,其中,所述第二证书包括口令。
4.如前述权利要求中的任一项所述的方法,其中,所述因特网接入请求包括其中对所 述用户分配IP地址的第一步骤和其中所述网关将所述用户重新引导至本地欢迎网页的第 二步骤,所述用户必须在本地欢迎网页上输入所述第一证书。
5.如权利要求1至4中的任一项所述的方法,其中,如果所述网关不能找到所述第二机 构的认证服务器,则所述网关将向默认认证服务器发送所述第一证书。
6.如权利要求1至4中的任一项所述的方法,其中,所述网关将所述第一证书发送到所 述第二机构的认证服务器。
7.如权利要求6所述的方法,其中,所述网关通过发送到DNS的询问来确定所述认证服 务器的地址。
8.如权利要求6或7所述的方法,其中,所述网关可访问机构的列表并通过将所述列表 与所述第一证书相比较来确定所述认证服务器的地址。
9.如权利要求5至8中的任一项所述的方法,其中,所述网关与所述认证服务器之间的通信被签署。
10.如权利要求5至9中的任一项所述的方法,其中,所述网关与所述认证服务器之间 的通信被编码。
11.如权利要求10所述的方法,其中,通过公钥/私钥编码对所述网关与所述认证服务 器之间的通信进行编码。
12.如权利要求11所述的方法,其中,密钥管理服务器保持相应的多个机构的多个认 证服务器的公钥列表。
13.如权利要求12所述的方法,其中,所述多个机构的网关周期性地连接到所述密钥 管理服务器并本地地存储所述公钥列表。
14.一种适合于实现如权利要求1至13中的任一项所述的方法的计算机系统。
15.一种适合于被存储在所述计算机的存储区中并包含适合于在被所述计算机执行时 实现如权利要求1至13中的任一项所述的方法的代码部分的计算机程序。
全文摘要
本发明涉及一种用于允许用户接入因特网的方法。用户通过第一机构的网关发送因特网接入请求并向后者提供用于通过第二机构对他/她进行认证的某些证书。所提供的证书包含关于第二机构的至少一条信息。第一机构出于认证用户并许可他/她接入因特网的目的联系第二机构。第二机构随后对该用户提供接入因特网的授权。根据本发明,应所述接入请求,网关将用户重新引导至第二机构的网页,在那里,用户通过网页向第二机构提供他/她的识别所需的另外的认证证书。
文档编号H04L29/06GK101919221SQ200880117640
公开日2010年12月15日 申请日期2008年11月24日 优先权日2007年11月26日
发明者A·吉蒂诺, R·博里, S·安尼斯, S·萨格利奥科 申请人:Csp-斯卡尔创新信息和通信技术公司;意大利戴尔电子开发有限公司