首页> 中国专利> 根据标准协议OPC UA通信且具有用于认证的单点登录机制的客户端/服务器系统及在这样的系统中实施单点登录的方法

根据标准协议OPC UA通信且具有用于认证的单点登录机制的客户端/服务器系统及在这样的系统中实施单点登录的方法

摘要

本发明涉及一种方法和一种相应的装置,用于利用根据标准协议OPC UA的通信来将单点登录机制集成到客户端/服务器系统中,以及用于在这样的系统中实施单点登录以便用户认证和授权。在系统中借助于通信-网络(22)使OPC UA客户端(21)与OPC UA聚集服务器(24)相连接并且该OPC UA聚集服务器又与下级的OPC UA服务器(1,2,3)相连接。为了集成单点登录机制,OPC UA聚集服务器(24)补充有SSO-组件(25)用于映射在服务调用的情况下使用的用户-合法性数据(证书)到标识符,所述标识符所采取的形式是它们存储在所述下级的OPCUA服务器(1,2,3)中所采取的形式。为了借助于SSO-组件(25)实施单点登录,属于服务调用的用户-合法性数据用于自动搜索相应映射的标识符以及搜索所涉及的OPC UA服务器(1,2,3),以及对于每个匹配,在相应的OPC UA服务器(1,2,3)中借助于所映射的标识符调用活动会话服务,由此建立了利用用户的服务调用对数据的期望访问。

著录项

  • 公开/公告号CN101971184A

    专利类型发明专利

  • 公开/公告日2011-02-09

    原文格式PDF

  • 申请/专利权人 ABB研究有限公司;

    申请/专利号CN200980107162.2

  • 发明设计人 S·H·莱特纳;

    申请日2009-02-05

  • 分类号G06F21/00(20060101);H04L29/06(20060101);

  • 代理机构72001 中国专利代理(香港)有限公司;

  • 代理人汤春龙;徐予红

  • 地址 瑞士苏黎世

  • 入库时间 2023-12-18 01:52:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-24

    专利权的转移 IPC(主分类):G06F21/41 登记生效日:20191205 变更前: 变更后: 申请日:20090205

    专利申请权、专利权的转移

  • 2015-01-28

    授权

    授权

  • 2011-04-20

    实质审查的生效 IPC(主分类):G06F21/00 申请日:20090205

    实质审查的生效

  • 2011-02-09

    公开

    公开

说明书

技术领域

本发明涉及一种方法和一种装置,用于将用于进行用户认证和授权的机制集成在根据标准协议OPC UA的应用中。该方法和该装置适合于不同的应用,特别是适合于在自动化技术系统中的通信。

背景技术

OPC UA是一种由OPC基金会规定的、用于独立于制造厂商和平台的通信的新标准协议,特别是在过程自动化中。OPC的原始名称虽然是用于过程控制的OLE,但是在此期间在没有对于简称的提示的情况下使用OPC。UA表示统一架构。下文有时使用英语术语,这是因为它们说明了在标准中定义的确定功能或规范。

在图1中,首先在a)项下描述了一种在使用通信系统12、典型地在使用网络的情况下用于根据OPC UA规范在OPC UA客户端11和OPC UA服务器13之间交互作用的已知布置。此外为了交互作用,OPC UA客户端11使用了来自OPC-UA-协议中规定的一组OPC UA服务调用的OPC UA服务调用。但是,OPC UA服务器也可以作为聚集服务器来工作,如同在图1中在b)项下所描述的那样。这种聚集OPC UA服务器14可以作为客户端作用于另外的、下级的OPC UA服务器13以及收集且在其自身的地址空间中提供那些由另外的OPC UA服务器13所提供的数据。

OPC UA客户端和服务器的应用领域包括大的范围,并且其功能可以在不同的设备和系统中实现,例如控制器、基于PC的控制系统、生产管理系统或者在生产计划中。

