Sdílet prostřednictvím


Konfigurace infrastruktury certifikátů OPC UA pro konektor pro OPC UA

V tomto článku se dozvíte, jak nakonfigurovat infrastrukturu certifikátů OPC UA pro konektor pro OPC UA. Tato konfigurace umožňuje určit servery OPC UA, kterým důvěřujete, aby bylo možné bezpečně navázat relaci.

Na základě specifikace OPC UA funguje konektor pro OPC UA jako jedna aplikace OPC UA při vytváření zabezpečené komunikace se servery OPC UA. Konektor pro OPC UA používá stejný certifikát instance aplikace pro všechny zabezpečené kanály, které se otevře na serverech OPC UA.

Konektor pro OPC UA musí důvěřovat serverům OPC UA, ke kterým se připojuje. Konektor udržuje seznam důvěryhodných certifikátů. Další informace najdete tady:

Požadavky

  • Instance provozu Azure IoT nasazená se zabezpečeným nastavením Pokud jste nasadili operace Azure IoT s testovacím nastavením, musíte nejprve povolit zabezpečená nastavení.

Konfigurovat samopodepsaný certifikát instance aplikace pro konektor pro OPC UA

Výchozí nasazení konektoru pro OPC UA nainstaluje všechny prostředky potřebné nástrojem cert-manager k vytvoření certifikátu podepsaného svým držitelem kompatibilního s OPC UA. Tento certifikát je uložený v tajném aio-opc-opcuabroker-default-application-cert kódu. Tento tajný klíč se mapuje na všechny konektory pro pody OPC UA a funguje jako certifikát instance klientské aplikace OPC UA. cert-manager zpracovává automatické prodlužování platnosti tohoto certifikátu instance aplikace.

Tato konfigurace obvykle stačí pro vyhovující a zabezpečenou komunikaci mezi servery OPC UA a konektorem pro OPC UA v ukázkovém nebo průzkumovém prostředí. V produkčním prostředí použijte v nasazení certifikáty instance aplikace podnikové úrovně .

Konfigurace seznamu důvěryhodných certifikátů

Pokud se chcete připojit k serveru OPC UA, musíte nejprve vytvořit vzájemnou důvěru při ověřování aplikace. Konfigurace seznamu důvěryhodných certifikátů serverů, ke kterým se má konektor OPC UA připojit:

Pokud chcete ke správě seznamu důvěryhodných certifikátů použít webové uživatelské rozhraní provozního prostředí, proveďte následující kroky:

  1. Získejte certifikát instance serverové aplikace OPC UA jako soubor. Tyto soubory mají obvykle příponu .der nebo .crt. Tento soubor obsahuje pouze veřejný klíč.

    Návod

    Server OPC UA má obvykle rozhraní, které umožňuje exportovat certifikát instance aplikace. Toto rozhraní není standardizované. Pro servery, jako je KEPServerEx, existuje uživatelské rozhraní konfigurace založené na Systému Windows pro správu certifikátů. Jiné servery můžou mít webové rozhraní nebo používat složky operačního systému k ukládání certifikátů. Informace o exportu certifikátu instance aplikace najdete v uživatelské příručce k vašemu serveru. Jakmile certifikát máte, ujistěte se, že je zakódovaný buď DER, nebo PEM. Tyto certifikáty jsou obvykle uložené v souborech s příponou .der nebo .crt. Pokud certifikát není v jednom z těchto formátů souborů, použijte nástroj, například openssl k transformaci certifikátu do požadovaného formátu.

  2. Certifikát můžete přidat přímo do služby Azure Key Vault jako tajný klíč a importovat z ní nebo certifikát nahrát do seznamu důvěryhodných certifikátů pomocí provozního prostředí.

    Poznámka:

    Konektor pro OPC UA používá nativní tajný kód Kubernetes s názvem aio-opc-ua-broker-trust-list k uložení seznamu důvěryhodných certifikátů. Tento tajný klíč se vytvoří při nasazení operací Azure IoT.

  3. Ve webovém uživatelském rozhraní provozního prostředí přejděte na stránku Koncové body prostředku.

  4. Seznam důvěryhodných certifikátů zobrazíte tak, že vyberete Spravovat certifikáty a tajné kódy a pak Certifikáty:

    Snímek obrazovky s provozním prostředím zobrazující stránku pro nahrání certifikátu pro seznam důvěryhodných certifikátů

  5. Soubor certifikátu můžete nahrát z místního počítače nebo přidat soubor, který jste dříve přidali jako tajný kód ve službě Azure Key Vault:

    Snímek obrazovky s provozním prostředím zobrazujícím úspěšně nahraný certifikát

  6. Chcete-li uložit změny, vyberte Použít . Certifikát se teď přidá do seznamu důvěryhodných certifikátů. Pokud certifikát nahrajete, přidá se automaticky do služby Azure Key Vault jako tajný klíč.

