基于角色的访问控制在变电站网络安全中的应用

2022-08-09 00:53阮黎翔沈奕菲王自成李广华
浙江电力 2022年7期
关键词:令牌数字证书服务端

阮黎翔,沈奕菲,王自成,李广华

(1.国网浙江省电力有限公司电力科学研究院,杭州 310014;2.南京南瑞继保电气有限公司,南京 211102)

0 引言

近年来,随着IEC 62351 标准的不断迭代更新,对变电站自动化安全通信技术的研究和应用也在不断进步和成熟。IEC 62351系列标准主要针对变电站内IEC 61850 等通信规约的协议安全问题[1-2],大大提高了协议和通信的安全性。

文献[3]对IEC 62351 安全通信认证与加密两方面的关键技术进行了总结;文献[4]验证了基于IEC 62351标准的安全通信技术能够满足站控层实时通信的性能要求;文献[5]总结了参加IEC 62351 国际互操作大会取得站控层安全通信互操作的成功经验,证明了IEC 62351 安全通信的可行性;文献[6]设计了一种就地式PKI(公钥基础设施)证书管理系统并进行了工程应用,探索了智能变电站网络安全系统的密钥管理方案。总的来说,当前变电站站控层安全通信研究以IEC 62351—3[7]和IEC 62351—4[8]标准为主,通 过采用基于TLS(传输层安全协议)[9]的加密通信和基于数字证书与签名[10]体系的身份认证等手段增强变电站自动化通信系统的安全性。

但这些通信模式下,依然面临着一旦客户端设备连接上服务端设备,将无差别获得全部访问控制权限的问题。在实际应用中,出于管理和运维安全的考量,存在对不同客户端设备的访问控制权限进行区分的需求,比如有些客户端具备远方控制权限,有些客户端则不应具备远方控制权限。

针对上述安全通信所面临的问题,本文以IEC 62351—8[11]标准提出的RBAC(基于角色的访问控制)为理论依据开展了面向IEC 61850 站控层通信链接的RBAC 技术的研究与应用。变电站内的IEC 61850 站控层通信设备依据IEC 62351—3和IEC 62351—4 标准进行安全通信加固,其中IEC 62351—3 提出的加密通信和IEC 62351—4 提出的安全认证都可实现双方数字证书的相互验证机制,对其中任何一种机制的数字证书进行合适扩展,均可成为基于角色访问控制技术的实现载体。

客户端设备(站控层后台、远动等)被分配合适的角色,并使用扩展包含角色信息访问令牌的数字证书向服务端设备(间隔层二次设备等)发起建立安全通信链接的请求。服务端设备收到安全通信链接请求报文后,从其中包含的客户端设备数字证书中识别客户端的角色,并按照服务端设备内预置的角色与权限映射关系,赋予客户端相应的访问权限。以此达到针对IEC 61850站控层通信链路的分层级、分权限的远方访问控制功能,提升了电力系统设备远方访问控制的安全性和可控性。该研究已成功应用到浙江省湖州市110 kV上柏变电站的测控装置、后台系统和远动系统中,该站现已投入运行。

1 基于RBAC的IEC 61850通信流程

1.1 RBAC基本概念

RBAC 是一种有效的权限管理模型,其基本思想是:对系统操作的各种权限不是直接授予具体的用户,而是在用户与权限之间建立一个角色,每一种角色对应一组相应的权限。一旦用户被分配了适当的角色后,该用户就拥有此角色的所有操作权限。这样的优势在于:不必在每次创建用户时都进行分配权限的操作,只需分配用户相应的角色即可,而且角色的权限变更比用户的权限变更要少得多,从而简化用户的权限管理,减少系统的开销。

1.2 RBAC通信流程

IEC 61850 基于RBAC 的安全通信流程如图1所示。

图1 IEC 61850基于RBAC的通信流程

其应用流程可分为以下几个步骤:

1)角色分配:在某个用户使用客户端设备与服务端设备建立连接前,首先根据应用需要为该用户分配合适的角色。之后通过证书管理系统为该用户颁发数字证书,其中包含用户的角色信息。这部分操作在实际建立通信之前完成。

2)安全通信:用户通过客户端设备与服务端设备建立安全通信连接时,会使用步骤1)中所颁发的含有角色信息的数字证书。在IEC 62351安全通信体系下,无论是基于IEC 62351—3 的传输层安全加密,还是基于IEC 62351—4 的应用层身份认证,都会利用数字证书进行身份验证,如果数字证书不合法,安全通信连接将无法成功建立。