但是,在标准协议OPC UA中,在带有聚集服务器的方案中没有定义用于用户的认证和授权的机制。规范仅仅表明,聚集服务器可以具有作为其代理(agents)起作用的多个用户,并且它们可以用于在与另外的服务器的连接中设立彼此独立的会话。特别地,未规定的是,客户端用户的标识符与聚集服务器中的标识符具有哪一种关系。这表明,可选的是:是否这样来设立,使得客户端-标识符与另外的服务器的标识符相匹配,或者是否作为其替代,形成用于访问聚集服务器的独立的高级用户。

为了在OPC UA系统中实现一种合适的安全等级,重要的是支持对于用户的、细粒度的访问控制,并且对于每个访问数据的用户,符合确定的“最小特权”-保护(英语是least privileges)。具有用于客户端-标识符的聚集服务器中高级用户的方案可能破坏计划目标。

在OPC UA服务器中值得期待的可能是用于所谓的单点登录的机制。单点登录(SSO)机制允许用户在初始-认证(Eingangs-Authentifizierung)之后访问所有的应用和数据,相应于之前定义的单独许可。对于用户来说,有利地省却了在计算机系统中的再一次的登陆。

虽然在信息技术中已知了不同类型的、用于单点登录的标准解决方案。但是这些SSO-解决方案不能应用在OPC-UA-产品中,这是因为它们基于中央认证-服务器,其中用户的登录(Anmelden)需要通过web-界面进行,并且服务器为一组预先定义的应用分配了访问权限。这种认证-服务器使用http或另外的web协议以便对用户进行识别并且分配对于另外的应用的访问权限。在此一个问题在于,http或另外的web协议在自动化-网络中不是一直允许或可使用的,并且此外不是每个OPC UA应用都是一种web应用。然而,最严重的问题可能在于,认证-服务器必须理解OPC-UA-协议,以便对OPC UA服务器的用户进行认证。但这对于当前市场上可购买到的产品来说不是这种情况。

发明内容

由此出发,本发明的目的在于,提出一种方法和一种装置,以实现将单点登录机制集成到OPC-UA-应用中的可能性。

该目的通过一种具有在权利要求1中说明的特征的、在应用OPC-UA-协议的情况下用于在客户端和服务器之间进行通信的方法来实现。有利的设计方案和相应的装置在另外的权利要求中给出。

在根据本发明的方法中,OPC UA客户端将系统用户的所有的作为权利证明所需要的合法性数据(证书)传输至OPC UA聚集服务器。该OPC UA聚集服务器自动地相关于与聚集OPC UA服务器相连接的所有OPC UA服务器认证特定的用户。在具有OPC UA聚集服务器和与之相连接的下级的OPC UA服务器的系统中,既允许使用不同类型的用户-数据库和装置,也允许透明的自动认证和细粒度的访问控制。对此所必需的根据本发明集成单点登录机制借助于用于对机制进行处理的、安装在聚集OPC UA服务器中的SSO-组件来实现。该SSO-组件用于相关于与OPC UA聚集服务器相连接的、也被称为被聚集的服务器的所有OPC UA服务器对在OPC UA客户端上工作的用户进行认证。SSO-组件设立用于,将由OPC UA客户端所使用的和在OPC UA聚集服务器中所使用的用户-标识符映射或转换(mapping)到这种存储在与OPC UA聚集服务器相连接的OPC UA服务器中的标识符。SSO-组件随后分别在与OPC UA聚集服务器相连接的所有OPC UA服务器中借助于所映射的合法性数据(证书)调用活动会话服务。

附图说明

由下面对于实施例的描述参照附图得出了本发明的进一步说明及其优点。

图中示出:

图1分别根据现有技术在a)项下示出了一种具有OPC UA客户端和OPC UA服务器的布置,以及在b)项下示出了一种具有OPC UA聚集服务器的布置;

图2示出了一种在OPC UA应用中具有集成的单点登录(SSO)机制的根据本发明的布置;

