用于嵌入式设备的访问控制协议的制作方法

文档序号:7675679阅读:177来源:国知局
专利名称:用于嵌入式设备的访问控制协议的制作方法
用于嵌入式设备的访问控制协议本发明的背景嵌入式设备目前是诸如联网(路由器、受管理交换机、防火墙)、电信、电业/煤气业/自来水业自动化(智能电子设备、诸如根据IEC 61850 的变电站中的标准化通信网络和系统之类的通信)以及工业自动化(PLC、 工艺过程控制器、驱动机器人控制器)等的关^ftH设施的重要部件。在 这些嵌入式服务器的工作寿命期间,人类用户和软件进程必须直接地和/ 或远程地对其进行访问,以便发布命令、获得测量值或状态信息、诊断故 障以及改变i殳置和应用。由于这些i殳4^对于其各自的系统而言是关键的, 因此对这些设备的访问应当受到限制和严格控制。目前用于嵌入式i殳备的 认证方案主要是基于密码的,其并未提供必要的安全性和可扩展的可管理 性。在讨论认证及访问控制机制时,必须区分两种根本不同的使用场景 商业场景和^式i更备场景。在图1中示意性地示出的、包括办公室工作和电子商务应用的商业场 景中,成百或上千的用户和客户端C访问在有P艮数量的位置中的服务器S 和服务的相对小的集合。用户和服务器均是单个或数量很少的认证域(例 如Windows域或Kerberos域)的成员。在多个认证域的情况下,可以使 用单点登录(single-sign on)方案来向用户模拟单个认证域。由于用户帐 号被存储在应用服务器经由总是可用的网络而委托其进^i人证判决的、有 限数量的集中认证服务器AA上,因此用户帐号可以得到有效的管理。与商业环境不同,图2中示意性地示出的嵌入式设备环境仅具有较少 数量的人类用户(操作员、维护人员)和客户端工作场所C。这些用户典 型地属于多个组织(CA、 Cb或Cc),并且每个用户如供应商服务工程师 等必须具有访问用作服务器S的大量嵌入式设备的能力。这些嵌入式服务 器在物理上和组织结构上是分布式的,并且因此属于不同的i人证域。事实 上,在目前的典型嵌入式环境中,由于过去需J^个"^式设备能够完全 独立于其它主机和外部通信链路地工作,以最大化由该嵌入式设备控制的 系统的弹性和可靠性,因此每个嵌入式设备是包含其自身的用户库的、其 自身的认证域。这种a的用户管理面临着这样的额外的挑战嵌入式设 备的本地存储和计算能力典型地比商业认证及访问控制服务器的存储和
由于对施加于嵌入式设备上的可用性的高要求,与选择用于嵌入式设 备的认证及访问控制选项相关的折衷判决迄今为止已经削弱了安全性。因 此,非常需要用于嵌入式设备的、安全的且可有效地管理的认证及访问控 制方案。
背景技术
在文献以及广泛使用的IT系统中存在大量不同的认证及访问控制方案。直接在嵌入式设备上的基于密码的访问控制和认证是目前最常见的 机制。该机制遭受到若干主要缺点。由于访问是基于知识的,因此访问在 实践中是不可撤消的,并且对所有受到影响的服务器进行重新配置将是不 可行的。此外,对设备的存储限制典型地限制了用户帐号的数量,并且因 此需要避免了个人责任的组证书。如果用户对多个设4^吏用相同的密码, 则单个i殳备的泄密(compromise)导致了整个系统的泄密。已知的最佳集中式方案是也用于Microsoft Windows域i^证的 Kerberos i人证月艮务。在通过引用合并于此的以下两个公开文献中详细描 述了 Kerberos i^证服务作者为J. Kohl和C. Neuman的"The Kerberos Network Authentication Service", RFC 1510, 1993年9月;以J5L作者为 B. Neumann和T. Ts,o的"Kerberos: An Authentication Service for Computer Networks" , IEEE Communications Magazine, 32(9): 33-38, 1994年9月。Kerberos工作具有被称为"票据(ticket)"的能力。在成 功的认证之后,用户获得"票据授权票(ticket granting ticket)",该票据 授权票随后可被用于从一个或更多个票据授权服务器获得针对目标服务 器的实际票据。目标服务器自身针对其访问控制判决^5l检查所述票据,而 不检查实际的用户身份。Kerberos使用共享秘密和对称加密技术来保护 参与者之间的通信的真实性和机密性。每个目标服务器必须配置有该目标 服务器与中央认证服务器共享的个体密钥。这并不适合于具有上百个设备 的嵌入式设备环境。Kerberos自身仅涉及认证及访问控制,而不涉及对 作为结果的会活的保护。在以下文献中提出了使用公钥加密技术的Kerberos的变体作者为 M. Sirbu和J. Chuang的"Distributed Authentication in Kerberos UsingPublic Key Cryptography" , Proceedings of the Internet Society Symposium on Network and Distributed System Security NDSS,97, 1997 年。基于公钥的认证处理与访问控制处理相分离,但是访问控制处理并未 与对目标服务的访问相分离。因此,每个服务器仍然需要为每个用户维护 访问控制列表。通过引用合并于此的以下文献描述了作为基于公钥的认证及访问控 制协议和认证消息格式的SPKI (简单爿^证书)作者为C. M. Ellison 的"SPKI Requirements", RFC 2692, 1999年9月;以及作者为C. M. EUison、 B. Frantz、 B. Lampson、 R.Rivest、 B. M. Thomas和T. Ylonen 的"Simple Public Key Certificate", draft國ietf-spki-cert-structure誦06.txt, 1999年7月。主要专注于复杂的权P艮分配和推导算法。SPKI未提供用于 对抗篡改或重放的会话保护的措施。SPKI消息格式可用在本发明的环境 中以传送能力。通过引用合并于此的以下文献作者为J. Hughes和E. Maler的 "Security Assertion Markup Language, V2.0 Technical Overview", sstc國saml-techoverview-2.0國draft-08, 2005年9月,描述了这样的内容 SAML是用于对能力进行编码的基于XML的语法,其可能用在本发明的 环境中以传送能力,但是由于标准SAML只能表示A/否型的访问判决而 不能表示复杂的允许语句,因此SAML是有限制的。SAML还定义了大 量用于单点登录和服务器联合的认iiMt权传输协议,但是这些认iiMt权传 输协议需要服务器设备对认证及访问控制服务器的在线访问。通过引用合并于此的以下文献ITU. Information technology - Open Systems Interconnection 誦 The Directory: Public-key and attribute certificate frameworks, ITU Recommendation X.509, 2000年3月,描述 了作为用于对可用在本发明的环境中以传送能力的数字证书和附加属性 进行编码的X.509.以下文献描述了作为使用基于可选公钥的认证方案的替代的会话保 护协议的SSH (安全外壳协i义)T. Ylonen和C. Lonvick的"The Secure Shell Protocol Architecture", RFC 4251, 2006年1月。访问控制;L^于 存储在服务器设备上的ACL的,并且为了进^fti人证,必须在每个服务器 i殳备上预先配置每个合法用户的^>钥
发明内容
本发明的目的是提供一种新颖的基于公钥的认证及访问控制系统及 协议,其满足了对嵌入式设备的访问控制的安全性和可管理性的需求。本发明的访问控制协议允许在具有诸多客户端、诸多目标服务器和至 少 一个认证授权服务器的计算机网络系统中控制客户端对目标服务器的 访问。客户端具有存储在数据存储装置中的该客户端自身的私钥。目标服 务器具有存储在数据存储装置中的认i^^J艮务器的公钥。认M糸Ul务 器在数据存储器中存储有客户端的公钥、以及与客户端对目标力良务器的访问权PM目关的信息。所述协议包括以下步骤 -客户端向认iiL^;l5U艮务器请求用于访问目标服务器的能力,-认iiE^;l503艮务器基于存储在数据存储器中的信息来检查是否要授权 客户端访问目标服务器。如果要授权客户端访问目标服务器,则认M权 服务器向客户端发送包括客户端的公钥的能力。用iUi^^J艮务器的私钥 对所述能力进行签名,-客户端将从认iE4t;l5U!良务器接收的能力发送给目标服务器,以及-目标服务器验证所述能力的有效性,并且如果所述能力有效,则允 许客户端访问目标服务器。在本发明的计算机网络系统中,每个嵌入式目标服务器M预先配置 的、认^;J5U艮务器的公钥。该密钥不是秘密的。这样,由于物理攻击而 导致的一个目标服务器的任何泄密并不会使得整个访问控制方案泄密。服 务器不必配置有个体密钥。各个客户端的访问权限在访问授权组织的控制下在一个或少量数目 的中央服务器中进行维护。这允许访问权限变化的快速推广(roll-out)。 基于规则的访问控制可以用于可扩展的客户端权限分配。可以由目标服务 器的所有者(自动化系统的所有者)来管理iUiMt^J良务器,或者这可以 被夕卜包给可信的提供商,例如自动化系统供应商。具有两个或更多个串行 和/或并行的授权请求的组合方案是可行的。客户端对认证授权服务器的 认证可以通过常用的认证方案、例如Windows/Kerberos域、用户名/密码、 SSL等等进行。为了允许客户端离线地访问目标服务器,客户端在意图访问目标服务 器之前、从中央认"^;l5UJ良务器获得通常具有在时间上受到限制的有效性 的能力,可以以计算机和/或人类可读的格式来对所述能力进行编码。所 述能力可以被存储在数据存储装置如计算机可读智能卡上。可以使用诸如 智能卡标识码(PIN)之类的附加因素来确保对所述能力的访问控制。所 述能力包含其授权的访问权限,并因此可以由目标服务器离线评估。使用 离线目标服务器可能不存在撤销方案。本发明的协议通过以下方式来减轻 此问题为在线远程访问使用短的截止期(分钟/小时),并且在需要对目 标服务器的物理访问时使用较长的截止期(小时/天)。该方案需要中央i人 iiL^;M良务器与目标服务器之间的某种程度的时间同步。为了明确地识别访问目标服务器的每个客户端,所述能力包含客户端 标识符,由认证授权服务器用其自身的私钥进行了签名的所述能力包含客户 端的公钥。在获得对目标服务器的访问之前,客户端必须证明其持有私钥。 这样,目标服务器能够IHi所述能力的提供者的身份。只有私钥的持有者 才能对会话密钥进行解密并且所述能力只能随客户端的私钥一起使用的 事实防止了使用所述能力的副本的客户端电子欺骗(Spoofing )。为了避免使用用于不同的服务器的^t权的能力,所述能力包含服务器 标识符。该标识符允许服务器验证已针对对它的访问而发布了该能力。如 果该标识符不匹配,则可以拒绝、记录和报告任何请求。为了避免重放旧消息或重用会话密钥,从目标服务器至客户端的每个 消息包含必须被包括在从客户端至目标服务器的下个消息中的随机数 (nonce )。目标服务器跟踪无应答的随机数。任何具有旧的随机数的消息 均被拒绝。在阈值方案中或者在具有分离的职责的系统中,本发明的协议可以被 扩展为客户端需要多于一个的访问目标服务器的能力。已建立的会话优选地使用对称加密技术。或者加密(更为计算密集的) 或者仅完整性保护都是可行的。由于本发明的用于诸如自动化系统和网络设备之类的嵌入式服务器 的认证及访问控制方案与目前用于这些系统的传统的基于密码的方案相 比显著改进了各种安全特性,同时也改进了可扩展性和可管理性,因此其 满足了工业中的急迫需求。该方案在电力事业中的广泛应用可能例如是用于满足关于用于访问撤销的推广时间限制的North America ElectricReliability Council's (NERC) Critical Infrastructure Protection (CIP)(北 美电力可靠性协会的关^lJftH殳施保护)需求(NERC CIP004-1/B/R4.2 ) 的关鍵部分。此外,具有一定应急许可(例如停机)的能力可以^L存储为例如物理 上受保护地接近于服务器设备,以允许在不会具有证书不可用(忘记密码; 无可用的已授权的人员;或者如果iUi^^U艮务器不可用)的风险的情况 下执行这种应急动作。