3)权限分配:服务端设备通过安全通信中客户端设备使用的数字证书获取客户端的角色信息,并依据服务端设备内预定义的角色与权限映射关系赋予该客户端设备相应访问权限。传输层安全加密和应用层身份认证过程中使用的数字证书,均可用于携带客户端的角色信息。

4)应用操作:客户端设备发起应用服务请求时,服务端设备按照步骤3)中分配给客户端设备的权限,判断其是否能够对指定的数据对象进行访问操作,如果具备权限,则执行应用操作,否则拒绝执行应用操作。

通过对不同的客户端设备颁发不同的角色证书,即可实现为特定用户分配特定访问权限的目的,从而达到分层、分权限的访问控制能力。

1.3 IEC 61850的RBAC模型

图2 展示了针对IEC 61850 站控层通信的RBAC模型。

图2 IEC 61850的RBAC的模型

主体是想要发起访问的具体个体,包括用户、自动化系统或软件应用程序,在电力系统中,例如具体的操作人员、SCADA(数据采集与监控系统)、调试客户端软件等。

角色与具体的工作职能相关联,主体与角色有映射关系,通常在建立通信之前就已经为主体分配好具体的角色;角色与具体的权限也有映射关系,这部分映射通常在服务端通信设备内预先进行实现。图2展示了预定义的7种默认角色。

权限是分配给特定对象的操作,如读取数据、写入数据、对控制对象发出控制命令等,操作可以被允许或拒绝,取决于发起操作的角色与权限的映射关系。图2展示了预定义的11种默认权限。

1.4 角色与权限的映射

预定义的每个角色所具备的权限都是图2 中11 种预定义权限的子集,图3 展示了每个角色所对应的权限。

图3 角色及其对应权限

一个角色是否能够对某个对象执行具体的操作,取决于这个角色与权限的映射关系,如果角色具备该权限,则可以执行具体的操作,否则会被拒绝。

图3 中,前4 个角色与实际应用关系较为密切,访问的是应用数据或文件;后3个角色则与安全功能相关,一般访问的是与安全相关的数据或文件。通常实际应用以前4个角色为主。

1.5 IEC 61850的权限定义

权限是针对特定对象所进行的特定操作。在站控层IEC 61850 通信中,特定对象一般对应IEC 61850模型的数据对象或文件等,特定操作对应IEC 61850的通信服务。

图4列出了每一种权限所对应的IEC 61850通信服务及其针对的数据对象。

图4 权限对应的服务与对象

2 数字证书的RBAC角色扩展

从IEC 61850 基于RBAC 的通信流程可知,实现RBAC 的关键在于角色信息的传递,为此IEC 62351—8提出了访问令牌的概念。

2.1 RBAC访问令牌

访问令牌用来传输用户的角色信息。其功能要求为:访问令牌由身份管理工具创建和管理;所有访问令牌都有生命周期,并且有可能过期;在验证访问令牌本身之前,传输访问令牌的用户必须通过对象的身份验证。

如前文所述,目前大多数的安全通信研究和实践主要通过加密通信和身份验证增强通信链接的安全性,这其中会用到数字证书,而基于数字证书的安全通信同样具备如下特点:数字证书由PKI 证书管理系统统一颁发和管理;数字证书具备有效期的限定;基于数字证书的安全通信会进行双向身份认证。上述这些特点与RBAC 访问令牌的要求是一致的,因此通过对数字证书进行适当的内容扩展,RBAC 的访问令牌就可以用数字证书作为载体,在建立安全通信链路时得到应用。

2.2 访问令牌的扩展方法

RBAC 的访问令牌基于数字证书的配置方法是通过扩展数字证书来实现的,需要遵循X.509v3证书[12]的语法规则。X.509标准证书允许对证书的Extensions(扩展)进行扩展用来携带独有的信息。因此可利用这种特性,通过数字证书传递角色的访问令牌。X.509证书的扩展语法规则如下:

通过上述语法可知,访问令牌的扩展需要两部分内容:第一,明确对象ID(OID)。访问令牌的标识是使用OID 实现的,IEC 62351 OID 树的根是1.0.62351。基于IEC 62351—8 标准的访问令牌定义的OID即为:1.0.62351.8.1(为了向前兼容,还需要识别1.2.840.10070.8.1)。第二,扩展具体的访问令牌内容。扩展的内容中需要能够完整地描述一个访问令牌。图5展示了一个完整的访问令牌所必须包含的内容。