图3示出了与根据图2的布置相对应的流程图;和

图4示出了同样也与根据图2的布置相对应的、备选流程图。

具体实施方式

图2示例性地示出了一种在OPC UA应用中具有集成的单点登录(SSO)机制的根据本发明的布置。在该系统中,OPC UA聚集服务器24包含SSO-组件25,用于认证相应的在OPC UA客户端21上工作的用户、例如相关于下级的OPC UA服务器1,2和3的用户1。不仅OPC UA客户端21,而且同样也与OPC UA聚集服务器24共同作用的OPC UA服务器1,2和3都借助于通信-网络22与OPC UA聚集服务器24相连接。OPC UA服务器1,2和3例如分别对于不同类型的和具有不同的信息和证书的数据-供应者具有访问权。OPC UA服务器1例如供应来自PLC的数据,其通过具有中央用户数据库的过程控制系统(Distributed Control System,分布式控制系统)、例如活动目录系统来提供。在OPC UA服务器2中,利用PLC的控制器的存储器中简单的用户表格,在PLC上运行嵌入式应用。例如可能安装在Linux-机器上的OPC UA服务器3最后具有对于利用公共密钥基础设施(PKI)进行工作的PLC的访问权,其中借助于数字证书对用户进行认证和授权。

SSO-组件25与数据存储器相连接,该存储器包含关于在OPC UA服务器1,2和3中可使用的所有标识符的信息,并且将这些标识符映射到由用户在OPC UA客户端21上使用的特定的标识符。用户1在根据图2的示例中示出并且用于OPC UA客户端21中的登录-程序。用户1在此在SSO-组件25的数据存储器中映射为具有根据OPC UA服务器1的用户域User1@company.com,以及如同在OPC UA服务器2的用户表格中定义的一样作为用户1,并且借助特殊的X.509-证书,其包含在OPC UA服务器3的PLC 4中的PKI的证书信任列表(Certificate Trust List)中。SSO-组件25的数据存储器支持所有类型的、在OPC UA标准中规定的标识符,并且允许使用所连接的OPC UA服务器1至3中不同类型的用户-数据库。

根据在图3中示例性示出的、与根据图2的布置相对应的流程图,在下面进一步说明了根据本发明的方法。

如果OPC UA客户端尝试建立与OPC UA聚集服务器的连接,那么OPC UA客户端首先借助于在安全信道服务集中以及在会话服务集中标准化的服务来设立安全信道(sicheren Kanal)和会话(Sitzung)。原则上为了实施该准备步骤提供了四个不同的操作方式,取决于相应的具体OPC UA产品的需求而在它们之中选择一个。

根据第一操作方式,为了建立连接,聚集服务器向下级的OPC UA服务器传递每个服务调用(service call),例外是活动会话服务调用,其被传递至SSO-组件。

在第二操作方式中,首先设立安全信道并且在没有将会话服务传递至聚集服务器上的情况下调用会话服务,例外是活动会话服务调用。活动会话服务调用是用于调用下级的OPC UA服务器的会话服务和安全信道的触发器,其中活动会话服务调用随后传递至SSO-组件。

第三操作方式在于,首先在OPC UA客户端与聚集服务器之间设立安全信道和会话。每一次当客户端尝试访问数据时,聚集服务器设立到那个包含了所期望的数据的OPC UA服务器的连接。活动会话服务调用传递至SSO-组件。

在第四操作方式中同样也首先在OPC UA客户端与聚集服务器之间设立安全信道和会话。当客户端第一次尝试访问数据时,聚集服务器设立到OPC UA服务器的连接。当OPC UA客户端终止其到聚集服务器的连接时,或者当OPC UA客户端的连接由于超时而终止时,这些设立的连接终止。

各个操作方式具有各种不同的优点和缺点。第三操作方式仅仅在短时间内占用OPC UA服务器的资源,但在经常由OPC UA服务器调用用于数据访问的服务的情况下,在设立安全信道和会话时导致大的开销。

