OPC UA 連接器的 OPC UA 憑證基礎結構
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 連接器的預設部署會使用 cert-manager 來管理其應用程式執行個體憑證:
- Cert-manager 會產生自我簽署的 OPC UA 相容憑證,並將其儲存為 Kubernetes 原生秘密。 此憑證的預設名稱是 aio-opc-opcuabroker-default-application-cert。
- OPC UA 連接器會對應並針對其用來連線到 OPC UA 伺服器的所有 Pod 使用此憑證。
- Cert-manager 會在憑證到期之前自動更新憑證。
根據預設,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 連接器信任憑證授權單位,它會自動信任任何具有憑證授權單位所簽署之有效應用程式執行個體憑證的伺服器。
若要瞭解如何將受信任的憑證從 Azure 金鑰保存庫 投影到 Kubernetes 叢集,請參閱管理 Azure IoT 作業部署的秘密。
處理受信任憑證清單之 SecretProviderClass
自訂資源的預設名稱為 aio-opc-ua-broker-trust-list。
OPC UA 連接器簽發者憑證清單
如果 OPC UA 伺服器的應用程式執行個體憑證是由中繼憑證授權單位簽署,但您不想自動信任憑證授權單位簽發的所有憑證,您可以使用簽發者憑證清單來管理信任關係。 此 簽發者證書清單 會儲存 OPC UA 信任連接器的證書頒發機構單位憑證。
如果 OPC UA 伺服器的應用程式憑證是由中繼憑證授權單位簽署,則 OPC UA 連接器會驗證憑證授權單位直至根目錄的完整鏈結。 簽發者憑證清單應包含鏈結中所有憑證授權單位的憑證,以確保 OPC UA 連接器可以驗證 OPC UA 伺服器。
您可使用與管理受信任憑證清單相同的方式來管理簽發者憑證清單。 處理簽發者憑證清單之 SecretProviderClass
自訂資源的預設名稱為 aio-opc-ua-broker-issuer-list。
支援的功能
下表顯示在 OPC UA 連接器的目前版本中驗證的功能支援層級:
功能 | 意義 | 符號 |
---|---|---|
設定 OPC UA 自我簽署的應用程式執行個體憑證 | 支援 | ✅ |
處理 OPC UA 信任的憑證清單 | 支援 | ✅ |
處理 OPC UA 簽發者憑證清單 | 支援 | ✅ |
設定 OPC UA 企業級應用程式執行個體憑證 | 支援 | ✅ |
處理 OPC UA 未受信任的憑證 | 不支援 | ❌ |
OPC UA 全域探索服務的處理 | 不支援 | ❌ |