按照是否需要对X.509证书进行扩展,访问令牌的属性可分成两类:

1)无需对证书进行扩展的属性:令牌持有者、令牌颁发者、有效期起始时间、有效期起始时间。这4 个属性分别与X.509 证书的本体内容中的主体、颁发者、有效期对应,因此无需对这4个属性进行额外定义。

2)需要对证书进行扩展的属性:角色ID、修订版本号、角色定义、职责范围。这4 个属性在X.509证书中并不包含,因此需要在证书的Exten⁃sions 中进行扩展定义。图5 对上述需要扩展定义的内容进行了释义,并就如何取值进行了详细地说明。

图5 访问令牌定义

2.3 访问令牌的扩展格式

由上文可知,访问令牌的扩展主要针对的是角色ID、修订版本号、角色定义、职责范围,因此在X.509证书的Extensions中扩展访问令牌可按照以下格式进行,具体的取值方法见图5。

1)访问令牌OID的值格式

2.4 访问令牌的扩展示例

访问令牌的具体扩展遵循ASN.1[13]语法,这里以同时包含两个角色,即观察者(ID 为0)和操作员(ID 为1)的访问令牌为例,其取值以及对应的ASN.1语法结构如下:

3 RBAC在变电站安全通信的应用

3.1 变电站RBAC安全通信体系架构

RBAC 变电站安全通信技术已应用于浙江省湖州市110 kV 上柏变电站,并已投入实际运行。图6 所示为该变电站RBAC 网络安全通信体系架构。

图6 变电站RBAC安全通信体系架构

3.2 通信设备的角色分配

站内客户端通信设备主要包括站控层的监控后台、远动以及调试客户端等,需要根据实际应用需求为这些设备分配合适的角色。间隔层二次设备是服务端通信设备,在通信过程中对客户端的角色进行识别,并分配相应的访问权限,其本身无需分配角色,颁发用于安全通信的不包含角色访问令牌的数字证书即可。

1)监控后台的角色分配

监控后台的使用者通常分为管理员、操作员和普通运维人员,理论上应为每个使用者单独分配角色以及数字证书。为简化实际的管理和运维工作程序,该站按照监控后台所有使用者功能所需的最大通信服务权限分配通信角色,即观察者和操作员的组合角色,仅对监控后台颁发一份同时包含观察者和操作员访问令牌的数字证书用于安全通信。同时,监控后台根据登入账号的使用者类型,赋予每个登入账号不同的访问权限,防止越权访问。

2)远动的角色分配

与监控后台类似,远动同样只颁发一份包含观察者和操作员角色访问令牌的证书。由远动设备识别远方登入账号的角色,并限定其访问能力,保障不越权访问。

3)调试客户端角色分配

调试客户端也需要使用数字证书与站内的间隔层设备进行安全通信。相对于监控后台和远动,调试客户端需要根据实际调试内容为其颁发包含适当角色的数字证书,其中可能包含的角色有观察者、工程师、安装者或者这些角色的组合。同时,还需要对数字证书设置合理的到期时间,即到期后将无法使用该数字证书与站内二次设备进行安全通信。

3.3 数字证书的颁布

该站部署了一套PKI证书管理系统(本文主要介绍RBAC 安全通信技术,对PKI 证书管理系统不做过多赘述),为站内所有安全通信设备颁发证书:一方面为每个通信客户端颁发包含其角色访问令牌的数字证书,另一方面为间隔层设备颁发普通的数字证书用来进行安全通信。本站实际应用过程中,对应用层安全认证过程中使用的数字证书进行了扩展,用以携带RBAC的角色信息。

3.4 站内RBAC安全通信过程

监控后台、网关机以及调试电脑等客户端设备与站内间隔层服务端设备使用各自被颁发的数字证书建立双向认证的安全通信,安全通信符合IEC 62351—3 与IEC 62351—4 标准的安全通信流程。其中包括对数字证书和数字签名进行校验,服务端设备仅允许校验通过的客户端继续保持通信,对校验不通过的客户端断开通信连接。客户端设备也会对服务端设备进行相同的校验操作。