第二操作方式例如需要与第三操作方式相比持续时间更长的、对OPC UA服务器的资源的占用,这是因为安全信道和会话仅仅一次地设立用于客户端会话,但仅引起了较小的开销,这是因为安全信道和会话仅仅一次地设立用于客户端会话。然而,安全信道和会话服务调用必须保持在聚集服务器的存储器中,直到设立了到下级的OPC UA服务器的安全信道和会话为止。

第一操作方式实施起来最简单,但当活动会话服务调用因为传递的合法性数据(证书)失效而被聚集服务器拒绝时,可能在资源消耗方面是存在问题的。在这种情况下,安全信道和会话已经被设立(但未激活)用于所有的OPC UA服务器。

第四操作方式是在OPC UA服务器中的资源占用与用于设立安全信道和会话的开销之间的一种良好的折衷,这是因为它仅仅当客户端要访问数据时才设立,并且被保留直到OPC UA客户端终止到聚集服务器的连接为止。

如上所述,用户-合法性数据(证书)借助于在会话服务集中定义的活动会话服务调用而被提供给聚集服务器。随后,聚集服务器将该服务调用转送至SSO-组件。该SSO-组件搜索被转送的、在其数据存储器中的用户-标识符并且搜索所映射的标识符以及涉及的OPC UA服务器。对于每个匹配,SSO-组件在相应的OPC UA服务器中借助于所映射的用户-标识符调用活动会话服务。

在根据图2和图3的示例中,SSO-组件借助于User1@company.com和所属的密码,在OPC UA服务器1中调用活动会话服务,相应地借助于User1和所属的密码,在OPC UA服务器2中进行调用,以及最后在OPC UA服务器3中借助于X.509证书的DER-编码的字节及其利用证书发行人的私有密钥形成的签名进行调用。

当借助于结果报告回聚集服务器:所有的活动会话服务调用都是成功的时,那么用户不仅在聚集服务器而且在下级的OPC UA服务器中被认证,并且聚集服务器向OPC UA客户端证实了这一点。

也可能出现这种情况,即用户的认证在一个下级的OPC UA服务器中失败,例如是当用户的合法性数据对此不再有效时。只要用户能至少在一个下级的OPC UA服务器中被认证时,则用户同样可以访问在一个或多个所涉及服务器中的数据。

图4示出了对于可能的方法变体的流程图,同样也与根据图2的布置相对应。在此示出了,从OPC UA客户端将用于用户1的活动会话服务调用传输至OPC UA聚集服务器。聚集服务器仅仅通过SSO-组件的专有的接口功能来测定涉及的用户的所映射的(mapped)合法性数据,在这里该涉及的用户是用户1。聚集服务器随后直接在下级的OPC UA服务器中调用活动会话服务。这种方法变体简化了内部通信的处理,因此也可能省却SSO-组件。活动会话服务调用的所需要的复用可能在各个支持SSO的OPC UA服务器中实施。如果从SSO-组件中去掉那种功能(但在各个OPC UA服务器中可能被再次应用),则该功能必须在各个OPC UA服务器中重新被实施。

另一个、然而并未在附图中示出的对于前述装置和方法的变体可能在于,引入一种具有作为用于聚集服务器的代理的超级用户的方案。在该变体中,对于到聚集服务器的客户端-连接的各个构造,采用带有所有下级的OPC UA服务器中数据的所有访问权限的超级用户。这表明,聚集服务器独立于用户-标识符选择用于到下级的OPC UA服务器的连接的构造的一种特殊的标识符。

这种解决办法促成了聚集服务器中的更简单的用户-管理,但违反了用于最小特权的一般性的设计规则。此外,如果黑客成功窃取了聚集服务器的会话时则导致了较高的安全风险。它可能始终具有对所有下级的OPC UA服务器的访问权。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号