Pokud váš server OPC UA používá certifikát vydaný certifikační autoritou (CA), můžete certifikační autoritě důvěřovat přidáním certifikátu veřejného klíče do seznamu důvěryhodných certifikátů. Konektor pro OPC UA teď automaticky důvěřuje všem serverům, které používají platný certifikát vydaný certifikační autoritou. Proto nemusíte explicitně přidávat certifikát serveru OPC UA do konektoru pro seznam důvěryhodných certifikátů OPC UA. V současné době nemůžete použít provozní prostředí k přidání seznamu odvolaných certifikátů do seznamu důvěryhodných certifikátů.

Návod

Pokud chcete do provozního prostředí přidat nový certifikát, musíte být přiřazeni k roli Správce tajných kódů služby Key Vault pro službu Azure Key Vault.

Důležité

Pokud přidáváte certifikát ze služby Azure Key Vault, musí být uložený jako tajný klíč, ne jako certifikát.

Konfigurace seznamu certifikátů vystavitele

Pokud váš server OPC UA používá certifikát vydaný certifikační autoritou, ale nechcete důvěřovat všem certifikátům vydaným certifikační autoritou, nakonfigurujte seznam certifikátů vystavitele:

Než budete moct nakonfigurovat seznam certifikátů vystavitele s vašimi zprostředkujícími certifikáty, musíte certifikát certifikační autority přidat do seznamu důvěryhodných certifikátů. Konektor pro OPC UA používá certifikát certifikační autority k ověření řetězu vystavitelů certifikátu serveru OPC UA.

Pokud chcete ke správě seznamu certifikátů vystavitele použít webové uživatelské rozhraní provozního prostředí, proveďte následující kroky:

  1. Získejte certifikát vystavitele, který byl použit k podepsání certifikátů instance serveru, ve formě souboru. Tyto soubory mají obvykle příponu .der nebo .crt. Tento soubor obsahuje pouze veřejný klíč. Pro certifikát vystavitele můžete mít také soubor .crl (seznam odvolaných certifikátů).

  2. Certifikát vystavitele můžete přidat přímo do služby Azure Key Vault jako tajný klíč a importovat ho odtud, nebo můžete nahrát certifikát a seznam odvolaných certifikátů (soubor .crl) do seznamu certifikátů vystavitele pomocí provozního prostředí.

    Poznámka:

    Konektor pro OPC UA používá nativní tajný kód Kubernetes s názvem aio-opc-ua-broker-issuer-list k uložení seznamu certifikátů vystavitele. Tento tajný klíč se vytvoří při nasazení operací Azure IoT.

  3. Ve webovém uživatelském rozhraní provozního prostředí přejděte na stránku Koncové body prostředku.

  4. Pokud chcete zobrazit seznam certifikátů vystavitele, vyberte Spravovat certifikáty a tajné kódy a pak Certifikáty:

    Snímek obrazovky z operačního prostředí zobrazující stránku pro nahrání certifikátů do seznamu certifikátů vystavitele

  5. Soubor certifikátu vystavitele můžete nahrát z místního počítače nebo přidat soubor, který jste dříve přidali jako tajný klíč ve službě Azure Key Vault:

    Snímek obrazovky z uživatelského rozhraní zobrazující úspěšně nahraný certifikát vystavitele

  6. Chcete-li uložit změny, vyberte Použít . Certifikát byl nyní přidán do seznamu certifikátů vystavitele. Pokud certifikát nahrajete, přidá se automaticky do služby Azure Key Vault jako tajný klíč.

Provozní prostředí můžete také použít k přidání seznamu odvolaných certifikátů (soubor .crl) do seznamu důvěryhodných certifikátů.

Návod

Pokud chcete do provozního prostředí přidat nový certifikát, musíte být přiřazeni k roli Správce tajných kódů služby Key Vault pro službu Azure Key Vault.

Důležité

Pokud přidáváte certifikát ze služby Azure Key Vault, musí být uložený jako tajný klíč, ne jako certifikát.