站内的服务端设备根据客户端设备使用的数字证书中携带的角色访问令牌,按照服务端设备内置的角色与权限映射关系,赋予每个通信客户端相应的访问控制权限。在通信过程中,对于满足访问控制权限要求的客户端操作请求给予肯定响应,对于不满足访问控制权限要求的客户端操作请求给予否定响应。角色与访问控制权限之间的映射关系见图6,符合本文1.4章节的论述。

3.5 站内RBAC安全通信效果

通过使用上述安全通信技术,上柏变电站内的所有测控装置、后台系统和远动系统之间构建了较为完善的安全通信体系。一方面,未经授权的客户端接入站内网络后,将被服务端设备拒绝进行访问操作;另一方面,获得授权的客户端仅能在其分配的角色对应的权限范围内,对服务端设备进行有限的访问。该技术解决了变电站内通信的权限管理问题,提升了站内安全通信的安全性和可控性。

传统的访问控制系统通常是对就地操作的访问控制及相应角色与权限的分配,但在通信层面不具备访问控制的能力。如,第三方客户端接入站内通信网络后,可与后台、远动设备具有相同的访问权限,无法对其接入与控制站内系统起到访问限制作用。本站采用的RBAC 安全通信技术使得间隔层设备在通信层面也具备了访问控制能力,所有外部接入的通信客户端需要使用安全通信方式才能与间隔层设备进行通信,而安全通信则需要PKI 证书管理系统为其颁布合法的证书并授予适当的角色,以此达到控制所有通信客户端的合法接入和访问权限控制的效果,从而使站内的安全访问控制体系更加立体化。

4 RBAC对通信性能的影响

文献[4]详细分析了基于IEC 62351—3加密通信与IEC 62351—4 身份认证的安全通信技术应用于变电站内站控层网络的通信性能,证明安全通信技术能够满足站控层各类应用需求。而在此基础上增加的RBAC 安全通信技术,按照其流程对通信性能的影响分析如下:

1)角色的分配

角色的分配流程实际是基于PKI 证书管理系统进行证书颁布,独立于具体的应用通信过程,因此不影响实际通信性能。

2)权限的分配

在通信链接建立阶段,服务端设备需要从数字证书中解析出客户端的角色信息,并为客户端分配相应的访问权限。由于安全通信过程本身就要对证书进行解析和校验,仅需增加对扩展内容中角色信息的额外解析,且角色与权限的映射关系已提前预置,只需根据角色进行相应的查表检索,占用的性能开销不大。此外,在正常运行工况下,站控层的通信链接一般不会频繁建立,因此对于角色信息的解析及权限的分配流程不会对通信性能产生显著影响。

3)权限的生效

在通信过程中,服务端设备在收到客户端发起的应用通信服务请求时,根据客户端具备的权限,判断是否允许继续操作。由于权限的分配在链接建立阶段已经完成,权限的生效在实现过程中直接进行判别即可,对通信性能的影响微乎其微。

此外,RBAC 技术本身仅影响通信流程,不会增加额外的通信报文,对通信网络的流量不会产生影响。

综合以上分析可知,在实现安全通信的基础上,RBAC 技术对通信性能不会产生大的影响,能够满足站控层应用需求。

5 结语

基于IEC 62351—3、IEC 62351—4 的安全通信技术极大提升了变电站内通信的安全性,以此为基础,本文针对基于角色的访问控制技术进行了研究,以IEC 62351—8 标准为理论依据,为站内每个通信客户端设备分配适当的角色,并对安全通信中使用的数字证书进行扩展,定义了RBAC的访问令牌。在通信链接建立阶段,服务端通信设备根据客户端设备所使用数字证书中的RBAC访问令牌进行角色识别,并依据服务端设备预置的角色与权限映射关系进行权限分配,实现了针对IEC 61850站控层通信链路的分权限访问的安全通信,提升了电力系统设备远方访问的安全性和可控性,有利于安全通信技术在变电站内的工程化实施,为安全通信技术的推广应用提供有价值的参考。

猜你喜欢
令牌数字证书服务端
称金块
基于路由和QoS令牌桶的集中式限速网关
一种高精度均匀取样算法及其网络应用
新时期《移动Web服务端开发》课程教学改革的研究
基于三层结构下机房管理系统的实现分析
基于三层结构下机房管理系统的实现分析
PKI技术在SSLVPN中的应用
数字签名保护Word文档
《道教法印令牌探奥》出版发行