Condividi tramite


Infrastruttura di certificati OPC UA per il connettore per OPC UA

Il connettore per OPC UA è un'applicazione client OPC UA che consente di connettersi in modo sicuro ai server OPC UA. In OPC UA, la sicurezza include:

  • Autenticazione applicazione
  • Firma del messaggio
  • Crittografia dei dati
  • Autenticazione e autorizzazione degli utenti.

Questo articolo è incentrato sull'autenticazione dell'applicazione e su come configurare il connettore per OPC UA per connettersi in modo sicuro ai server OPC UA a livello periferico. In OPC UA, ogni istanza dell'applicazione ha un certificato X.509 che usa per stabilire l'attendibilità con le altre applicazioni OPC UA con cui comunica.

Per altre informazioni sulla sicurezza delle applicazioni OPC UA, vedere Autenticazione delle applicazioni.

Il diagramma seguente mostra la sequenza di eventi che si verificano quando il connettore per OPC UA si connette a un server OPC UA. Le sezioni successive in questo articolo illustrano i dettagli di ogni passaggio della sequenza:

Diagramma che riepiloga l'handshake di connessione del connettore OPC UA.

Certificato di istanza dell'applicazione del connettore per OPC UA

Il connettore per OPC UA è un'applicazione client OPC UA. Il connettore per OPC UA usa un singolo certificato di istanza dell'applicazione OPC UA per tutte le sessioni stabilite per raccogliere messaggi e dati dai server OPC UA. Una distribuzione predefinita del connettore per OPC UA usa cert-manager per gestire il certificato dell'istanza dell'applicazione:

  • Cert-manager genera un certificato autofirmato compatibile con OPC UA e lo archivia come segreto nativo di Kubernetes. Il nome predefinito per questo certificato è aio-opc-opcuabroker-default-application-cert.
  • Il connettore per OPC UA esegue il mapping e usa questo certificato per tutti i pod usati per connettersi ai server OPC UA.
  • Cert-manager rinnova automaticamente i certificati prima della loro scadenza.

Per impostazione predefinita, il connettore per OPC UA si connette a un server OPC UA usando l'endpoint con il livello di sicurezza più elevato supportato. Pertanto, è necessario stabilire in anticipo un handshake di attendibilità reciproca tra le due applicazioni OPC UA. Per abilitare l'attendibilità reciproca dell'autenticazione delle applicazioni, è necessario:

  • Esportare la chiave pubblica del certificato dell'istanza dell'applicazione del connettore per OPC UA dall'archivio segreto di Kubernetes, quindi aggiungerla all'elenco dei certificati attendibili per il server OPC UA.
  • Esportare la chiave pubblica dell'istanza dell'applicazione del server OPC UA e aggiungerla all'elenco dei certificati attendibili per il connettore per OPC UA.

È ora possibile eseguire la convalida dell'attendibilità reciproca tra il server OPC UA e il connettore per OPC UA. È ora possibile configurare un AssetEndpointProfile per il server OPC UA nell'interfaccia utente Web dell'esperienza operativa e iniziare a usarlo.

Usare certificati di istanza dell'applicazione server OPC UA autofirmato

In questo scenario è necessario mantenere un elenco di certificati attendibili che contiene i certificati di tutti i server OPC UA considerati attendibili dal connettore per OPC UA. Per creare una sessione con un server OPC UA:

  • Il connettore per OPC UA invia la chiave pubblica del certificato dell'istanza dell'applicazione al server OPC UA.
  • Il server OPC UA convalida il certificato del connettore rispetto all'elenco di certificati attendibili.
  • Il connettore convalida il certificato del server OPC UA rispetto all'elenco di certificati attendibili.

Per informazioni su come gestire l'elenco di certificati attendibili, vedere Configurare l'elenco di certificati attendibili.

Il nome predefinito per la risorsa personalizzata SecretProviderClass che gestisce l'elenco dei certificati attendibili è aio-opc-ua-broker-trust-list.

Usare i certificati dell'istanza dell'applicazione server OPC UA firmati da un'autorità di certificazione

In questo scenario si aggiunge la chiave pubblica dell'autorità di certificazione all'elenco di certificati attendibili per il connettore per OPC UA. Il connettore per OPC UA considera automaticamente attendibile qualsiasi server con un certificato di istanza dell'applicazione valido firmato dall'autorità di certificazione.

È anche possibile caricare un elenco di revoche di certificati (CRL) nell'elenco di certificati attendibili. Il connettore per OPC UA usa il CRL per verificare se l'autorità di certificazione ha revocato il certificato di un server OPC UA.

Per informazioni su come gestire l'elenco di certificati attendibili, vedere Configurare l'elenco di certificati attendibili.

Usare i certificati dell'istanza dell'applicazione server OPC UA firmati da un'autorità di certificazione intermedia

In questo scenario si vuole considerare attendibile un subset dei certificati rilasciati dall'autorità di certificazione. È possibile usare un elenco di certificati dell'autorità emittente per gestire la relazione di trust. Questo elenco di certificati dell'autorità emittente archivia i certificati intermedi che il connettore considera attendibile per OPC UA. Il connettore per OPC UA considera attendibili solo i certificati firmati da certificati intermedi presenti nell'elenco dei certificati dell'autorità emittente.

È anche necessario caricare la chiave pubblica dell'autorità di certificazione primaria nella lista dei certificati attendibili per il connettore per OPC UA. Il connettore per OPC UA utilizza la chiave pubblica dell'autorità di certificazione radice per convalidare i certificati intermedi nell'elenco dei certificati emessi dall'autorità.

È anche possibile caricare un elenco di revoche di certificati (CRL) nell'elenco dei certificati dell'autorità di certificazione. Il connettore per OPC UA usa il CRL per verificare se l'autorità di certificazione ha revocato il certificato di un server OPC UA.

Il nome predefinito per la risorsa personalizzata SecretProviderClass che gestisce l'elenco dei certificati dell'emittente è aio-opc-ua-broker-issuer-list.

Per informazioni su come gestire l'elenco dei certificati dell'autorità di certificazione, vedere Configurare l'elenco dei certificati dell'autorità di certificazione.

Funzionalità supportate

La tabella seguente illustra il livello di supporto delle funzionalità per l'autenticazione nella versione corrente del connettore per OPC UA:

Funzionalità Significato Simbolo
Configurazione del certificato dell'istanza dell'applicazione autofirmata OPC UA Supportato
Gestione dell'elenco di certificati attendibili OPC UA Supportato
Gestione degli elenchi dei certificati dell'emittente OPC UA Supportato
Configurazione del certificato di istanza dell'applicazione di livello aziendale OPC UA Supportato
Gestione dei certificati OPC UA non attendibili Non supportato
Gestione del servizio di individuazione globale OPC UA Non supportato