张艳肖,李守智,高立刚
1.西安交通大学 城市学院,陕西 西安710018
2.西安理工大学 自动化学院,陕西 西安710048
3.西北勘测设计研究院,陕西 西安710065
近些年,智能电网的各个领域的研究均取得了巨大进展[1]。控制系统、变电站、服务提供商、市场和客户逐渐成为一个整体,促进了信息交流,根据实际需求优化电力生产。这些信息是通过能够连接多个异构系统的通信基础设施而转递的[2]。可以全面访问控制对象(例如智能电表、传感器、充电站、远程终端单元、网关等)的局部小型网络或大型通信系统,通常安装在较远位置,或靠近关键的基础设施。但不同的电力生产方和供应方所采用的技术可能包含不同类型的访问和安全策略,因此,不同技术的连接会产生互操作性问题[3]。
为实现隶属不同组织的系统之间通信的安全性和互操作性,可以采用中间策略动态执行系统(介于支持访问策略和安全策略)。通过中间系统,可以阻止未知访问并进行操作过滤,从而使决策系统对不同环境类型的访问具有自适应性[4,5]。如文献[6]提出了用于电子服务的环境感知动态访问控制架构,其中系统能够根据环境对访问进行认证和授权。本文提出的方法同样包含该特征,以及IEC-62351 标准制定的基于角色访问控制(RBAC)的最小权限方案[7]。相关研究也表明[8],RBAC是电力系统和分布式服务中广泛使用的高效机制,只有授权用户和自动化agents 才能够访问受限制数据对象(例如IEC-61850 对象)。此外,通过RBAC,可以根据组织策略重新分配系统控制及其安全性,从而根据主体-角色-权利的类别进行授权,也可增强电力系统管理中基于角色的访问控制。如文献[9]提出了基于责任区域的RBAC 访问控制机制,将智能电网细分为不同区域。
为说明监测场景,本文以图论为基础。网络的部署取决于图形-理论解释,以结构可控性理论[10]和电力控制集作为控制的基础。为实现这些图的互连,采用基于超节点概念的去中心化架构,以识别控制结构内的策略决定点(PDP),对业务活动进行分配和过滤。仿真实验结果证明了所提方法的有效性,整体鲁棒性较好。
为了从概念角度对控制网络建模,同时考虑到实际应用,本文提出的网络架构以超节点概念为基础[11]。
结构可控性包含在图形理论解释中,为识别和选择给定网络内驱动节点的最小集合(ND,其中驱动节点(将控制命令注入网络的节点)ndi∈ND),本文采用电力控制集(PDS)[12],对电网进行高效“监测”。PDS 以传统的支配集(DS)为基础,相关研究表明[13],DS 是无线网络和集群相关等多种场景下的有效工具。PDS 问题可以简化为两个基本的观测规则(OR):
OR1:ND中的一个顶点观察其自身及其所有邻居,该观测规则与DS 问题直接相关。
OR2:若观测到的顶点度d≥2 的顶点v与观测到的d-1 个顶点相邻,则剩余未观察到的顶点也会成为已观测顶点。当OR1ÍOR2 时,则OR2 隐式包含了OR1,OR1 表示网络内的观测程度,OR2表示电力控制。
以上两个基本规则倾向于在图(网络)内生成包含多个访问点(即多个根)的分层网络,这使得连接到唯一网关的超节点架构的适配变得复杂。解决该问题的简单方法是:1)迫使幂律分布保持对单个节点(网关)的相依性;2)从网关注入控制。然而,这两个步骤意味着要进一步满足两个基本条件:1)保持网络的无环性,以及来自网关的控制方向;2)始终遵守控制条件OR1 和OR2。
算法1 描述了这两个条件,其中需要生成作为输入参数的网络分布类型及其连接度α。为了表示与真实场景有着相似结构的稀疏图,α值必须较小。使用该分布G(V,E),则“生成网络”的程序必须定义V中的一个新节点(网关),新节点与G(V,E)中的节点直接连接且无父节点(即vi,(vi,v)∈E),因此得到的图必须为有向连通图。
算法1 中,DAG 表示有向无环图,可通过深度优先搜索算法来计算;DS 表示已观测节点集合,即支配集或OR1。N 表示邻近节点集合。OR2 与OR1 满足关系OR1 包含于OR2,复杂度为O(n2)。
假定通信信道的安全性受IEC-62351 给出的安全性措施(如表1 所示)保护。其中包括传输层安全(TLS)/安全套接层(SSL)以及密钥交换算法(例如DH 或RSA);基于数字签名标准(DSS)和RSA 的数字签名;例如RCA-128、3DES(三重数据加密标准)或高级加密标准(AES)的加密算法。举例来说,IEC-62351-4 标准[14]推荐将密码套件TLS_DH_DSS_WITH_AES_256_SHA 用于控制中心与变电站之间的通信;而IEC-62351-6 推荐将套件TLS_DH_RSA_WITH_AES_128_SHA 用于变电站内部通信。但这些措施不足以保证信道安全。需要基于防火墙和入侵检测系统等保护机制,使用额外的安全方法来配置节点之间的虚拟专用网络(VPN)。
表1 IEC-62351 的安全策略列表Table 1 List of safe strategy for IEC-62351
在上文提出的网络架构下,本节将分析控制对象的外部访问保护手段。控制对象是监督和数据采集的必要元件,其表示(例如网关、基站、服务器、RTU 等)或至少处于一个的观测下,且∈ND的元件(例如传感器、执行器、智能电表等)。必须保护这些元件不受物理或逻辑实体(例如操作员、自动化软件或设备)的影响。
本文提出了策略执行点及其分布式PDP,以确保两个或更多同级实体之间的互操作性。该架构基于RBAC 最小特权概念,以确保认证、授权和互操作的安全性,并根据图论来修正上下文观测度。
本节将讨论集成在超节点系统内的通用架构,并介绍认证、授权和互操作相关的构造组件。图2 给出了所提方法的三个主要执行阶段。
图1 所提方法的主要执行阶段和组件Fig.1 The main execution phases and components of the proposed method
阶段1-认证:隶属于某个实体的主体必须在所属的身份服务器上完成认证。主体认证通过后,服务器向其提供认证令牌,至少包含主体相关信息(例如向其分配的标识和角色)以及目的节点相关信息。认证令牌的简单结构如下:{objectID,subjectID,roleID primary,{roleID1,…,roleIDn}次级时间戳,令牌到期时间,主体在目标区域的行动/意图等}。
阶段2-授权:向受保护对象进行授权和访问的互连点,其中必须生成授权令牌。若要请求该程序,与基础设施相关的PEP 服务必须通过最近的主PDP 连接到基础设施,并向其提交认证令牌和在目的节点上的操作类型(例如读取或控制)。在主PDP 正在工作的情况下,PEP 必须透明连接到另一个分布式PDP(次级PDP),同时考虑使用委托方案。
阶段3-互操作:是PEP 能够透明地应用授权令牌中包含的安全策略中执行主体所需操作的状态。
PDP 的两个主要组件为:1)验证管理器;2)策略制定管理器(表示为PDM)。验证管理器与每个认证令牌的验证核实(例如验证令牌格式的类型、大小和内容),以及分配给请求者的角色和权限密切相关。而PDM 组件旨在对访问进行评价,考虑到输入参数集合,仅在接收访问的情况下才准备授权令牌。根据IEC-62351-8,令牌可分为以下三类:1)ID 证书(TLS/SSL 环境的配置文件A);2)属性证书(TLS/SSL 环境的配置文件B);3)简单令牌(无任何额外安全性的配置文件C)。
每个控制基础设施必须依赖于一个身份服务器,身份服务器负责主体认证以及制备访问令牌,IEC-62351-8 建议所有控制系统信任为用户分配角色并管理访问令牌的第三方实体(例如安全管理员);应用普通安全元组(用户名、密码以及X.509 证书);并配置用于认证信息比对和访问令牌检索的储存库。为此,提出的方法采用基于配置文件A 的最简单令牌,支持SSL/TLS 的LDAP(轻量级目录访问协议)目录,其中每个LDAP 对象应RFC-4524 的约束,RFC-4524 根据唯一属性(本文研究中为控制实体的ID)表示RBAC 关系。
PDM 中还集成了上下文管理器,负责检查网络的临界程度和受保护对象的可访问程度(见图1)。为执行该任务,管理器首先需要与最近的网关协作,从中接收违反OR1 的未观测节点比率的相关信息。网关必须周期性执行算法2,其中,U为未观测到的节点集合;网关属于驱动器节点集的一部分。通过算法2 来验证图中每个nd∈ND是否满足第一条观测规则。现实应用中,上下文状态应包含IEC-62351-7 标准中制定的网络和系统管理(NSM)数据对象。NMS 对象负责对电力网咯和系统的健康(例如网络配置、安全参数、服务质量或冗余系统状态)进行动态监测。本文简化了数据对象的应用,从而在拓扑变化、结构可控性约束和可访问程度方面进行理论和实践研究。
本文分别在Matlab 和Java 中实施了本文所提网络架构和提出的策略执行方法。前者包含带两种幂律分布(PLOD,α=0.1,0.2;BA,α=3)的算法1,通过执行OR1 和OR2 实现了电力控制。结果为子图为G(V,E),相对于其网关保持隐式分级结构,以及每个子图中的驱动器节点集合ND。第二个部分则包含PDP 的组件,遵循IEC-62351-8。
配置LDAPv3 服务器以进行访问令牌管理,使用Java 中编码。为简便起见,将相同的存储库应用于所有网络和所有控制主体。在LDAP 中插入条目时,遵循RFC-2798,存储编码后的X.509 证书及角色和权利的相关信息。
仿真基于三个幂律网络的互连,分别为100~500 个节点(小型网络),500~1000 个节点(中型网络)≥1000 个节点(大型网络)。基于这些分布,确定这三个网络各自与三个独立设施(infrID-netID)相关,即(infrID1-netD1)、(infrID2-netD2)和(infrID3-netD3),对于每个网络,可存在来自1 个以上基础设施的访问。
为修改不同的控制对象,首先使用算法1 中定义的OR1 和OR2 得到控制器节点(或驱动器节点ND)。从其他节点(已观测节点)中随机提取传感器节点子集以及执行器节点子集,这种节点分类是基于监控变电站的真实结构,即多个驱动器节点(RTU)的互连。另外,对于授权要求,本文遵循文献[15]技术规则。
表2 给出了6 个控制主体的可访问度,考虑到完全访问、接受率、拒绝访问以及职责动态分离的激活指标(DSD)模式中的访问百分比。该概要对应于以Java 编写的6 个软件agents,其能够动态随机生成不同网络分布中的访问请求。
表2 获得的IEC-62351-8 角色和权利Table 2 Roles and rights of IEC-62351-8
仿真实验针对三个网络(netD1、netD2和netD3)的互连运行了20 min,表2 展示了实验结果。表2还包含了这些上下文内agents 的访问程度,可以看出,PLOD 分布抵御合并攻击的鲁棒性较高,而BA 分布则性能较差,控制和监督的丢失率达到70%。
在智能电网系统中,本文提出了基于IEC-62351-8 和RBAC 的策略执行系统,将图论作为电力系统控制网络的结构可控性的核心理念,嵌入到电力控制中的元素遵循两个基本观测规则,一个规则描述了与应用程序的控制水平的观测度。本文还针对子图(子网络)的互连,提出了基于超节点的去中心化网络架构。该架构改变了幂律分布和电力控制的结构,从而在每个网络中建立起对单个点的依赖关系。仿真结果表明,未知用户不能连接到受控对象,授权实体处于最小特权条件下。
未来将对所提方法进行扩展,帮助RBAC 方案及其角色始终保持活动。与早期检测和自恢复相关的方法能够防止控制系统发生意外故障。