Konfigurace serveru OPC UA

Pokud chcete dokončit konfiguraci vzájemného vztahu důvěryhodnosti ověřování aplikace, musíte nakonfigurovat server OPC UA tak, aby důvěřoval konektoru pro certifikát instance aplikace OPC UA:

  1. Pokud chcete extrahovat konektor pro certifikát OPC UA do opcuabroker.crt souboru, spusťte následující příkaz:

    kubectl -n azure-iot-operations get secret aio-opc-opcuabroker-default-application-cert -o jsonpath='{.data.tls\.crt}' | base64 -d > opcuabroker.crt
    
    kubectl -n azure-iot-operations get secret aio-opc-opcuabroker-default-application-cert -o jsonpath='{.data.tls\.crt}' | %{ [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($_)) } > opcuabroker.crt
    
  2. Mnoho serverů OPC UA podporuje pouze certifikáty ve formátu DER. V případě potřeby pomocí následujícího příkazu převeďte certifikát opcuabroker.crt na opcuabroker.der:

    openssl x509 -outform der -in opcuabroker.crt -out opcuabroker.der
    
  3. V dokumentaci k vašemu serveru OPC UA se dozvíte, jak přidat opcuabroker.crt soubor certifikátu nebo opcuabroker.der soubor certifikátu do seznamu důvěryhodných certifikátů serveru.

Konfigurace certifikátu instance aplikace podnikové úrovně

V produkčních prostředích můžete konektor nakonfigurovat pro OPC UA tak, aby používal certifikát instance aplikace podnikové úrovně. Certifikační autorita organizace obvykle vydává tento certifikát a k vaší konfiguraci potřebujete certifikát certifikační autority. Často existuje hierarchie certifikačních autorit a musíte do konfigurace přidat kompletní ověřovací řetězec certifikačních autorit.

Následující příklad odkazuje na následující položky:

Položka Popis
opcuabroker-certificate.der Soubor obsahující veřejný klíč certifikátu instance aplikace podnikové úrovně
opcuabroker-certificate.pem Soubor, který obsahuje privátní klíč certifikátu instance aplikace podnikové úrovně
subjectName Řetězec názvu subjektu vložený do certifikátu instance aplikace.
applicationUri Identifikátor URI instance aplikace vložený do instance aplikace.
enterprise-grade-ca-1.der Soubor, který obsahuje veřejný klíč certifikátu certifikační autority podnikové úrovně.
enterprise-grade-ca-1.crl Soubor CRL certifikační autority.

Stejně jako v předchozích příkladech použijete k ukládání certifikátů a seznamů CRL vyhrazený tajný klíč Kubernetes. Pokud chcete nakonfigurovat certifikát instance aplikace podnikové úrovně, proveďte následující kroky:

  1. Pomocí následujícího příkazu uložte certifikáty a CRL v tajném kódu aio-opc-ua-broker-client-certificate :

    # Create aio-opc-ua-broker-client-certificate secret
    # Upload OPC UA public key certificate as an entry to the secret
    # Upload OPC UA private key certificate as an entry to the secret
    az iot ops connector opcua client add \
        --instance <your instance name> \
        -g <your resource group> \
        --public-key-file "./opcuabroker-certificate.der" \
        --private-key-file "./opcuabroker-certificate.pem" \
        --subject-name <subject name from the public key cert> \
        --application-uri <application uri from the public key cert>
    
  2. Pokud použijete certifikační autoritu k vydávání certifikátů pro zprostředkovatele OPC UA, nakonfigurujte tajný klíč aio-opc-ua-broker-issuer-list . Použijte klienta Kubernetes, například kubectl ke konfiguraci tajných kódů na podnikové úrovni ca-1.der a enterprise-grade-ca-1.crl:

    # Append CA certificate to the issuer list secret as a new entry
    az iot ops connector opcua issuer add --instance <your instance name> --resource-group <your resource group> --certificate-file "./enterprise-grade-ca-1.der"
    
    # Append the CRL to the issuer list secret as a new entry
    az iot ops connector opcua issuer add --instance <your instance name> --resource-group <your resource group> --certificate-file "./enterprise-grade-ca-1.crl"
    

Teď, když konektor pro OPC UA používá podnikový certifikát, nezapomeňte přidat veřejný klíč nového certifikátu do seznamů důvěryhodných certifikátů všech serverů OPC UA, ke kterým se potřebuje připojit.