Usare certificati e chiavi OPC UA

Introduzione

Per comunicare in sicurezza tra loro, le applicazioni OPC UA devono disporre di certificati pubblici e corrispondenti chiavi private adeguati (per maggiori informazioni fare riferimento alle specifiche OPC UA).

Se il progetto dispone di entrambi gli oggetti Server OPC UA e Client OPC UA è possibile usare in entrambi lo stesso certificato.

I certificati affidabili di altre applicazioni OPC UA sono impostabili sia a design time che a runtime. Si impostano a design time quando si dispone dei certificati e/o quando non si dispone delle funzionalità necessarie per farlo a runtime (vedere Impostare i certificati affidabili a runtime).

Nota

l’impostazione a design time è da ripetere quando un’altra applicazione precedentemente nota cambia il suo certificato. In questo caso è ovviamente necessario ripubblicare la Q Application.

Generare certificati OPC UA in Q Studio

  1. Espandere il menu image1, poi fare clic su Creazione certificato.

  2. Compilare i campi e scegliere dove salvare il certificato, poi fare clic su Crea: Q Studio genera un certificato pubblico con estensione .der e una corrispondente chiave privata in un file con estensione .pem.

    Suggerimento

    salvare il certificato in una cartella personale, fuori dal progetto per motivi di backup.

    Nota

    i valori di Dimensione chiave RSA e Algoritmo di firma sono tutti compatibili con le policy di sicurezza OPC UA impostabili negli oggetti Server OPC UA e Client OPC UA. Valori più alti di questi campi comportano un impiego di risorse maggiore per la cifratura e decifrazione dei messaggi tra server e client.

Impostare certificati pubblici e chiavi private di server e client

  1. In un oggetto Server OPC UA nella proprietà Certificato server, oppure in un oggetto Client OPC UA nella proprietà Certificato client, fare clic su Sfoglia: si apre la finestra delle risorse di progetto da cui scegliere il certificato.

  2. Scegliere il certificato:

    Se il certificato…

    Allora…

    è già nelle risorse del progetto

    selezionarlo e fare clic su Seleziona.

    non è nelle risorse del progetto

    1. Fare clic su image3 e selezionare il file da importare, poi confermare: il file viene importato nel progetto nella cartella predefinita per il certificato del server/client (vedere Posizione di certificati e chiavi nei progetti UNIQO e nelle Q Application).

    2. Fare clic su Seleziona.

  3. In un oggetto Server OPC UA nella proprietà Chiave privata server, oppure in un oggetto Client OPC UA nella proprietà Chiave privata client, fare clic su Sfoglia: si apre la finestra delle risorse di progetto da cui scegliere il file con la chiave privata.

  4. Scegliere la chiave privata:

    Se la chiave privata…

    Allora…

    è già nelle risorse del progetto

    selezionarla e fare clic su Seleziona.

    non è nelle risorse del progetto

    1. Fare clic su image5 e selezionare il file da importare, poi confermare: il file viene importato nel progetto nella cartella predefinita per la chiave privata del server/client (vedere Posizione di certificati e chiavi nei progetti UNIQO e nelle Q Application).

    2. Fare clic su Seleziona.

Impostare i certificati affidabili a design time

Certificati già disponibili

Per impostare come affidabile un certificato di cui si dispone a design time, importarlo nel progetto come segue:

  1. Fare clic su image6: si apre la finestra delle risorse di progetto.

  2. Se il certificato è di un server, posizionarsi in PKI > Trusted > Server, se il certificato è di un client posizionarsi in PKI > Trusted > Client.

  3. Fare clic su image7 e selezionare il certificato da importare, poi confermare: il file viene importato nel progetto e a runtime viene considerato affidabile.

Certificati di server OPC UA da cui si importano nodi

Per impostare come affidabile il certificato di un server rifiutato in fase di importazione di nodi con un oggetto Client OPC UA, e quindi per riuscire ad importare tali nodi a design time, spostare il certificato dalla cartella di progetto ApplicationFiles/PKI/Rejected/Server alla cartella di progetto ApplicationFiles/PKI/Trusted/Server.

Impostare i certificati affidabili a runtime

Per impostare come affidabile il certificato di un server o di un client rifiutato a runtime, se il certificato è di un server, spostare il certificato dalla cartella QApplication/ApplicationFiles/PKI/Rejected/Server alla cartella QApplication/ApplicationFiles/PKI/Trusted/Server, se il certificato è di un client spostare il certificato dalla cartella QApplication/ApplicationFiles/PKI/Rejected/Client alla cartella QApplication/ApplicationFiles/PKI/Trusted/Client : dopo alcuni secondi il certificato viene considerato affidabile senza necessità di riavviare la/le Q Application.

Suggerimento

la posizione della cartella QApplication è indicata nel pannello dei log di Q Studio nel messaggio di errore che segnala che il certificato è stato rifiutato e copiato.

È possibile spostare il certificato in tre modi:

  • (Solo su target Windows) Manualmente da Esplora Risorse.

  • Da remoto, tramite il software ASEM Ubiquity.

  • Tramite la Q Application stessa.