移动互联环境下全集成工业控制系统SSO方案的制作方法

文档序号:12478003阅读:200来源:国知局

本发明涉及一种控制系统方案,尤其涉及一种移动互联环境下全集成工业控制系统方案。



背景技术:

在全集成系统中,ERP、MES等系统与SCADA系统集成,会为用户提供诸多的应用。如果针对不同的应用,用户采用不同的登录名和密码,那么这种认证方式会带来诸多的安全管理问题,特别是在移动互连环境下,用户借助移动终端对应用进行访问,在移动终端上多次输入用户名密码会造成使用的不便。



技术实现要素:

发明目的:本发明的目的在于设计一种基于单点登录系统SSO的认证方式,用于移动用户与全集成SCADA系统的各个应用之间的认证和访问控制。针对全集成系统基于ID的密钥管理方案的基础上,提出了单点登录安全扩展认证方案,用于移动用户与工业应用之间的认证;在移动互联环境下全集成SCADA系统中,用户、AC、和系统中的应用之间存在两种信任关系。

·一种是用户和AC之间信任的关系。AC对其认证的用户进行身份信息的管理;同时,用户信任由AC所认证的全集成SCADA系统的应用。

·另一种是AC与全集成SCADA系统的应用之间的信任关系。AC可以对访问全集成系统的应用的用户进行身份验证,用以确认这个用户是否有权限对这个应用进行访问;系统的应用相信并接受由AC所认证的用户对其的访问。

本发明是这样实现的:移动互联环境下全集成工控制系统SSO方案是针对全集成系统基于ID的密钥管理方案的基础上提出了单点登录安全扩展认证方案,首先用户票据颁发,用户登录全集成SCADA系统,与AC进行认证,在认证完成之后,AC对这个用户进行票据颁发。步骤如下:1、用户向AC申请认证票据;2、AC确认用户的身份;3、AC生成用户认证票据;4、AC将票据传送给用户;5、用户确认AC身份。

然后是用户与全集成系统应用的相互认证,用户在和AC认证之后,获得AC颁发的票据TKU,就可以利用这个票据访问全集成SCADA系统中的应用;用户对移动互联环境下的全集成SCADA系统的应用的访问流程如下:1、用户将票据发送给要访问的应用;2、应用确认用户身份;3、应用将票据发送给AC;4、AC确认票据;5、应用响应用户;6、用户建立会话密钥。

本发明相较于现有技术具有的积极效果在于:由于AC与系统的应用有相互信任的关系,那么被AC所认证授权的用户,也会被系统的应用所信任;同样,用户在完成与AC之间的认证之后,也会信任AC所认证过的应用。在用户通过移动终端登录系统时,这种信任关系的建立能够实现“一处登录,多处访问”的移动互联环境下全集成SCADA系统的单点登录SSO。其中“一处登录”,是指登录AC;“多处访问”,是指访问全集成SCADA系统的应用。针对移动互联环境下全集成SCADA系统的日益增多的应用。

附图说明:

附图是本发明SCADA系统中用户可以直接访问应用的SS0流程示意图。

具体实施方式:

票据的颁发

用户登录全集成SCADA系统,首先会与AC进行认证,这是单点登录过程的开始。用户和AC之间相互认证的过程可以采用生成共享密钥的方式进行。在认证完成之后,AC会对这个用户进行票据颁发。

1.用户向AC申请认证票据。

·用户利用自身的身份ID,IDU,和AC的身份ID,IDAC,生成共享密钥KAU=F(IDAC,IDU)。

·RequestTK是用户的票据请求,随机序列号nonce用于表示消息的新鲜性,用户将消息发送给AC。

2.AC确认用户的身份。

·AC收到消息后,按照用户的身份ID和自身的ID,计算出共享密钥KAU=F(IDAC,IDU),将加密信息进行解密。

·如果RequestTK被正确解密,并且nonce在之前的通信中没有被使用过,那么就可以确认该用户的身份。

3.AC生成用户认证票据。

·AC根据用户身份查询用户权限表,根据用户权限会对用户发布一个票据,Ticket(TKU)。

·这个票据上记录包括:用户的基本信息、用户的访问权限、权限的有效时间、票据的创建时间和到期时间。

4.AC将票据传送给用户。

·AC将票据用用户和AC之间的共享密钥KAU加密后传送给用户。

