你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
OPC UA 连接器是一种 OPC UA 客户端应用程序,可用于安全地连接到 OPC UA 服务器。 在 OPC UA 中,安全性包括:
- 应用程序身份验证
- 消息签名
- 数据加密
- 用户身份验证和授权。
本文重点介绍了应用程序身份验证,以及如何配置 OPC UA 连接器来安全地连接到边缘的 OPC UA 服务器。 在 OPC UA 中,每个应用程序实例都有一个 X.509 证书,用于与它通信的其他 OPC UA 应用程序建立信任。
若要了解 OPC UA 应用程序安全性,请参阅应用程序身份验证。
下图显示了 OPC UA 连接器连接到 OPC UA 服务器时发生的事件序列。 本文后面的部分将讨论序列中每个步骤的详细信息:
OPC UA 连接器的应用程序实例证书
OPC UA 连接器是 OPC UA 客户端应用程序。 OPC UA 的连接器使用它建立的所有会话的单个 OPC UA 应用程序实例证书,以从 OPC UA 服务器收集消息和数据。 OPC UA 连接器的默认部署使用 cert-manager 来管理其应用程序实例证书:
- 证书管理器生成自签名 OPC UA 兼容证书,并将其存储为 Kubernetes 本机机密。 此证书的默认名称为 aio-opc-opcuabroker-default-application-cert。
- OPC UA 连接器映射此证书并将它用于所连接的所有 pod,以连接到 OPC UA 服务器。
- 证书管理器会在证书过期之前自动续订证书。
默认情况下,OPC UA 连接器使用支持最高安全级别的终结点连接到 OPC UA 服务器。 因此,必须事先建立两个 OPC UA 应用程序之间的相互信任握手。 若要启用相互应用程序身份验证信任,需要:
- 从 Kubernetes 机密存储库导出 OPC UA 连接器的应用程序实例证书的公钥,然后将其添加到 OPC UA 服务器的受信任证书列表。
- 导出 OPC UA 服务器的应用程序实例的公钥,然后将其添加到 OPC UA 连接器的受信任证书列表。
现已实现 OPC UA 服务器和 OPC UA 连接器之间的相互信任验证。 现在可在操作体验 web UI 中为 OPC UA 服务器配置 AssetEndpointProfile
并开始使用它。
使用自签名 OPC UA 服务器应用程序实例证书
在此情境中,您需要维护一个受信任证书列表,其中包含所有由 OPC UA 连接器信任的 OPC UA 服务器的证书。 若要使用 OPC UA 服务器创建会话,请执行以下操作:
- OPC UA 的连接器将应用程序实例证书的公钥发送到 OPC UA 服务器。
- OPC UA 服务器根据其受信任的证书列表验证连接器的证书。
- 连接器根据其受信任的证书列表验证 OPC UA 服务器的证书。
若要了解如何管理受信任的证书列表,请参阅 “配置受信任的证书”列表。
处理受信任证书列表的 SecretProviderClass
自定义资源的默认名称为 aio-opc-ua-broker-trust-list。
使用由证书颁发机构签名的 OPC UA 服务器应用程序实例证书
在此方案中,将证书颁发机构的公钥添加到 OPC UA 连接器的受信任证书列表中。 OPC UA 的连接器会自动信任任何具有证书颁发机构签名的有效应用程序实例证书的服务器。
还可以将证书吊销列表(CRL)上传到受信任的证书列表。 OPC UA 的连接器使用 CRL 检查证书颁发机构是否已吊销 OPC UA 服务器的证书。
若要了解如何管理受信任的证书列表,请参阅 “配置受信任的证书”列表。
使用由中间证书颁发机构签名的 OPC UA 服务器应用程序实例证书
在这种情况下,您想要信任由证书颁发机构颁发的部分证书。 可以使用 颁发者证书列表 来管理信任关系。 此颁发者证书列表存储 OPC UA 信任的连接器的中间证书。 OPC UA 的连接器仅信任由颁发者证书列表中的中间证书签名的证书。
还必须将根证书颁发机构的公钥上传到 OPC UA 连接器的受信任证书列表。 OPC UA 的连接器使用根证书颁发机构的公钥来验证颁发者证书列表中的中间证书。
还可以将证书吊销列表(CRL)上传到颁发者证书列表。 OPC UA 的连接器使用 CRL 检查证书颁发机构是否已吊销 OPC UA 服务器的证书。
处理颁发者证书列表的 SecretProviderClass
自定义资源的默认名称为 aio-opc-ua-broker-issuer-list。
若要了解如何管理颁发者证书列表,请参阅 “配置颁发者证书”列表。
支持的功能
下表显示了当前版本的 OPC UA 连接器中身份验证的功能支持级别:
功能 | 含义 | 符号 |
---|---|---|
配置 OPC UA 自签名应用程序实例证书 | 支持 | ✅ |
处理 OPC UA 受信任证书列表 | 支持 | ✅ |
处理 OPC UA 颁发者证书列表 | 支持 | ✅ |
配置 OPC UA 企业级应用程序实例证书 | 支持 | ✅ |
处理 OPC UA 不受信任的证书 | 不支持 | ❌ |
处理 OPC UA 全局发现服务 | 不支持 | ❌ |