图1示出了商业环境的计算机网络,其中大量客户端计算机对在有限 数量的位置中的服务器S和服务的相对小的集合进行访问,图2示出了^式设备环境的计算机网络,其中典型地属于多个组织 的、数量相对少的客户端计算机对用作服务器的大量物理上分布式的嵌入 式i殳备ii^^问,以及图3示出了本发明的计算机网络系统,即具有附加的认i^^U艮务器 的^式i殳备环境。
具体实施方式
图3示意性地示出了本发明的系统,其包括M式服务器S、客户端 C、以及认证授权服务器或简称为访问授权服务器(access authority server )AA。尽管仅示出了 一个嵌入式服务器和一个客户端,但是本发明 的系统可以包括若干嵌入式服务器和若干客户端C以及多于一个的访问 授^5U良务器。每个客户端具有其自身的密钥对pubc和privc,其中privc是秘密的 且仅为客户端C所知,而pubc是公钥而非秘密的。访问授;M艮务器AA具有其自身的密钥对pubAA和prWAA,其中priVAA 是秘密的且仅为访问授^J艮务器AA所知。嵌入式服务器S^"访问授^J良务器AA的^^pubAA。作为>5^, pubAA并不是秘密的,并JLxt于所有设备是相同的密钥,因此pubAA可以 被有效地预先安装。对任何服务器S的不允许的访问或控制并不提供用于 使协议泄密的攻击者信息。每个服务器还保存用于其自身的某种标识符 Ids。嵌入式服务器S和访问授^U艮务器AA优选地以一定程度的同步性 而共享共同的时间概念(技术上例如通过GPS来实现)。同步性偏差可能导致关于截止时间验证的错误否定和错误肯定。访问授;KI艮务器AA #^进旨问控制判决所需要的附加信息 所有客户端c对所有目标服务器S的访问权P艮矩阵。该矩阵中的特 定权限R(C, S)可以是通用的(读/写/更新/删除)或者应用/服务器专用的。 这些特定权限只需要可^U3艮务器解释,并且因此可以是对于每个服务器而 不同的。这样,可以使用相同的方案来管理针对大量不同设备的访问控制。
Texp(C, S)是确定被授权给客户端C的用于访问目标服务器S的能力 的截止时间的规则集。与能力相关的实际截止时间可能取决于C、 S、所 请求的访问权限、以及诸如访问服务器的预期方法(在线地、或通过直接 的物理访问/控制台访问而离线地)等的上下文信息。 用于所有注册的客户端C的pubc。由于仅存在一个这些密钥需要在 其处被注册的中央位置,因此这是可管理的。在下文中,将对所述协议的各个步骤进行说明。在图3中使用标记 1-7而示出了所提出的认证及授权控制协议的步骤。步骤1至3描述了向 认证访问服务器请求能力的处理,步猓4至7描述了发起与目标服务器之 间的会话的处理,步骤8描述了客户端与目标服务器之间的数据交换会 话。步骤1:客户端C成功地向访问授^3Ui艮务器AA进^S人证。假设存在 允许客户端C以足够安全的方式向访问授)M良务器AA进行认证并与访 问授^JJ良务器AA进行通信的适当方案。为此目的,由于客户端C向单 个中央服务器认证其自身,因此不关心上文提及的可扩展性问题。为此可 以4吏用诸如Windows域认证或Kerberos之类的常见方法。步骤2:客户端C向认iiM^5U艮务器AA请求能力,即可传输的许可 表示,其具有针对由Ids标识的目标服务器的访问权限R'和截止时间 T'exp。注意到,Idc可以4:请求消息的显式部分,或者可以由访问授^UJ良 务器AA从来自C与认iiMt;M艮务器AA之间的经认证后的会话的上下文 信息而获得。C — AA : {Ids, R', Idc, T'exp}步骤3:访问授^J艮务器AA基于存储在其数据库中的信息,iM^r查 在例如所请求的权限和预期的访问方法(在线、离线)之类的给定情况下
对目标服务器s的访问是否可以被授权给客户端c以及可以授权何种程度的访问。然后访问授^J良务器AA发布适当的能力,该适当的能力l^ ^L送给客户端C。使用访问授^J良务器AA的私钥对该能力进行签名。 注意到,在实践中,仅对散列进行签名。客户端C的唯一标识符Idc被包 括用于使得目标服务器即使在目标服务器S自身不对客户端C进^fH人证 的情况下也能够记录实际客户端,以允许必要时对客户端的回溯识别。客 户端C的Z/H^ pubc被包括用于随后的客户端C与目标服务器S之间的消 息交换中,以使目标服务器S可以确信只有客户端C (由privc的所有权 来定义)才能对使用pubc加密的消息进行解密。被寻址的服务器的唯一 标识符Ids允许该服务器验证所述能力是为其自身而非任何其它服务器发 布的。尺〃={111,^,尺3,...}指示了可被特定目标服务器8接受/理解的、以 任意访问权限语言制定的已授权访问权限集。R'被计算作为所请求的权限 R'与根据授权数据库可用于该客户端的权限R(C, S)的交集。T〃叫指定了该能力的截止时间。T;是所请求的截止时间T'exp和截止时间计算规则集Texp(C, S)的函数。AA — C : Cape, s = {Idc, pubc, Ids, R〃, T〃exp}privAA如上文所述,客户端C向访问授^Ui艮务器AA的认证和访问授;l5UJ良 务器AA向客户端C的认证以及对这些消息的保护(机密性、完整性) 被假设是可用的,并且因此不在本协i义的范围之内。可选地,附加的能力请求可被送往另一访问授;MJ艮务器AA'(步骤2'、 3'),例如用于m^访问授;l5U良务器AA对于目标服务器S仍具有发布能 力的许可。这可以例如用于服务提供商针对其员工而运行其自身的访问授 ;J5UJ良务器AA的场景中,但AI良务器所有者的访问授;MJ艮务器AA'必须确 认服务提供商仍遵守一切规则且有资格授权其员工。替代地,访问授;l5U艮 务器AA和AA可以是并行的替换方案,以提高可用性。步骤4:客户端C将从访问授*03良务器AA接收的能力capc,s发送给 目标服务器S。这可以通过网络完成或者通过直接控制台或面板访问而离 线地完成。C — S : cape, s步骤5:目标服务器S通过检查以下各项来iHt能力capc, s:-访问授;MJi良务器AA在所述能力capc, s上的签名,通过使用访问授 ;l5U良务器AA的7>^来进行检查S : {cape's} pub^ = {Idc, pubc, Ids, R〃, T〃exp} -所述能力 capc,s是否确实被送往S,-所述能力是否尚未到期S : t < T"exp所列出的验证步骤的顺序并不是固定的。步骤6:在证实了所述能力有效时,目标服务器S产生随机对称M 密钥K^s。目标服务器S利用从由访问授^J艮务器AA签名的所述能力中 获得的客户端的公钥对该会话密钥Ksess以及随机数N进行加密。所述随 机数、即随时间变化的^lt可以是长计数器或时间戳,并且不一定是随机 的。在实践中,对称密钥K'典型地可以用于加密K、 N,并且只有该密钥 K'将会被4吏用pubc来加密。S —C:《K謂,崎ubc步骤7:客户端C使用其自身的私钥privc来对该会话密钥进行解密。C: { Ksess, = {{ Ksess, N扭bc^privc步骤8:为了启动会话中的实际数据交换,客户端C向目标服务器S 发送数据/命令。共享的对称会话密钥可用于使用例如MAC/鍵控散列的 加密或完整性保护。通过随机数N,目标服务器S可以il^E^客户端接收 的消息是期望的消息而非插入的或重放的消息。C — S: {A,数据》K,(加密的) 或C —S: {{Nh数据》,MAC(Ni,数据,Ksess)}(受完整性保护的)目标服务器S验证所述能力仍是有效的且尚未到期以及所述随机数 是正确的(如同所期望的)。S : t < T 〃eXp; nonce = Nj目标服务器S!Hii客户端所发送的请求/命令已被所提供的能力授权。 如果该请求/命令已被授权,则目标服务器执行该请求/命令并向客户端返 回数据。再一次地,共享的对称会话密钥可用于加密或完整性保护。可以针对同一会话中的另外的客户端消息而重复步骤8 (步骤8.1, 8.2,…,8.x)。为此目的,目标服务器S发布另外的随机数N2, ...,Nx,该 随机数随先前的客户端消息的返回数据一起&送给客户端。新的随机数
被客户端用于同一M中的去往目标服务器的另外的消息。当然,如果不 期望另外的客户端消息的话,则可以省略新的随机数。C — S: {N2,数据} K國 或C —S: {{N2,数据》,MAC(N2,数据,Ksess)}可以使用 一个能力来在客户端与目标服务器之间建立多于 一个的会 话。为了建立与目标服务器之间的另外的会话,可以在能力有效期内重复 步骤4-8。对于每个会话,协商单独的会话密钥。当能力有效性到期时, 必须向访问授^J艮务器请求新的能力。下面的部分包含了对于本发明的协议的诸多设计考虑因素配置可扩展性通过在每个目标服务器中配置访问授^U艮务器AA的 相同的公钥,不需要服务器专用的密钥管理。可以在每个服务器中安装多 个访问授^J艮务器密钥,以允许并行地使用多个访问权(增加的可用性) 或者用于将访问权限划分为一定的访问权。这可以用于例如下述这样的情 形中诊断服务提供商被允许运用其自身的访问权以访问客户的服务器, 但是该访问权在服务器侧被限制为仅有读取许可。防止通itJ!艮务器泄密的协议泄密的保护服务器不存储可用于4吏所述 协议泄密的秘密。注意到,这意味着,如同使用传统的基于密码的i^证和 访问控制一样地,不存在服务器对客户端的认证。这是在安全性与可管理 性之间的折衷。因此,攻击者可以向客户端冒充(spoof)服务器。然而, 该攻击只会允许拒绝服务和将4^数据注入客户端,而不能用于将恶意数 据或命令注AJ艮务器。授权变化的快速推广客户端对目标服务器的访问权限(访问矩阵) 在访问授权组织的控制下在一个(或少量数目的)中^良务器中进行维护。 在该中央服务器上可以使用基于规则的访问控制来进行可扩展的客户端 权限分配。因此,任何变化均可以借助于单个变化动作来推广,并且所述 变化在至多最长的截止时间之后对于在该推广之前发布的能力而言将会 是有效的。可管理性与所需要的信任之间的折衷:访问授;kl艮务器可以由拥有目 标服务器的组织来管理,或者访问授^J艮务器的操作可以被外包给可信的 服务提供商,例如自动化系统供应商。具有两个链式的(AND)或并行 的(OR)授权请求的组合方案是可行的。 离线使用在某些情况下,物理上出现在嵌入式服务器侧对于维护动 作而言是必需的,并且没有至外部服务的网络连接可用。针对该场景,服 务技术人员在前去该嵌入式服务器的场所之前从访问授^J良务器获得具 有适当截止期的能力.该能力包含其所授权的访问权限,并因此可由目标 服务器离线评估。能力的有效性的限制在没有重新配置所有服务器的情况下,基于知 识的认证及访问控制权限(密码)不可被撤销。其它现有的撤销方案对于 离线服务器不起作用。所提供的协议通过以下方式来解决该问题为在线 远程访问使用具有短的截止期(分钟/小时)的专用能力,并且如果需要 对目标服务器的物理访问的话则使用以天计的截止期。注意到,基于截止 的撤销需要访问授^5UJ艮务器与^式服务舉之间的某种程度的时间同步。审计能力访问目标服务器的每个客户端应当被明确地单独识别。为 此目的,所述能力包含可由被访问的嵌入式服务器记录的客户端标识符 Idc。防止通过复制的能力进行的客户端电子欺骗由访问授^U艮务器签名 的能力包含客户端的公钥。客户端必须证明其有;J5L访问对应的私钥privc 以成功地参与所述协议(对会话密钥进行解密)。确保能力仅能用于预期的服务器所述能力中的目标服务器标识符 Ids允许目标服务器验证该能力已被发布用于对该目标服务器自身的访 问。注意到,这需要未经受访问控制就不能被改变的、用于每个目标服务 器的某种唯一标识符,例如设^^名或通信地址。当然,如果改变目标服务 器身份所需要的许可并不构成用于目标服务器的访问权限的最高等级,则 这向潜在的特权提升尝试开放了方案。计算效率所建立的会话使用对称加密技术。或者加密(更为计算密 集的)或者仅有完整性保护均是可行的。防止重放从目标服务器至客户端的每个消息均包含随机数,该随机 数必须被包括在4户端至目标服务器的下个消息中。目标服务器无应答 地对随Wa:进行跟踪。任何具有不期望的(例如旧的)随机数的消息都被 拒绝。注意到,丢失的消息(失去同步)可能中断通信。可以使用窗口方 案以在轻度增加重放攻击的风险的情况下使得该问题得以部分地减轻。
所使用的缩写和附图标记的列表AA iU^^J良务器ACL 访问控制列表-数据库C 客户端S 目标服务器Idc 客户端C的唯一标识符Ids 所寻址的服务器的唯一标识符privAA 认iiL^^J艮务器的私钥pubAA iU^^U艮务器的乂^privc 客户端C的私钥pubc 客户端C的7i^R<e,s) 访问权限Texp 能力的截止时间Cape, s 能力,客户端C访问目标服务器S的可传输的许可表示Ksess 用于会活的密钥N 随机数,可变^
权利要求
1. 一种用于在计算机网络系统中控制客户端(C)对目标服务器(S)的访问的访问控制协议,所述计算机网络系统包括至少一个客户端(C),所述客户端在数据存储器中存储有私钥(privC);至少一个目标服务器(S);以及认证授权服务器(AA),其中,所述至少一个目标服务器(S)在数据存储器中存储有所述认证授权服务器(AA)的公钥(pubAA),以及所述认证授权服务器(AA)在数据存储器中存储有所述客户端(C)的公钥(pubC)、以及与所述至少一个客户端(C)对至少一个目标服务器(S)的访问权限相关的信息(ACL),所述协议包括以下步骤-所述客户端(C)向所述认证授权服务器(AA)请求用于访问目标服务器(S)的能力,-所述认证授权服务器(AA)基于存储在数据存储器中的信息(ACL)来检查是否要授权客户端(C)对目标服务器(S)的访问以及要向客户端(C)授权对目标服务器(S)的何种程度的访问,并且如果要授权客户端(C)对目标服务器(S)的访问,则向客户端(C)发送包括客户端(C)的公钥(pubC)的能力(CapC,S),所述能力被使用认证授权服务器的私钥(privAA)而签名,-所述客户端(C)将从所述认证授权服务器(AA)接收的能力(CapC,S)发送给目标服务器(S),-所述目标服务器(S)验证所述能力(CapC,S)的有效性,并且如果所述能力有效,则允许所述客户端(C)访问所述目标服务器(S)。
2. 根据权利要求1所述的访问控制协议,其中客户端(C )的唯一标 识符(Idc)被包括在所述能力(Capc,s)中,以使目标服务器(S)即使 在目标服务器(S )自身不对客户端(C )进行认证的情况下也能够记录 实际的客户端。
3. 根据前述任一权利要求所述的访问控制协议,其中所述目标服务 器(S)通过使用所述访问授^U艮务器(AA)的^JH^ (pubAA)检查所述 访问授;M艮务器(AA)在所述能力(Capc,s)上的签名,来验证所述能 力(Capc,s)的有效性。
4. 根据前述任一权利要求所述的访问控制协议,其中所述目标服务 器(S)的唯一标识符(Ids)被包括在所述能力(Capc,s)中,以及所述 目标服务器(S )通过检查所述唯一标识符(Ids)来臉汪所述能力(Capc,s ) 的有效性。
5. 根据前述任一权利要求所述的访问控制协议,其中所迷认证授权 服务器(AA)的存储在数据存储器中的信息(ACL)包括与能力的截止 时间相关的规则,截止时间(Texp)被包括在所述能力(Capc,s)中,以 及目标服务器(S )通过将实际时间与所述截止时间(Texp )相比较来验 证所述能力(Capc,s)的有效性。
6. 根据前述任一权利要求所述的访问控制协议,其中计算机网络系 统包括至少一个另外的目标服务器,以及其中所述客户端(C)在向认证 授;M艮务器(AA)的单个请求中请求用于访问多个目标服务器(S )的能 力。
7. 根据前述任一权利要求所述的访问控制协议,其中所述计算机网 络系统包括至少一个另外的认证授权月艮务器(AA'),其中所述目标服务 器(S)额外地在数据存储器中存储有所述至少一个另外的认i^糸U艮务 器(AA')的公钥(pubAA,),以及其中所述能力(Capc,s)被多于一个的 认iiE^;NJ良务器(AA, AA')进行签名。
8. 根据前述任一权利要求所述的访问控制协议,其中所述目标服务 器(S )通过以下方式来允许所述客户端(C )访问目标服务器(S ):产 生随机的会活密钥(IQess), 4吏用所^户端的>^钥(pubc)来加密所述 会话密钥,以及将所述已加密的会话密钥发送给客户端(C),以及其中所述目标服务器(S)产生随机数,所述随机数随所述^t密钥 一fe^送给客户端(C),所述随机数由所述目标服务器(S)用于验证随 后的消息并非是不期望的、插入的、或重放的消息。
9. 根据前述任一权利要求所述的访问控制协议,其中所述能力(Capc, s)以计算机和/或机器可读的格式来编码。
10. 根据前述任一权利要求所述的访问控制协议,其中所述目标服务 器(S)仅在存在多个能力且每个能力均授权了所请求的访问时才授M 户端(C)访问。
全文摘要
客户端(C)从认证授权服务器(AA)请求用于访问目标服务器(S)的能力。认证授权服务器(AA)向客户端(C)发送包括客户端(C)的公钥(pub<sub>C</sub>)的能力(Cap<sub>C,S</sub>),所述能力被使用所述认证授权服务器的私钥(priv<sub>AA</sub>)而签名。客户端(C)将所述能力(Cap<sub>C,S</sub>)发送给目标服务器(S)。如果所述能力有效,则目标服务器(S)授权客户端(C)访问,并且可以发起数据交换。由于本发明的协议不需要对每个目标服务器设备的单独配置,因此本发明的协议是可扩展的,其允许在合理时间内对用户访问的撤销,不将可泄密的秘密数据存储在任何目标服务器设备上,实现了针对每个用户的单独访问许可以及每个用户的责任。
文档编号H04L29/06GK101401387SQ200780008577
公开日2009年4月1日 申请日期2007年3月10日 优先权日2006年3月10日
发明者马丁·内德勒 申请人:Abb研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1