·ResponseTK是票据请求的响应。AC将消息发送给用户。

5.用户确认AC身份。

·用户利用共享密钥KAU=F(IDAC,IDU)将加密信息解密。

·如果ResponseTK被正确解密,并且nonce是之前用户发送请求信息中的随机序号,那么就可以确认这个票据TKU是由AC所颁发的。

·用户将这个票据保存在移动终端。

TKU=IDU||PU||TIU||TEU||CTU||ETU||SU

表1-1是用户访问权限票据,它的具体内容如下:

·用户的基本信息包括:用户ID(IDU)。

·用户的访问权限(PU=[p1,p2,...pm])是指:用户可以访问的SCADA系统的应用,可以包括MTU、SCADA系统的其他应用等。这里m是指SCADA系统中所有应用的个数,这里可以用1和0分别表示用户是否有权限访问这个应用。

·访问权限的开始时间(TIU=[ti1,ti2,...,tim])和结束时间(TEU=[te1,te2,...,tem])是用来记录这个用户对SCADA系统中有访问权限的应用的访问时限,也就是对这个应用访问的的有效时限。当超过这个时限时,对这个应用的访问就会被拒绝。

·票据创建时限(CTU)和到期时限(ETU):当票据在有效时限内,这个票据就有效,否则,票据就已过期,需要用户与AC重新进行认证,并由AC重新向用户颁发票据。

·AC的签名信息(SU):这用以保证票据的可靠性,也就是说证明这个票据是由AC发布的。AC将票据的内容进行哈希处理之后,对这个结果进行加密,以防止票据的内容被篡改。加密的密钥为AC特有的,可以是KMC为AC选取的专门用于票据签名

SU=E[H(IDU||PU||TIU||TEU||CTU||ETU)]。

表1-1票据内容

用户与全集成系统应用的相互认证

用户在和AC认证之后,获得AC颁发的票据TKU,就可以利用这个票据访问全集成SCADA系统中的应用。附图描述了用户对移动互联环境下的全集成SCADA系统的应用的访问流程。

1.用户将票据发送给要访问的应用。

·用户利用自身的身份ID,IDU,和应用的身份ID,IDAPP,计算出共享密钥KAppU=F(IDAPP,IDU)。

·用户选择随机序列号nonce,用以保证消息的新鲜性;sn5为用户提供的用以生成用户和应用之间会话密钥的密钥因子。用户将消息发送给应用。

2.应用确认用户身份。

·应用收到这个票据,利用自身的身份ID和用户的身份ID计算出共享密钥钥KAppU=F(IDAPP,IDU)。

·应用将消息解密,利用票据TKU中的用户ID和消息中的用户ID进行对比,如果两者一致,则应用确认消息是用户发出。Nonce用以确认这个消息是否是新鲜的。

·如果票据TKU记录表明用户有权限访问这个应用,并且访问时间是合法的,则应用就会将票据发送给AC用以判断票据的真伪。

3.应用将票据发送给AC。

·应用利用自身ID,IDAPP,和AC的ID,IDAC,计算与AC之间的共享密钥KACApp=F(IDAC,IDAPP)。

·应用将用户的票据TKU、随机序号nonce和票据验证请求RequestVer一并用共享密钥加密后,将消息发送给AC。

4.AC确认票据。

·AC利用自身ID和应用的ID计算出共享密钥KACApp=F(IDAC,IDAPP),将加密信息解密。

·如果票据验证请求RequestVer被正确解密,并且nonce对应用户ID是之前没有被使用过,则AC开始验证票据的真伪。

·AC利用票据的签名钥匙对票据中的签名进行验证,如果验证通过,则这个票据是合法的票据。

·AC发送消息给应用,用以表明票据是真的;否则就发送消息用以表明票据是伪造的。

5.应用响应用户。

·应用如果确认这个用户的票据是真的,就会用共享密钥KAppU将nonce和sn6加密回传给用户其中sn6是应用提供的生成应用和用户之间会话密钥的密钥因子。

·应用计算G(sn5,sn6)得到应用和用户随后通信中用到的会话密钥。

6.用户建立会话密钥。

·用户将应用响应的消息用共享密钥KAppU解密,nonce用以表明消息的新鲜性。

用户计算得到应用和用户随后通信中用到的会话密钥;并开始对应用的访问。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1