西门子 SIMATIC WinCC 与 S7-1200/1500 CPU 的安全访问与通信
发布日期:
2022-07-21

SIMATIC WinCC 与 S7-1200/1500 CPU 的安全访问,通俗讲就是在设备建立通信连接时加一道密码保护,只有组态了正确密码的 WinCC 项目才允许读写特定 CPU 中的数据。能防止对 CPU 未经授权的访问。

目前 SIMATIC WinCC 所提供的 SIMATIC S7-1200, S7-1500 驱动仅支持以太网通信。SIMATIC WinCC V7.2 以及以上版本支持与 S7-1500 CPU 进行安全访问。SIMATIC  WinCC V7.3 及以上版本开始支持与 S7-1200 进行安全访问。

在 S7-1200/1500 CPU 的硬件组态中, 提供了4种访问级别,以限制对特定功能的访问。

简单介绍4种访问级别的功能:

1)完全访问权限(无任何保护)

允许对 CPU 以完全未受保护的状态进行访问。知道此密码的用户可以不受限制地访问 CPU。

2)读访问权

允许对 CPU 以受写保护的状态进行访问。尽管知道密码,但是知道该密码的用户只能对 CPU 进行读取访问。并且用户获得 HMI 数据访问权。

3)HMI 访问

允许对 CPU 以受读/写保护的状态进行访问。获知该密码的用户只获得 HMI 数据访问权。

4)不能访问(完全保护)

不允许访问 CPU。知道密码的用户,可以根据密码相关的保护级别进行访问。

以上4种访问级别,如果 S7-1200/1500 CPU 的访问等级选择的是完全访问权限(无任何保护)/读访问权/ HMI 访问权限这3种,SIMATIC WinCC 在组态通信连接时无需设置 CPU 访问密码。如果访问等级选择的是不能访问(完全保护),则需填写以上3个等级中任意一个等级的密码才可以与 S7-1200/1500 进行握手并建立通信关系。

SIMATIC WinCC 与 S7-1200/1500 的安全通信

连接建立完成后,SIMATIC WinCC 与 S7-1200/1500 CPU 的通信数据还是以明文的方式呈现,并未对交换的数据进行加密。

TIA Portal V17 推出的 S7-1200/1500 新固件版本支持 HMI ( HMI 为人机界面的英语缩写,SIMATIC WinCC 也属于 HMI )安全通信。此安全通信具备以下特点:

1)机密性

即,数据安全/无法窃取。

2)完整性

即,数据在传输过程中未发生篡改。

3)端点认证

即,端点通信伙伴的身份确认。

SIMATIC WinCC与S7-1200/1500 CPU实现安全通信需满足以下条件:

1)S7-1500 固件版本 V2.9 以及更高版本

2)S7-1200 固件版本 V4.5 以及更高版本

3)SIMATIC WinCC V7.5 SP2 UPD4 或更高版本

S7-1200/1500 和 SIMATIC WinCC 之间通过签名证书建立信任关系(握手),确保数据的真实性和完整性;使用 TLS 协议加密通信数据(数据交换),确保数据的机密性。

TLS (传输层安全性协议 ,英文Transport Layer Security)是 SSL 协议的后继协议,在网络 ISO 模型中处于会话层。TLS 最初是为了给 HTTP 协议加密使用,现在 HMI 安全通信的应用层协议也是使用的 TLS。

HMI 安全通信组态非常简单,首先需要在 PLC 程序中选择由 TIA Portal 或者第三方机构生成的证书,然后借助工具把证书导入 SIMATIC WinCC 项目中,以及下载 PLC 程序。

在 PLC 程序选择证书的界面,会显示“仅支持 PG/PC 和 HMI 安全通信”选项(此选项仅S7-1500 V2.9 及更高 / S7-1200 V4.5 及更高版本支持)。

此选项的含义并不是激活 HMI 安全通信功能,而是是否兼容 HMI 非安全通信。因为版本低于 V7.5 SP2 UPD4 的 SIMAITC WinCC 软件并不支持 HMI 安全通信,为了兼容早期的 WinCC 项目,拥有新固件版本的 S7-1200/S7-1500  需要取消此选项,才能与之通信。下表是 SIMATIC WinCC 与 S7-1200/S7-1500 CPU 安全通信的各版本选项设置参考。

SIMATIC WinCC 与 S7-1200/1500 CPU 的安全访问与通信

表一  SIMATIC WinCC 与 S7-1200 安全通信各版本选项设置

SIMATIC WinCC 与 S7-1200/1500 CPU 的安全访问与通信

表二  SIMATIC WinCC 与 S7-1500 安全通信各版本选项设置

上述表格列举出建立 HMI 安全通信需要的版本以及设置信息。在满足条件的SIMATIC WinCC 项目中创建好通信连接,然后加载从 TIA Portal 项目中导出的 SCADA 数据包,从而导入证书。

下图中显示的是如何从 TIA Portal 项目中导出的 SCADA 数据包,SCADA 数据包包含证书以及 PLC 中可访问的变量信息。然后把 SCADA 数据包复制到需要组态或者运行 SIMAITC WinCC 项目的电脑中。

SIMATIC WinCC 与 S7-1200/1500 CPU 的安全访问与通信

图 TIA Portal 项目导出 SCADA 数据包

在 SIMATIC WinCC V7.5SP2 UPD4 以及更高版本项目中,可以通过所创建的通信连接加载 SCADA 数据包,加载时会提示证书的导入。

SIMATIC WinCC 安全通信过程中,还需要注意运行 SIMATIC WinCC 项目的电脑 和 PLC 的系统时间,尤其是 PLC 的系统时间不能是出厂时间。因为 HMI 安全通信是通过证书来建立连接,那么参与通信的设备,系统时间需要在证书规定的有效时间范围内。