

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Configura una sorgente OPC UA in SiteWise Edge
<a name="configure-opcua-source"></a>

È possibile utilizzare la AWS IoT SiteWise console o la funzionalità di un gateway SiteWise Edge per definire e aggiungere una sorgente OPC UA al gateway SiteWise Edge per rappresentare un server OPC UA locale.

**Topics**
+ [Configura una sorgente OPC UA (console)](#config-opcua-source-console)
+ [Configurare una fonte OPC UA ()AWS CLI](#configure-opc-ua-source-cli)

## Configura una sorgente OPC UA (console)
<a name="config-opcua-source-console"></a>

È possibile utilizzare la console per configurare la sorgente OPC UA con la seguente procedura.

**Nota**  
Attenzione: la duplicazione TQVs può comportare una doppia ricarica.

**Per configurare una sorgente OPC UA utilizzando la console AWS IoT SiteWise**

1. Passare alla [console AWS IoT SiteWise](https://console.aws.amazon.com/iotsitewise/).

1. Nella barra di navigazione a sinistra, scegli **Edge gateway** nella sezione **Edge**.

1. Seleziona il gateway SiteWise Edge per aggiungere una fonte OPC UA.

1. Scegli **Aggiungi origine dati**

1. Immettete un nome per la fonte.

1. Compilare il campo **Local endpoint (Endpoint locale)** del server dell'origine dati. L'endpoint può essere l'indirizzo IP o il nome host. È inoltre possibile aggiungere un numero di porta all'endpoint locale. Ad esempio, l'endpoint locale potrebbe avere il seguente aspetto: **opc.tcp://203.0.113.0:49320**

1. (Facoltativo) Per **Node ID for selection**, aggiungi filtri di nodo per limitare i flussi di dati che vengono importati nel Cloud. AWS Per impostazione predefinita, i gateway SiteWise Edge utilizzano il nodo radice di un server per importare tutti i flussi di dati. È possibile utilizzare i filtri dei nodi per ridurre il tempo di avvio e l'utilizzo della CPU del gateway SiteWise Edge includendo solo i percorsi dei dati utilizzati per la modellazione. AWS IoT SiteWise Per impostazione predefinita, i gateway SiteWise Edge caricano tutti i percorsi OPC UA tranne quelli che iniziano con. `/Server/` Per definire i filtri dei nodi OPC UA, è possibile utilizzare i percorsi dei nodi `*` e `**` i caratteri jolly. Per ulteriori informazioni, consulta [Usa i filtri dei nodi OPC UA in Edge SiteWise](opc-ua-node-filters.md).

1. Le **destinazioni** variano tra i gateway V3 abilitati per MQTT e i gateway Classic Stream V2.
   + **Gli stream classici, le destinazioni gateway V2** hanno una relazione 1:1 con l'origine. Ogni fonte invia dati a una destinazione particolare.
   + Le **destinazioni gateway V3 abilitate per MQTT** vengono configurate separatamente perché il modello hub and spoke consente di centralizzare la configurazione e la gestione di più fonti di dati su gateway diversi. Per configurare le destinazioni in un gateway V3, vedere. [Comprendi le destinazioni Edge AWS IoT SiteWise](gw-destinations.md#source-destination)

------
#### [ Classic steams, V2 gateway destinations ]
   + **AWS IoT SiteWise in tempo reale**: scegli questa opzione per inviare i dati direttamente allo AWS IoT SiteWise storage. Acquisisci e monitora i dati in tempo reale all'edge.
   + AWS IoT SiteWise Memorizzato nel **buffer con Amazon** S3: invia dati in formato Parquet ad Amazon S3 e quindi importali nello storage. AWS IoT SiteWise Scegli questa opzione per importare i dati in batch e archiviare i dati storici in modo conveniente. Puoi configurare la posizione preferita del bucket Amazon S3 e la frequenza con cui desideri che i dati vengano caricati su Amazon S3. Puoi anche scegliere cosa fare con i dati dopo l'ingestione. AWS IoT SiteWise Puoi scegliere di rendere i dati disponibili sia AWS IoT SiteWise in Amazon S3 che in Amazon S3 oppure puoi scegliere di eliminarli automaticamente da Amazon S3 dopo che sono stati importati in. AWS IoT SiteWise
     + Il bucket Amazon S3 è un meccanismo di staging e buffering e supporta file in formato Parquet.
     + Se selezioni la casella di controllo **Importa dati nello AWS IoT SiteWise storage**, i dati vengono caricati prima in Amazon S3 e poi nello AWS IoT SiteWise storage.
       + Se selezioni la casella di controllo **Elimina dati da Amazon S3**, i dati vengono eliminati da Amazon S3 dopo essere stati importati nello storage. SiteWise 
       + Se deselezioni la casella di controllo **Elimina dati da Amazon S3**, i dati vengono archiviati sia in Amazon S3 che in storage. SiteWise 
     + Se deselezioni la casella di controllo **Importa dati nello AWS IoT SiteWise storage**, i dati vengono archiviati solo in Amazon S3. Non viene importato nello SiteWise storage. 

     Visita [Manage data storage](manage-data-storage.md) per i dettagli sulle varie opzioni di archiviazione AWS IoT SiteWise offerte. Per ulteriori informazioni sulle opzioni di prezzo, consulta la pagina [AWS IoT SiteWise dei prezzi](https://aws.amazon.com/iot-sitewise/pricing/).

      
   + **AWS IoT Greengrass stream manager**: utilizza AWS IoT Greengrass stream manager per inviare dati alle seguenti destinazioni AWS cloud: canali in AWS IoT Analytics, flussi in Amazon Kinesis Data Streams, proprietà degli asset o oggetti AWS IoT SiteWise in Amazon Simple Storage Service (Amazon S3). *Per ulteriori informazioni, consulta [Manage data stream on the AWS IoT Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-data-streams.html) Core nella Developer Guide.AWS IoT Greengrass Version 2 *

     Inserisci un nome per lo AWS IoT Greengrass stream.

------
#### [ MQTT-enabled, V3 gateway destinations ]

   1. [Gateway V3 compatibili con MQTT per Edge AWS IoT SiteWise](mqtt-enabled-v3-gateway.md)Per informazioni su come aggiungere le destinazioni pertinenti, consulta la pagina.

   1. Ritorna a questa procedura dopo aver aggiunto le destinazioni di origine.

------

1. Nel riquadro **Configurazione avanzata**, puoi fare quanto segue:

   1. Scegli una **modalità di sicurezza dei messaggi** per le connessioni e i dati in transito tra il server di origine e il gateway SiteWise Edge. Questo campo è la combinazione della politica di sicurezza OPC UA e della modalità di sicurezza dei messaggi. Scegliete la stessa politica di sicurezza e la stessa modalità di sicurezza dei messaggi che avete specificato per il vostro server OPC UA.

   1. Se la tua fonte richiede l'autenticazione, scegli un Gestione dei segreti AWS segreto dall'elenco di **configurazione dell'autenticazione**. Il gateway SiteWise Edge utilizza le credenziali di autenticazione contenute in questo segreto quando si connette a questa fonte di dati. È necessario allegare segreti al AWS IoT Greengrass componente del gateway SiteWise Edge per utilizzarli per l'autenticazione delle fonti di dati. Per ulteriori informazioni, consulta [Configurare l'autenticazione dell'origine dati per SiteWise Edge](configure-source-authentication-ggv2.md).
**Suggerimento**  
Il server di dati potrebbe disporre di un'opzione denominata **Allow anonymous login (Consenti accesso anonimo)**. Se questa opzione è impostata su **Yes (Sì)**, l'origine non richiede l'autenticazione.

   1. *(Facoltativo) È possibile attivare un prefisso del flusso di dati selezionando **Attiva prefisso del flusso di dati -** opzionale.*

      1. Immettete un prefisso per il **flusso di dati**. Il gateway SiteWise Edge aggiunge questo prefisso a tutti i flussi di dati provenienti da questa fonte. Utilizzare un prefisso del flusso di dati per distinguere tra flussi di dati con lo stesso nome da origini diverse. Ogni flusso di dati deve avere un nome univoco all'interno del tuo account.

   1. (Facoltativo) Scegliete un'opzione **di conversione del tipo di dati** per convertire i tipi di dati OPC UA non supportati in stringhe prima di inserirli. AWS IoT SiteWise Converti i valori degli array con tipi di dati semplici in stringhe JSON e i tipi di dati in stringhe ISO 8601 DateTime . Per ulteriori informazioni, consulta [Conversione di tipi di dati non supportati](string-conversion.md).

   1. Scegliete un **trigger di modifica dei dati predefinito** per i nodi che non sono contenuti in un gruppo di proprietà definito dall'utente. Il trigger di modifica dei dati predefinito determina quando il server OPC UA invia valori aggiornati al gateway. È possibile scegliere una delle seguenti opzioni:
      + **Stato**: per ricevere dati solo quando lo stato cambia.
      + **StatusValue**— per ricevere dati quando uno stato o un valore cambia.
      + **StatusValueTimestamp**— per ricevere dati quando uno stato, un valore o un timestamp cambia.

   1. (Facoltativo) Su un gateway V3 abilitato per MQTT, è possibile utilizzare la **configurazione Discovery per configurare il processo di scoperta** dei nodi OPC UA. La configurazione Discovery sostituisce il precedente file system di override di configurazione per queste opzioni con impostazioni basate su console che si aggiornano dinamicamente senza dover riavviare il gateway.
**Nota**  
Il **trigger di modifica dei dati predefinito** richiede la versione 3.1.0 o successiva del componente IoT SiteWise OPC UA Collector. Per ulteriori informazioni, consulta [Aggiorna la versione di un componente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).

      1. Per **Numero massimo di richieste di navigazione simultanee**, inserisci il numero massimo di richieste di navigazione che il tuo server OPC UA può gestire contemporaneamente. È possibile configurare fino a 500 richieste di navigazione simultanee per origine dati.

      1. Per **Numero massimo di nodi per richiesta di navigazione**, inserisci il numero massimo di nodi da inviare in ogni richiesta di navigazione al server OPC UA. È possibile inviare fino a 1.000 nodi per richiesta di navigazione.

      1. Scegli **Evita i loop dell'albero dei nodi** per evitare che il gateway rimanga bloccato in riferimenti circolari durante la navigazione nella struttura del server OPC UA. Se selezionato, il gateway tiene traccia delle posizioni visitate per evitare i loop infiniti che possono verificarsi quando i nodi del server fanno riferimento l'uno all'altro secondo uno schema circolare.

      1. Scegliete **Enable node traversal** per consentire al gateway di esplorare la struttura completa del vostro server OPC UA per scoprire tutti i punti dati disponibili dalle vostre apparecchiature e dispositivi. Se selezionato, il gateway naviga nell'organizzazione dei dati dell'apparecchiatura oltre il livello principale per trovare automaticamente tutti i sensori, i controlli e i punti di misurazione.

      1. Scegliete **Abilita il rilevamento periodico** per eseguire automaticamente le operazioni di rilevamento a intervalli regolari per rilevare i cambiamenti nella struttura del server OPC UA. Se selezionato, il gateway monitora continuamente le apparecchiature o i punti dati appena aggiunti, assicurando che vengano rilevati automaticamente e resi disponibili per la raccolta dei dati.

         1. Per Intervallo di **rilevamento periodico, imposta l'intervallo** di tempo tra le operazioni di rilevamento automatico quando è in esecuzione il rilevamento periodico. L'intervallo di rilevamento periodico minimo è di 30 secondi e il massimo è di 30 giorni.

         1. Per Numero **massimo di nodi scoperti per intervallo**, imposta il numero massimo di nodi che devono essere scoperti per intervallo di rilevamento. Questo aiuta a controllare il carico sia sul gateway che sul server OPC UA durante le operazioni di rilevamento.

   1. (Facoltativo) Per i **gruppi di proprietà**, **scegliete Aggiungi nuovo gruppo**.

      1. Immettete un **nome** per il gruppo di proprietà.

      1. Per **le proprietà**:

         1. Per **i percorsi dei nodi**, aggiungi i filtri dei nodi OPC UA per limitare i percorsi OPC UA su cui vengono caricati. AWS IoT SiteWise Il formato è simile all'**ID del nodo per la selezione**.

      1. Per **le impostazioni del gruppo**, effettuate le seguenti operazioni:

         1. Per l'**impostazione della qualità dei dati**, scegliete il tipo di qualità dei dati che desiderate che AWS IoT SiteWise Collector inserisca.

         1. Per l'**impostazione della modalità di scansione**, configurate le proprietà standard dell'abbonamento utilizzando la modalità di **scansione**. È possibile selezionare **Sottoscrivi** o **Sondaggio.** Per ulteriori informazioni sulla modalità di scansione, vedere[Filtra gli intervalli di inserimento dei dati con OPC UA](opcua-data-acquisition.md).

------
#### [ Subscribe ]

**Per inviare ogni punto dati**

            1. Scegli **Iscriviti** e imposta quanto segue:

               1. **[Trigger di modifica dei dati](https://reference.opcfoundation.org/v104/Core/docs/Part4/7.17.2/)**: la condizione che avvia un avviso di modifica dei dati.

               1. **[Dimensione della coda di sottoscrizione](https://reference.opcfoundation.org/v104/Core/docs/Part4/7.16/)**: la profondità della coda su un server OPC UA per una particolare metrica in cui vengono messe in coda le notifiche per gli articoli monitorati.

               1. Intervallo di **[pubblicazione dell'abbonamento: l'intervallo](https://reference.opcfoundation.org/v104/Core/docs/Part4/5.13.2/)** (in millisecondi) del ciclo di pubblicazione specificato al momento della creazione dell'abbonamento.

               1. **Intervallo di istantanea - *Facoltativo*:** l'impostazione del timeout della frequenza delle istantanee per garantire che Edge acquisisca un flusso costante di dati. AWS IoT SiteWise 

               1. **Velocità di scansione: la velocità** con cui si desidera che il gateway SiteWise Edge legga i registri. AWS IoT SiteWise calcola automaticamente la velocità di scansione minima consentita per il SiteWise gateway Edge.

               1. **Timestamp**: il timestamp da includere nei punti dati OPC UA. Puoi utilizzare il timestamp del server o il timestamp del tuo dispositivo.
**Nota**  
Utilizza la versione 2.5.0 o successiva del componente IoT SiteWise OPC UA Collector. Se si utilizza la funzionalità di timestamp con le versioni precedenti, gli aggiornamenti della configurazione non riescono. Per ulteriori informazioni, consulta [Aggiorna la versione di un componente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).

            1. **Nelle **impostazioni Deadband**, configura un tipo di Deadband.** Il tipo di banda morta controlla quali dati ti invia la fonte e quali dati scarta. AWS IoT SiteWise Per ulteriori informazioni sull'impostazione della banda morta, vedere. [Filtra gli intervalli di inserimento dei dati con OPC UA](opcua-data-acquisition.md)
               + **Nessuno**: il server associato invia tutti i punti dati per questo gruppo di proprietà.
               + **Percentuale**: il server associato invia solo i dati che non rientrano in una percentuale specificata dell'intervallo dei dati. Questo intervallo viene calcolato dal server in base all'unità tecnica minima e massima definita per ciascun nodo. Se il server non supporta bande morte percentuali o non dispone di unità tecniche definite, il gateway calcola l'intervallo utilizzando i valori minimo e massimo forniti di seguito.
               + **Assoluto**: il server associato invia solo dati che non rientrano in un intervallo specifico.

               1. Imposta il **valore Deadband** come percentuale dell'intervallo di dati sulla banda morta.

               1. *(Facoltativo) Specificate un valore minimo e massimo per l'intervallo di banda morta utilizzando Intervallo **minimo - *opzionale* e Intervallo** **massimo** - opzionale.*

------
#### [ Poll ]

**Per inviare punti dati a un intervallo specifico**
            + Scegliete **Sondaggio** e impostate quanto segue:

              1. **Velocità di scansione**: la velocità con cui desideri che il gateway SiteWise Edge legga i tuoi registri. AWS IoT SiteWise calcola automaticamente la velocità di scansione minima consentita per il SiteWise gateway Edge.

              1. **Timestamp**: il timestamp da includere nei punti dati OPC UA. Puoi utilizzare il timestamp del server o il timestamp del tuo dispositivo.
**Nota**  
Utilizza la versione 3.1.0 o successiva del componente IoT SiteWise OPC UA Collector. Se si utilizza la funzionalità di timestamp con le versioni precedenti, gli aggiornamenti della configurazione non riescono. Per ulteriori informazioni, consulta [Aggiorna la versione di un componente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).

**Nota**  
Le **impostazioni Deadband** sono applicabili se hai selezionato **Iscriviti** nelle impostazioni della modalità di **scansione**.

------

1. Scegli **Save** (Salva).

## Configurare una fonte OPC UA ()AWS CLI
<a name="configure-opc-ua-source-cli"></a>

È possibile definire sorgenti di dati OPC UA per un gateway SiteWise Edge utilizzando. AWS CLI A tale scopo, create un file JSON di configurazione della funzionalità OPC UA e utilizzate il [ update-gateway-capability-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iotsitewise/update-gateway-capability-configuration.html#)comando per aggiornare la configurazione del gateway SiteWise Edge. È necessario definire tutte le fonti OPC UA in un'unica configurazione di funzionalità.

------
#### [ MQTT-enabled, V3 gateway ]

Questa funzionalità ha il seguente spazio dei nomi.
+ `iotsitewise:opcuacollector:3`

```
{
  "sources": [
    {
      "name": "string",
      "endpoint": {
        "certificateTrust": {
          "type": "TrustAny" | "X509",
          "certificateBody": "string",
          "certificateChain": "string",
        },
        "endpointUri": "string",
        "securityPolicy": "NONE" | "BASIC128_RSA15" | "BASIC256" | "BASIC256_SHA256" | "AES128_SHA256_RSAOAEP" | "AES256_SHA256_RSAPSS",
        "messageSecurityMode": "NONE" | "SIGN" | "SIGN_AND_ENCRYPT",
        "identityProvider": {
          "type": "Anonymous" | "Username",
          "usernameSecretArn": "string"
        },
        "nodeFilterRules": [
          {
            "action": "INCLUDE",
            "definition": {
              "type": "OpcUaRootPath",
              "rootPath": "string"
            }
          }
        ]
      },
      "measurementDataStreamPrefix": "string",
      "typeConversions": {
        "array": "JsonArray",
        "datetime": "ISO8601String"
        },
      "destination": {
        {
          "type":"MQTT"
        }           
      },
      "defaultPropertyGroupConfig": {
        "dataChangeTrigger": "STATUS" | "STATUS_VALUE" | "STATUS_VALUE_TIMESTAMP"
      },
      "discoveryConfig": {
        "enableNodeTraversal": true | false,
        "avoidNodeTreeLoops": true | false,
        "maxConcurrentBrowseRequests": integer,
        "maxNodesPerBrowseRequest": integer,
        "periodicDiscovery": {
          "interval": "string",
          "maxNodesDiscoveredPerInterval": integer
        }
      },
      "propertyGroups": [
        {
          "name": "string",
          "nodeFilterRuleDefinitions": [
            {
              "type": "OpcUaRootPath",
              "rootPath": "string"
            }
          ],
          "deadband": {
            "type": "PERCENT" | "ABSOLUTE",
            "value": double,
            "eguMin": double,
            "eguMax": double,
            "timeoutMilliseconds": integer
          },
          "scanMode": {
            "type": "EXCEPTION" | "POLL",
            "rate": integer,
            "timestampToReturn": "SOURCE_TIME" | "SERVER_TIME"
          },
          "dataQuality": {
            "allowGoodQuality": true | false,
            "allowBadQuality": true | false,
            "allowUncertainQuality": true | false
          },
          "subscription": {
            "dataChangeTrigger": "STATUS" | "STATUS_VALUE" | "STATUS_VALUE_TIMESTAMP",
            "queueSize": integer,
            "publishingIntervalMilliseconds": integer,
            "snapshotFrequencyMilliseconds": integer
          }  
        }  
      ]  
    }  
  ]  
}
```

------
#### [ Classic streams, V2 gateway ]

Questa funzionalità ha il seguente spazio dei nomi.
+ `iotsitewise:opcuacollector:2`

Sintassi della richiesta

```
{
  "sources": [
    {
      "name": "string",
      "endpoint": {
        "certificateTrust": {
          "type": "TrustAny" | "X509",
          "certificateBody": "string",
          "certificateChain": "string",
        },
        "endpointUri": "string",
        "securityPolicy": "NONE" | "BASIC128_RSA15" | "BASIC256" | "BASIC256_SHA256" | "AES128_SHA256_RSAOAEP" | "AES256_SHA256_RSAPSS",
        "messageSecurityMode": "NONE" | "SIGN" | "SIGN_AND_ENCRYPT",
        "identityProvider": {
          "type": "Anonymous" | "Username",
          "usernameSecretArn": "string"
        },
        "nodeFilterRules": [
          {
            "action": "INCLUDE",
            "definition": {
              "type": "OpcUaRootPath",
              "rootPath": "string"
            }
          }
        ]
      },
      "measurementDataStreamPrefix": "string",
      "typeConversions": {
        "array": "JsonArray",
        "datetime": "ISO8601String"
        },
      "destination": {
        "type": "StreamManager",
        "streamName": "string",
        "streamBufferSize": integer,                      
      },
      "propertyGroups": [
        {
          "name": "string",
          "nodeFilterRuleDefinitions": [
            {
              "type": "OpcUaRootPath",
              "rootPath": "string"
            }
          ],
          "deadband": {
            "type": "PERCENT" | "ABSOLUTE",
            "value": double,
            "eguMin": double,
            "eguMax": double,
            "timeoutMilliseconds": integer
          },
          "scanMode": {
            "type": "EXCEPTION" | "POLL",
            "rate": integer,
            "timestampToReturn": "SOURCE_TIME" | "SERVER_TIME"
          },
          "dataQuality": {
            "allowGoodQuality": true | false,
            "allowBadQuality": true | false,
            "allowUncertainQuality": true | false
          },
          "subscription": {
            "dataChangeTrigger": "STATUS" | "STATUS_VALUE" | "STATUS_VALUE_TIMESTAMP",
            "queueSize": integer,
            "publishingIntervalMilliseconds": integer,
            "snapshotFrequencyMilliseconds": integer
          }  
        }  
      ]  
    }  
  ]  
}
```

------

### Corpo della richiesta
<a name="opcua-request-body"></a>

`sources`  
Un elenco di strutture di definizione dei sorgenti OPC UA, ciascuna delle quali contiene le seguenti informazioni:    
`name`  
Un nome descrittivo univoco per l'origine.  
`endpoint`  
Una struttura endpoint contenente le seguenti informazioni:    
`certificateTrust`  
Una struttura delle policy di attendibilità dei certificati contenente le seguenti informazioni:    
`type`  
La modalità di attendibilità dei certificati per l'origine. Seleziona una delle seguenti opzioni:  
+ `TrustAny`— Il gateway SiteWise Edge si fida di qualsiasi certificato quando si connette alla fonte OPC UA.
+ `X509`— Il gateway SiteWise Edge si fida di un certificato X.509 quando si connette alla fonte OPC UA. Se si sceglie questa opzione, è necessario definire `certificateBody` in `certificateTrust`. È inoltre possibile definire `certificateChain` in `certificateTrust`.  
`certificateBody`  
(Facoltativo) Il corpo di un certificato X.509.  
Questo campo è obbligatorio se si sceglie `X509` per `type` in `certificateTrust`.  
`certificateChain`  
(Facoltativo) La catena di attendibilità per un certificato X.509.  
Questo campo viene utilizzato solo se si sceglie `X509` per `type` in `certificateTrust`.  
`endpointUri`  
L'endpoint locale della sorgente OPC UA. Ad esempio, l'endpoint locale potrebbe essere simile a `opc.tcp://203.0.113.0:49320`.  
`securityPolicy`  
La politica di sicurezza da utilizzare per proteggere i messaggi letti dalla fonte OPC UA. Seleziona una delle seguenti opzioni:  
+ `NONE`— Il gateway SiteWise Edge non protegge i messaggi provenienti dalla fonte OPC UA. Ti consigliamo di scegliere una politica di sicurezza diversa. Se si sceglie questa opzione, è necessario anche selezionare `NONE` per `messageSecurityMode`.
+ `BASIC256_SHA256`— La politica `Basic256Sha256` di sicurezza.
+ `AES128_SHA256_RSAOAEP`— La politica `Aes128_Sha256_RsaOaep` di sicurezza.
+ `AES256_SHA256_RSAPSS`— La politica `Aes256_Sha256_RsaPss` di sicurezza.
+ `BASIC128_RSA15`— (Obsoleta) La politica `Basic128Rsa15` di sicurezza è obsoleta nelle specifiche OPC UA perché non è più considerata sicura. Ti consigliamo di scegliere una politica di sicurezza diversa. Per ulteriori informazioni, vedere [Profile SecurityPolicy — Basic128Rsa15](https://profiles.opcfoundation.org/profile/1532).
+ `BASIC256`— (Obsoleto) La politica di `Basic256` sicurezza è obsoleta nelle specifiche OPC UA perché non è più considerata sicura. Ti consigliamo di scegliere una politica di sicurezza diversa. Per ulteriori informazioni, vedere [SecurityPolicy — Basic256](https://profiles.opcfoundation.org/profile/1536).
Se scegli una politica di sicurezza diversa da`NONE`, devi scegliere `SIGN` o `SIGN_AND_ENCRYPT` per. `messageSecurityMode` È inoltre necessario configurare il server di origine in modo che consideri attendibile il gateway SiteWise Edge. Per ulteriori informazioni, consulta [Configura i server OPC UA in modo che si affidino al gateway AWS IoT SiteWise Edge](enable-source-trust.md).  
`messageSecurityMode`  
La modalità di sicurezza dei messaggi da utilizzare per proteggere le connessioni alla sorgente OPC UA. Seleziona una delle seguenti opzioni:  
+ `NONE`— Il gateway SiteWise Edge non protegge le connessioni alla fonte OPC UA. Ti consigliamo di scegliere una modalità di sicurezza dei messaggi diversa. Se si sceglie questa opzione, è necessario anche selezionare `NONE` per `securityPolicy`.
+ `SIGN`— I dati in transito tra il gateway SiteWise Edge e la fonte OPC UA sono firmati ma non crittografati.
+ `SIGN_AND_ENCRYPT`— I dati in transito tra il gateway e la fonte OPC UA sono firmati e crittografati.
Se si sceglie una modalità di sicurezza dei messaggi diversa da`NONE`, è necessario sceglierne una `securityPolicy` diversa`NONE`. È inoltre necessario configurare il server di origine in modo che consideri attendibile il gateway SiteWise Edge. Per ulteriori informazioni, consulta [Configura i server OPC UA in modo che si affidino al gateway AWS IoT SiteWise Edge](enable-source-trust.md).  
`identityProvider`  
Una struttura del provider di identità che contiene le seguenti informazioni:    
`type`  
Il tipo di credenziali di autenticazione richieste dall'origine. Seleziona una delle seguenti opzioni:  
+ `Anonymous`— La fonte non richiede l'autenticazione per la connessione.
+ `Username`— L'origine richiede un nome utente e una password per la connessione. Se si sceglie questa opzione, è necessario definire `usernameSecretArn` in `identityProvider`.  
`usernameSecretArn`  
(Facoltativo) L'ARN di un Gestione dei segreti AWS segreto. Il gateway SiteWise Edge utilizza le credenziali di autenticazione contenute in questo segreto quando si connette a questa fonte. È necessario collegare segreti al SiteWise connettore IoT del gateway SiteWise Edge per utilizzarli per l'autenticazione dell'origine. Per ulteriori informazioni, consulta [Configurare l'autenticazione dell'origine dati per SiteWise Edge](configure-source-authentication-ggv2.md).  
Questo campo è obbligatorio se si sceglie `Username` per `type` in `identityProvider`.  
`nodeFilterRules`  
Un elenco di strutture di regole di filtro dei nodi che definiscono i percorsi dei flussi di dati OPC UA da inviare al AWS Cloud. Puoi utilizzare i filtri dei nodi per ridurre il tempo di avvio e l'utilizzo della CPU del gateway SiteWise Edge includendo solo i percorsi dei dati utilizzati per la modellazione. AWS IoT SiteWise Per impostazione predefinita, i gateway SiteWise Edge caricano tutti i percorsi OPC UA tranne quelli che iniziano con. `/Server/` Per definire i filtri dei nodi OPC UA, è possibile utilizzare i percorsi dei nodi `*` e `**` i caratteri jolly. Per ulteriori informazioni, consulta [Usa i filtri dei nodi OPC UA in Edge SiteWise](opc-ua-node-filters.md).  
Ogni struttura dell'elenco deve contenere le seguenti informazioni:    
`action`  
L'operazione per questa regola di filtro dei nodi. Puoi scegliere le seguenti opzioni:  
+ `INCLUDE`— Il gateway SiteWise Edge include solo flussi di dati che soddisfano questa regola.  
`definition`  
Una struttura di regole del filtro dei nodi che contiene le seguenti informazioni:    
`type`  
Il tipo di percorso del filtro dei nodi per questa regola. Puoi scegliere le seguenti opzioni:  
+ `OpcUaRootPath`— Il gateway SiteWise Edge valuta questo percorso di filtro del nodo rispetto alla radice della gerarchia dei percorsi OPC UA.  
`rootPath`  
Il percorso del filtro del nodo da valutare rispetto alla radice della gerarchia dei percorsi OPC UA. Questo percorso deve iniziare con. `/`  
`measurementDataStreamPrefix`  
Una stringa da aggiungere a tutti i flussi di dati dall'origine. Il gateway SiteWise Edge aggiunge questo prefisso a tutti i flussi di dati provenienti da questa fonte. Utilizzare un prefisso del flusso di dati per distinguere tra flussi di dati con lo stesso nome da origini diverse. Ogni flusso di dati deve avere un nome univoco all'interno del tuo account.  
`typeConversions`  
I tipi di conversioni disponibili per i tipi di dati OPC UA non supportati. Ogni tipo di dati viene convertito in stringhe. Per ulteriori informazioni, consulta [Conversione di tipi di dati non supportati](string-conversion.md).    
`array`  
Il tipo di dati di matrice semplice che viene convertito in stringhe. Puoi scegliere le seguenti opzioni:  
+ `JsonArray`— Indica che avete scelto di convertire i tipi di dati dell'array semplice in stringhe.  
`datetime`  
Il tipo di DateTime dati che viene convertito in stringhe. Puoi scegliere le seguenti opzioni:  
+ `ISO8601String`— Indica che avete scelto di convertire i tipi di dati ISO 8601 in stringhe.  
`destination`  
Configurazione per la destinazione dei tag OPC UA. I gateway V3 con stream classico, v2 e MQTT hanno configurazioni diverse per le destinazioni.    
`type`  
Il tipo di destinazione.  
`streamName`— *solo per stream classici, gateway V2*  
Il nome del flusso . Il nome dello stream deve essere univoco.  
`streamBufferSize`— *solo per stream classici, gateway V2*  
La dimensione del buffer dello stream. Questo è importante per gestire il flusso di dati da fonti OPC UA.  
`defaultPropertyGroupConfig`— Solo gateway V3 *abilitati per MQTT*  
(Facoltativo) Configurazione per il gruppo di proprietà predefinito. Il gruppo di proprietà predefinito contiene tutti i nodi non altrimenti contenuti in un gruppo di proprietà definito dall'utente.    
`dataChangeTrigger`  
Il trigger di modifica dei dati predefinito da utilizzare nel gruppo di proprietà predefinito. I valori validi sono `STATUS_VALUE_TIMESTAMP`, `STATUS_VALUE` o `STATUS`.
`defaultPropertyGroupConfig`richiede la versione 3.1.0 o successiva del componente IoT SiteWise OPC UA collector. Per ulteriori informazioni, consulta [Aggiorna la versione di un componente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).  
`discoveryConfig`— Solo gateway V3 abilitati per *MQTT*  
(Opzionale) Configurazione per il processo di scoperta dei nodi OPC UA.    
`enableNodeTraversal`  
Speciifica se continuare ad attraversare i nodi secondari del nodo radice definito dal filtro dei nodi dell'origine dati. Se impostato su`false`, il rilevamento si interrompe nel nodo radice.  
`avoidNodeTreeLoops`  
Speciifica se evitare loop infiniti durante il processo di navigazione dei nodi OPC UA. Se impostato su`true`, il gateway tiene traccia dei nodi visitati per evitare riferimenti circolari.  
`maxConcurrentBrowseRequests`  
Il numero massimo di richieste di navigazione simultanee che il server OPC UA può gestire contemporaneamente. L'intervallo valido è compreso tra 1 e 500.  
`maxNodesPerBrowseRequest`  
Il numero massimo di nodi da inviare in ogni richiesta di navigazione al server OPC UA. L'intervallo valido è compreso tra 1 e 1.000.  
`periodicDiscovery`  
Configurazione per l'esecuzione periodica del rilevamento a intervalli fissi. Il rilevamento periodico è abilitato quando viene fornita questa configurazione.    
`interval`  
La quantità di tempo che intercorre tra le operazioni di rilevamento periodiche. È possibile utilizzarlo `m` per minuti, `h` per ore e `d` per giorni. Ad esempio `90m` o `1h`. L'intervallo minimo è di 30 secondi.  
`maxNodesDiscoveredPerInterval`  
Il numero massimo di nodi che devono essere scoperti per intervallo di rilevamento. Questo aiuta a controllare il carico sia sul gateway che sul server OPC UA.
`periodicDiscovery`richiede la versione 3.1.0 o successiva del componente IoT SiteWise OPC UA collector. Per ulteriori informazioni, consulta [Aggiorna la versione di un componente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).
Se il rilevamento viene eseguito all'infinito, abilita. `avoidNodeTreeLoops` Monitora l'avanzamento del rilevamento nei CloudWatch log del componente. `aws.iot.SiteWiseOpcUaCollector`

`propertyGroups`  
(Facoltativo) L'elenco dei gruppi di proprietà che definiscono `deadband` e `scanMode` richiesti dal protocollo.    
`name`  
Il nome del gruppo di proprietà. Dovrebbe essere un identificatore univoco.  
`deadband`  
Il `deadband` valore definisce la modifica minima del valore di un punto dati che deve avvenire prima che i dati vengano inviati al cloud. Contiene le seguenti informazioni:    
`type`  
I tipi di banda morta supportati. Puoi scegliere le seguenti opzioni:  
+ `ABSOLUTE`— Un valore fisso che specifica la modifica assoluta minima richiesta per considerare un punto dati sufficientemente significativo da essere inviato al cloud.
+ `PERCENT`— Un valore dinamico che specifica la modifica minima richiesta come percentuale del valore dell'ultimo punto dati inviato. Questo tipo di banda morta è utile quando i valori dei dati variano in modo significativo nel tempo.  
`value`  
Il valore della banda morta. Quando `type` è`ABSOLUTE`, questo valore è un doppio senza unità. Quando `type` è`PERCENT`, questo valore è un doppio tra `1` e`100`.  
`eguMin`  
(Facoltativo) L'unità tecnica minima quando si utilizza una `PERCENT` banda morta. Si imposta questa impostazione se il server OPC UA non ha unità tecniche configurate.  
`eguMax`  
(Facoltativo) Il valore massimo dell'unità tecnica quando si utilizza una banda `PERCENT` morta. Si imposta questa impostazione se il server OPC UA non ha unità tecniche configurate.  
`timeoutMilliseconds`  
La durata in millisecondi prima del timeout. Il valore minimo è. `100`  
`scanMode`  
La `scanMode` struttura che contiene le seguenti informazioni:    
`type`  
I tipi supportati di`scanMode`. I valori accettati sono `POLL` e`EXCEPTION`.  
`rate`  
L'intervallo di campionamento per la modalità di scansione.  
`timestampToReturn`  
La fonte del timestamp. Puoi scegliere le seguenti opzioni:  
+ `SOURCE_TIME`— Utilizza il timestamp del tuo dispositivo.
+ `SERVER_TIME`— Utilizza il timestamp del tuo server.
Da utilizzare `TimestampToReturn` con la versione 2.5.0 o successiva del componente IoT SiteWise OPC UA Collector. Se si utilizza questa funzionalità con versioni precedenti, gli aggiornamenti della configurazione non riescono. Per ulteriori informazioni, consulta [Aggiorna la versione di un componente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).  
`nodeFilterRuleDefinitions`  
(Facoltativo) Un elenco di percorsi di nodi da includere nel gruppo di proprietà. I gruppi di proprietà non possono sovrapporsi. Se non si specifica un valore per questo campo, il gruppo contiene tutti i percorsi sotto la radice e non è possibile creare gruppi di proprietà aggiuntivi. La struttura `nodeFilterRuleDefinitions` contiene le seguenti informazioni:    
`type`  
`OpcUaRootPath`è l'unico tipo supportato. Ciò specifica che il valore di `rootPath` è un percorso relativo alla radice dello spazio di navigazione OPC UA.  
`rootPath`  
Un elenco delimitato da virgole che specifica i percorsi (relativi alla radice) da includere nel gruppo di proprietà.

### Esempi di configurazione delle funzionalità aggiuntivi per stream Classic, gateway V2 ()AWS CLI
<a name="opc-ua-source-example-cli"></a>

L'esempio seguente definisce una configurazione della funzionalità del gateway OPC UA SiteWise Edge a partire da un payload archiviato in un file JSON.

```
aws iotsitewise update-gateway-capability-configuration \
--capability-namespace "iotsitewise:opcuacollector:2" \
--capability-configuration file://opc-ua-configuration.json
```

**Example : configurazione del codice sorgente OPC UA**  
Il `opc-ua-configuration.json` file seguente definisce una configurazione sorgente OPC UA di base e non sicura.  

```
{
    "sources": [
        {
            "name": "Wind Farm #1",
            "endpoint": {
                "certificateTrust": {
                    "type": "TrustAny"
                },
                "endpointUri": "opc.tcp://203.0.113.0:49320",
                "securityPolicy": "NONE",
                "messageSecurityMode": "NONE",
                "identityProvider": {
                    "type": "Anonymous"
                },
                "nodeFilterRules": []
            },
            "measurementDataStreamPrefix": ""
        }
    ]
}
```

**Example : configurazione del codice sorgente OPC UA con gruppi di proprietà definiti**  
Il `opc-ua-configuration.json` file seguente definisce una configurazione sorgente OPC UA di base e non sicura con gruppi di proprietà definiti.  

```
{
    "sources": [
        {
            "name": "source1",
            "endpoint": {
                "certificateTrust": {
                    "type": "TrustAny"
                },
                "endpointUri": "opc.tcp://10.0.0.9:49320",
                "securityPolicy": "NONE",
                "messageSecurityMode": "NONE",
                "identityProvider": {
                    "type": "Anonymous"
                },
                "nodeFilterRules": [
                    {
                        "action": "INCLUDE",
                        "definition": {
                            "type": "OpcUaRootPath",
                            "rootPath": "/Utilities/Tank"
                        }
                    }
                ]
            },
            "measurementDataStreamPrefix": "propertyGroups",
            "propertyGroups": [
                 {
                     "name": "Deadband_Abs_5",
                     "nodeFilterRuleDefinitions": [
                         {
                             "type": "OpcUaRootPath",
                             "rootPath": "/Utilities/Tank/Temperature/TT-001"
                         },
                         {
                             "type": "OpcUaRootPath",
                             "rootPath": "/Utilities/Tank/Temperature/TT-002"
                         }
                     ],
                     "deadband": {
                         "type":"ABSOLUTE",
                         "value": 5.0,
                         "timeoutMilliseconds": 120000
                     }
                 },
                 {
                     "name": "Polling_10s",
                     "nodeFilterRuleDefinitions": [
                         {
                             "type": "OpcUaRootPath",
                             "rootPath": "/Utilities/Tank/Pressure/PT-001"
                         }
                     ],
                     "scanMode": {
                         "type": "POLL",
                         "rate": 10000
                     }
                 },
                 {
                     "name": "Percent_Deadband_Timeout_90s",
                     "nodeFilterRuleDefinitions": [
                         {
                             "type": "OpcUaRootPath",
                             "rootPath": "/Utilities/Tank/Flow/FT-*"
                         }
                     ],
                     "deadband": {
                         "type":"PERCENT",
                         "value": 5.0,
                         "eguMin": -100,
                         "eguMax": 100,
                         "timeoutMilliseconds": 90000
                     }
                 }
             ]
        }
    ]
}
```

**Example : configurazione del codice sorgente OPC UA con proprietà**  
Il seguente esempio JSON `opc-ua-configuration.json` definisce una configurazione di origine OPC UA con le seguenti proprietà:  
+ Considera attendibile qualsiasi certificato.
+ Utilizza la politica `BASIC256` di sicurezza per proteggere i messaggi.
+ Usa la modalità `SIGN_AND_ENCRYPT` per proteggere le connessioni.
+ Utilizza le credenziali di autenticazione memorizzate in un segreto di Secrets Manager.
+ Filtra i flussi di dati tranne quelli il cui percorso inizia con `/WindFarm/2/WindTurbine/`.
+ Aggiunge `/Washington` all'inizio di ogni percorso del flusso di dati per distinguere tra questo "Parco eolico \$12" e un "Parco eolico \$12" in un'altra area.

```
{
    "sources": [
        {
            "name": "Wind Farm #2",
            "endpoint": {
                "certificateTrust": {
                    "type": "TrustAny"
                },
                "endpointUri": "opc.tcp://203.0.113.1:49320",
                "securityPolicy": "BASIC256",
                "messageSecurityMode": "SIGN_AND_ENCRYPT",
                "identityProvider": {
                    "type": "Username",
                    "usernameSecretArn": "arn:aws:secretsmanager:region:123456789012:secret:greengrass-windfarm2-auth-1ABCDE"
                },
                "nodeFilterRules": [
                  {
                      "action": "INCLUDE",
                      "definition": {
                          "type": "OpcUaRootPath",
                          "rootPath": "/WindFarm/2/WindTurbine/"
                    }
                  }
                ]
            },
            "measurementDataStreamPrefix": "/Washington"
        }
    ]
}
```

**Example : configurazione del codice sorgente OPC UA con certificato attendibile**  
Il seguente esempio JSON `opc-ua-configuration.json` definisce una configurazione di origine OPC UA con le seguenti proprietà:  
+ Considera attendibile un determinato certificato X.509.
+ Utilizza la politica `BASIC256` di sicurezza per proteggere i messaggi.
+ Usa la modalità `SIGN_AND_ENCRYPT` per proteggere le connessioni.

```
{
    "sources": [
        {
            "name": "Wind Farm #3",
            "endpoint": {
                "certificateTrust": {
                    "type": "X509",
                    "certificateBody": "-----BEGIN CERTIFICATE-----
          MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w
 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ
 WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw
 EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5
 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh
 MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb
 WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx
 HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE
 BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI
 k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ
 ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr
 AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN
 KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo
 EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw
 3rrszlaEXAMPLE=
          -----END CERTIFICATE-----",
                    "certificateChain": "-----BEGIN CERTIFICATE-----
          MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w
 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ
 WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw
 EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5
 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh
 MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb
 WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx
 HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE
 BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI
 k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ
 ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr
 AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN
 KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo
 EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw
 3rrszlaEXAMPLE=
          -----END CERTIFICATE-----"
                },
                "endpointUri": "opc.tcp://203.0.113.2:49320",
                "securityPolicy": "BASIC256",
                "messageSecurityMode": "SIGN_AND_ENCRYPT",
                "identityProvider": {
                    "type": "Anonymous"
                },
                "nodeFilterRules": []
              },
            "measurementDataStreamPrefix": ""
              
        }
    ]
}
```