

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Richten Sie eine OPC UA-Quelle in SiteWise Edge ein
<a name="configure-opcua-source"></a>

Sie können die AWS IoT SiteWise Konsole oder eine SiteWise Edge-Gateway-Funktion verwenden, um eine OPC-UA-Quelle zu definieren und zu Ihrem SiteWise Edge-Gateway hinzuzufügen, die einen lokalen OPC UA-Server darstellt.

**Topics**
+ [Konfigurieren Sie eine OPC UA-Quelle (Konsole)](#config-opcua-source-console)
+ [Konfigurieren Sie eine OPC UA-Quelle ()AWS CLI](#configure-opc-ua-source-cli)

## Konfigurieren Sie eine OPC UA-Quelle (Konsole)
<a name="config-opcua-source-console"></a>

Sie können die Konsole verwenden, um die OPC UA-Quelle mit dem folgenden Verfahren zu konfigurieren.

**Anmerkung**  
Warnung: Das Duplizieren TQVs kann zu einer doppelten Aufladung führen.

**Um eine OPC UA-Quelle mit der AWS IoT SiteWise Konsole zu konfigurieren**

1. Navigieren Sie zur [AWS IoT SiteWise -Konsole](https://console.aws.amazon.com/iotsitewise/).

1. **Wählen Sie in der linken Navigationsleiste im Abschnitt **Edge die Option Edge-Gateways** aus.**

1. Wählen Sie das SiteWise Edge-Gateway aus, um eine OPC UA-Quelle hinzuzufügen.

1. Wählen Sie **Datenquelle hinzufügen** aus.

1. Geben Sie einen Namen für die Quelle ein.

1. Geben Sie den **Local endpoint (Lokaler Endpunkt)** des Datenquellenservers ein. Der Endpunkt kann die IP-Adresse oder der Hostname sein. Sie können dem lokalen Endpunkt auch eine Portnummer hinzufügen. Ihr lokaler Endpunkt könnte beispielsweise so aussehen: **opc.tcp://203.0.113.0:49320**

1. (Optional) Fügen Sie **unter Knoten-ID zur Auswahl** Knotenfilter hinzu, um einzuschränken, welche Datenströme in die AWS Cloud aufgenommen werden. Standardmäßig verwenden SiteWise Edge-Gateways den Stammknoten eines Servers, um alle Datenströme aufzunehmen. Sie können Knotenfilter verwenden, um die Startzeit und die CPU-Auslastung Ihres SiteWise Edge-Gateways zu reduzieren, indem Sie nur Pfade zu Daten einbeziehen, die Sie modellieren. AWS IoT SiteWise Standardmäßig laden SiteWise Edge-Gateways alle OPC UA-Pfade hoch, außer denen, die mit beginnen. `/Server/` Um OPC UA-Knotenfilter zu definieren, können Sie Knotenpfade und die `*` Platzhalterzeichen und verwenden. `**` Weitere Informationen finden Sie unter [Verwenden Sie OPC UA-Knotenfilter in Edge SiteWise](opc-ua-node-filters.md).

1. Die **Ziele** variieren zwischen MQTT-fähigen V3-Gateways und Classic-Streams, V2-Gateways.
   + **Klassische Streams und V2-Gateway-Ziele** haben eine 1:1 -Beziehung zur Quelle. Jede Quelle sendet Daten an ein bestimmtes Ziel.
   + **MQTT-fähige V3-Gateway-Ziele werden separat eingerichtet,** da Sie mit dem Hub-and-Spoke-Modell die Konfiguration und Verwaltung mehrerer Datenquellen über verschiedene Gateways hinweg zentralisieren können. Informationen zum Einrichten von Zielen in einem V3-Gateway finden Sie unter. [Verstehen Sie AWS IoT SiteWise Edge-Ziele](gw-destinations.md#source-destination)

------
#### [ Classic steams, V2 gateway destinations ]
   + **AWS IoT SiteWise Echtzeit** — Wählen Sie diese Option, um Daten direkt an den AWS IoT SiteWise Speicher zu senden. Erfassen und überwachen Sie Daten in Echtzeit am Netzwerkrand.
   + **AWS IoT SiteWise Mit Amazon S3 gepuffert** — Daten im Parquet-Format an Amazon S3 senden und dann in den AWS IoT SiteWise Speicher importieren. Wählen Sie diese Option, um Daten stapelweise aufzunehmen und historische Daten auf kostengünstige Weise zu speichern. Sie können Ihren bevorzugten Amazon S3-Bucket-Standort und die Häufigkeit, mit der Daten auf Amazon S3 hochgeladen werden sollen, konfigurieren. Sie können auch wählen, was mit den Daten nach der Aufnahme geschehen soll. AWS IoT SiteWise Sie können wählen, ob die Daten AWS IoT SiteWise sowohl in Amazon S3 als auch in Amazon S3 verfügbar sein sollen, oder Sie können festlegen, dass sie nach dem Import automatisch aus Amazon S3 gelöscht werden AWS IoT SiteWise.
     + Der Amazon S3 S3-Bucket ist ein Staging- und Puffermechanismus und unterstützt Dateien im Parquet-Format.
     + Wenn Sie das Kontrollkästchen **Daten in AWS IoT SiteWise Speicher importieren** aktivieren, werden Daten zuerst in Amazon S3 und dann in den AWS IoT SiteWise Speicher hochgeladen.
       + Wenn Sie das Kontrollkästchen **Daten aus Amazon S3 löschen** aktivieren, werden Daten aus Amazon S3 gelöscht, nachdem sie in den SiteWise Speicher importiert wurden. 
       + Wenn Sie das Kontrollkästchen **Daten aus Amazon S3 löschen** deaktivieren, werden Daten sowohl in Amazon S3 als auch im SiteWise Speicher gespeichert. 
     + Wenn Sie das Kontrollkästchen **Daten in AWS IoT SiteWise Speicher importieren** deaktivieren, werden Daten nur in Amazon S3 gespeichert. Sie werden nicht in den SiteWise Speicher importiert. 

     Einzelheiten [Verwalten des Datenspeichers](manage-data-storage.md) zu den verschiedenen Speicheroptionen finden Sie AWS IoT SiteWise unter. Weitere Informationen zu den Preisoptionen finden Sie unter [AWS IoT SiteWise Preise](https://aws.amazon.com/iot-sitewise/pricing/).

      
   + **AWS IoT Greengrass Stream-Manager** — Verwenden Sie den AWS IoT Greengrass Stream-Manager, um Daten an die folgenden AWS Cloud-Ziele zu senden: Kanäle in AWS IoT Analytics, Streams in Amazon Kinesis Data Streams, Asset-Eigenschaften in AWS IoT SiteWise oder Objekte in Amazon Simple Storage Service (Amazon S3). Weitere Informationen finden Sie im *AWS IoT Greengrass Version 2 Entwicklerhandbuch* unter [Datenstreams auf dem AWS IoT Greengrass Core verwalten](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-data-streams.html).

     Geben Sie einen Namen für den AWS IoT Greengrass Stream ein.

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

   1. Informationen [MQTT-fähige V3-Gateways für Edge AWS IoT SiteWise](mqtt-enabled-v3-gateway.md) zum Hinzufügen Ihrer relevanten Ziele finden Sie unter.

   1. Kehren Sie nach dem Hinzufügen Ihrer Quellziele zu diesem Verfahren zurück.

------

1. Im Bereich **Erweiterte Konfiguration** können Sie wie folgt vorgehen:

   1. Wählen Sie einen **Nachrichtensicherheitsmodus** für Verbindungen und Daten, die zwischen Ihrem Quellserver und Ihrem SiteWise Edge-Gateway übertragen werden. Dieses Feld ist die Kombination aus der OPC UA-Sicherheitsrichtlinie und dem Nachrichtensicherheitsmodus. Wählen Sie dieselbe Sicherheitsrichtlinie und denselben Nachrichtensicherheitsmodus, die Sie für Ihren OPC UA-Server angegeben haben.

   1. Wenn Ihre Quelle eine Authentifizierung erfordert, wählen Sie ein AWS Secrets Manager Geheimnis aus der **Authentifizierungskonfigurationsliste** aus. Das SiteWise Edge-Gateway verwendet die Authentifizierungsanmeldeinformationen in diesem Geheimnis, wenn es eine Verbindung zu dieser Datenquelle herstellt. Sie müssen Geheimnisse an die AWS IoT Greengrass Komponente Ihres SiteWise Edge-Gateways anhängen, um sie für die Datenquellenauthentifizierung verwenden zu können. Weitere Informationen finden Sie unter [Konfigurieren Sie die Datenquellenauthentifizierung für SiteWise Edge](configure-source-authentication-ggv2.md).
**Tipp**  
Ihr Datenserver verfügt möglicherweise über die Option **Allow anonymous login (Anonyme Anmeldung zulassen)**. Wenn diese Option **Yes (Ja)** zeigt, ist für Ihre Quelle keine Authentifizierung erforderlich.

   1. (Optional) Sie können ein Datenstream-Präfix aktivieren, indem Sie **Datenstream-Präfix aktivieren — *optional*** auswählen.

      1. Geben Sie ein **Datenstream-Präfix** ein. Das SiteWise Edge-Gateway fügt dieses Präfix allen Datenströmen aus dieser Quelle hinzu. Verwenden Sie ein Datenstrom-Präfix, um zwischen Datenströmen mit demselben Namen aus verschiedenen Quellen zu unterscheiden. Jeder Datenstrom sollte einen eindeutigen Namen in Ihrem Konto haben.

   1. (Optional) Wählen Sie eine Option zur **Konvertierung von Datentypen**, um nicht unterstützte OPC UA-Datentypen in Zeichenketten zu konvertieren, bevor Sie sie in sie aufnehmen. AWS IoT SiteWise Konvertiert Array-Werte mit einfachen Datentypen in JSON-Zeichenketten und DateTime Datentypen in ISO-8601-Zeichenketten. Weitere Informationen finden Sie unter [Nicht unterstützte Datentypen werden konvertiert](string-conversion.md).

   1. Wählen Sie einen **Standardauslöser für Datenänderungen** für Knoten, die nicht in einer benutzerdefinierten Eigenschaftsgruppe enthalten sind. Der Standard-Trigger für Datenänderungen bestimmt, wann der OPC UA-Server aktualisierte Werte an das Gateway sendet. Sie können eine der folgenden Optionen wählen:
      + **Status** — um Daten nur zu empfangen, wenn sich ein Status ändert.
      + **StatusValue**— um Daten zu empfangen, wenn sich ein Status oder Wert ändert.
      + **StatusValueTimestamp**— um Daten zu empfangen, wenn sich ein Status, ein Wert oder ein Zeitstempel ändert.

   1. (Optional) Auf einem MQTT-fähigen V3-Gateway können Sie die **Discovery-Konfiguration** verwenden, um den OPC UA-Knotenerkennungsprozess zu konfigurieren. Die Discovery-Konfiguration ersetzt das bisherige Dateisystem zur Überschreibung der Konfiguration für diese Optionen durch konsolenbasierte Einstellungen, die dynamisch aktualisiert werden, ohne dass das Gateway neu gestartet werden muss.
**Anmerkung**  
Für den **standardmäßigen Datenänderungs-Trigger** ist Version 3.1.0 oder höher der IoT SiteWise OPC UA-Collector-Komponente erforderlich. Weitere Informationen finden Sie unter [Aktualisieren Sie die Version einer Komponente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).

      1. Geben Sie für **Maximale Anzahl gleichzeitiger Suchanfragen** die maximale Anzahl von Suchanfragen ein, die Ihr OPC UA-Server gleichzeitig verarbeiten kann. Sie können bis zu 500 gleichzeitige Suchanfragen pro Datenquelle konfigurieren.

      1. Geben Sie für **Maximale Knotenanzahl pro Suchanforderung** die maximale Anzahl von Knoten ein, die in jeder Suchanforderung an den OPC UA-Server gesendet werden sollen. Sie können bis zu 1.000 Knoten pro Suchanforderung senden.

      1. Wählen Sie **Node Tree Loops vermeiden**, um zu verhindern, dass das Gateway beim Durchsuchen der Struktur des OPC UA-Servers in Zirkelverweisen hängen bleibt. Wenn diese Option ausgewählt ist, verfolgt das Gateway besuchte Standorte, um Endlosschleifen zu vermeiden, die entstehen können, wenn Serverknoten in einem kreisförmigen Muster aufeinander verweisen.

      1. Wählen Sie „**Node Traversal aktivieren**“, damit das Gateway die gesamte Struktur Ihres OPC UA-Servers untersuchen kann, um alle verfügbaren Datenpunkte Ihrer Geräte und Geräte zu ermitteln. Wenn diese Option ausgewählt ist, navigiert das Gateway durch die Datenorganisation Ihrer Geräte über die Stammebene hinaus, um alle Sensoren, Steuerungen und Messpunkte automatisch zu finden.

      1. Wählen Sie **Periodische Erkennung aktivieren**, um in regelmäßigen Abständen automatisch Erkennungsvorgänge auszuführen, um Änderungen in der Struktur des OPC UA-Servers zu erkennen. Wenn diese Option ausgewählt ist, sucht das Gateway kontinuierlich nach neu hinzugefügten Geräten oder Datenpunkten und stellt so sicher, dass diese automatisch erkannt und für die Datenerfassung zur Verfügung gestellt werden.

         1. Geben Sie für das **periodische Erkennungsintervall** das Zeitintervall zwischen automatischen Erkennungsvorgängen an, wenn die periodische Erkennung ausgeführt wird. Das minimale periodische Erkennungsintervall beträgt 30 Sekunden und das Maximum 30 Tage.

         1. Legen Sie für **Maximale Anzahl erkannter Knoten pro Intervall** die maximale Anzahl von Knoten fest, die pro Erkennungsintervall erkannt werden sollen. Dies hilft, die Last sowohl auf dem Gateway als auch auf dem OPC UA-Server während der Erkennungsvorgänge zu kontrollieren.

   1. (Optional) Wählen Sie für **Eigenschaftsgruppen** die Option **Neue Gruppe hinzufügen** aus.

      1. Geben Sie einen **Namen** für die Eigenschaftsgruppe ein.

      1. Für **Eigenschaften**:

         1. Fügen Sie für **Knotenpfade** OPC UA-Knotenfilter hinzu, um einzuschränken, in welche OPC UA-Pfade hochgeladen werden. AWS IoT SiteWise Das Format ähnelt der **Node-ID für** die Auswahl.

      1. Gehen Sie für **Gruppeneinstellungen** wie folgt vor:

         1. Wählen Sie **unter Datenqualitätseinstellung** den Datenqualitätstyp aus, den AWS IoT SiteWise Collector aufnehmen soll.

         1. Konfigurieren **Sie für die Einstellung für den Scanmodus** die Eigenschaften des Standardabonnements im **Scanmodus**. Sie können „**Abonnieren**“ oder „**Umfrage**“ wählen. Weitere Informationen zum Scanmodus finden Sie unter[Filtern Sie Datenaufnahmebereiche mit OPC UA](opcua-data-acquisition.md).

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

**Um jeden Datenpunkt zu senden**

            1. Wählen Sie **Abonnieren** und stellen Sie Folgendes ein:

               1. **[Auslöser für Datenänderungen](https://reference.opcfoundation.org/v104/Core/docs/Part4/7.17.2/)** — Die Bedingung, die eine Warnung bei Datenänderungen auslöst.

               1. **[Größe der Abonnement-Warteschlange](https://reference.opcfoundation.org/v104/Core/docs/Part4/7.16/)** — Die Tiefe der Warteschlange auf einem OPC UA-Server für eine bestimmte Metrik, in der Benachrichtigungen für überwachte Elemente in die Warteschlange gestellt werden.

               1. **[Veröffentlichungsintervall für Abonnements](https://reference.opcfoundation.org/v104/Core/docs/Part4/5.13.2/)** — Das Intervall (in Millisekunden) des Veröffentlichungszyklus, das bei der Erstellung des Abonnements angegeben wurde.

               1. **Snapshot-Intervall — *Optional*** — Die Timeout-Einstellung für die Snapshot-Frequenz, um sicherzustellen, dass AWS IoT SiteWise Edge einen stetigen Datenstrom aufnimmt.

               1. **Scanrate** — Die Geschwindigkeit, mit der das SiteWise Edge-Gateway Ihre Register lesen soll. AWS IoT SiteWise berechnet automatisch die minimal zulässige Scanrate für Ihr SiteWise Edge-Gateway.

               1. **Zeitstempel** — Der Zeitstempel, der Ihren OPC UA-Datenpunkten beigefügt werden soll. Sie können den Serverzeitstempel oder den Zeitstempel Ihres Geräts verwenden.
**Anmerkung**  
Verwenden Sie Version 2.5.0 oder höher der IoT SiteWise OPC UA-Collector-Komponente. Wenn Sie die Zeitstempelfunktion mit früheren Versionen verwenden, schlagen Konfigurationsupdates fehl. Weitere Informationen finden Sie unter [Aktualisieren Sie die Version einer Komponente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).

            1. Konfigurieren Sie in den **Deadband-Einstellungen** einen **Deadband-Typ**. Der Deadband-Typ steuert, welche Daten Ihre Quelle an Sie sendet und welche Daten sie verwirft. AWS IoT SiteWise Weitere Informationen zur Einstellung der Deadband-Einstellung finden Sie unter. [Filtern Sie Datenaufnahmebereiche mit OPC UA](opcua-data-acquisition.md)
               + **Keine** — Der zugehörige Server sendet alle Datenpunkte für diese Eigenschaftengruppe.
               + **Prozentsatz** — Der zugehörige Server sendet nur Daten, die außerhalb eines bestimmten Prozentsatzes des Datenbereichs liegen. Dieser Bereich wird vom Server auf der Grundlage der für jeden Knoten definierten Mindest- und Höchstwerte der technischen Einheit berechnet. Wenn der Server keine prozentualen Deadbands unterstützt oder keine definierten technischen Einheiten definiert sind, berechnet das Gateway den Bereich anhand der unten angegebenen Mindest- und Höchstwerte.
               + **Absolut** — Der zugehörige Server sendet nur Daten, die außerhalb eines bestimmten Bereichs liegen.

               1. Legen Sie den **Wert für „Deadband**“ als Prozentsatz des Datenbereichs fest.

               1. *(Optional) Geben Sie mit Minimaler Bereich — optional und Maximaler Bereich **— *optional* einen Mindest** - und **Höchstwert für den Totbandbereich an**.*

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

**Um Datenpunkte in einem bestimmten Intervall zu senden**
            + Wählen Sie **Umfrage** und legen Sie Folgendes fest:

              1. **Scanrate** — Die Geschwindigkeit, mit der das SiteWise Edge-Gateway Ihre Register lesen soll. AWS IoT SiteWise berechnet automatisch die minimal zulässige Scanrate für Ihr SiteWise Edge-Gateway.

              1. **Zeitstempel** — Der Zeitstempel, der Ihren OPC UA-Datenpunkten beigefügt werden soll. Sie können den Serverzeitstempel oder den Zeitstempel Ihres Geräts verwenden.
**Anmerkung**  
Verwenden Sie Version 3.1.0 oder höher der IoT SiteWise OPC UA-Collector-Komponente. Wenn Sie die Zeitstempelfunktion mit früheren Versionen verwenden, schlagen Konfigurationsupdates fehl. Weitere Informationen finden Sie unter [Aktualisieren Sie die Version einer Komponente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).

**Anmerkung**  
Die **Deadband-Einstellungen** gelten, wenn Sie in den Einstellungen für den **Scanmodus** die Option **Abonnieren** ausgewählt haben.

------

1. Wählen Sie **Speichern**.

## Konfigurieren Sie eine OPC UA-Quelle ()AWS CLI
<a name="configure-opc-ua-source-cli"></a>

Sie können OPC UA-Datenquellen für ein SiteWise Edge-Gateway definieren, indem Sie AWS CLI Erstellen Sie dazu eine JSON-Datei mit der OPC-UA-Fähigkeitskonfiguration und verwenden Sie den [ update-gateway-capability-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iotsitewise/update-gateway-capability-configuration.html#)Befehl, um die SiteWise Edge-Gateway-Konfiguration zu aktualisieren. Sie müssen alle Ihre OPC UA-Quellen in einer einzigen Funktionskonfiguration definieren.

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

Diese Fähigkeit hat den folgenden Namespace.
+ `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 ]

Diese Fähigkeit hat den folgenden Namespace.
+ `iotsitewise:opcuacollector:2`

Erforderliche Syntax

```
{
  "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
          }  
        }  
      ]  
    }  
  ]  
}
```

------

### Anforderungstext
<a name="opcua-request-body"></a>

`sources`  
Eine Liste von OPC UA-Quelldefinitionsstrukturen, die jeweils die folgenden Informationen enthalten:    
`name`  
Ein eindeutiger und aussagekräftiger Name für die Quelle.  
`endpoint`  
Eine Endpunktstruktur, die die folgenden Informationen enthält:    
`certificateTrust`  
Eine Zertifikatvertrauensrichtlinienstruktur, die die folgenden Informationen enthält:    
`type`  
Der Zertifikatvertrauensmodus für die Quelle. Wählen Sie eine der folgenden Optionen:  
+ `TrustAny`— Das SiteWise Edge-Gateway vertraut jedem Zertifikat, wenn es eine Verbindung zur OPC UA-Quelle herstellt.
+ `X509`— Das SiteWise Edge-Gateway vertraut einem X.509-Zertifikat, wenn es eine Verbindung zur OPC UA-Quelle herstellt. Wenn Sie diese Option wählen, müssen Sie `certificateBody` in `certificateTrust` definieren. Sie können auch `certificateChain` in `certificateTrust` definieren.  
`certificateBody`  
(Optional) Der Hauptteil eines X.509-Zertifikats.  
Dieses Feld ist erforderlich, wenn Sie `X509` für `type` in `certificateTrust` auswählen.  
`certificateChain`  
(Optional) Die Vertrauenskette für ein X.509-Zertifikat.  
Dieses Feld wird nur verwendet, wenn Sie `X509` für `type` in `certificateTrust` auswählen.  
`endpointUri`  
Der lokale Endpunkt der OPC UA-Quelle. Der lokale Endpunkt könnte z. B. wie `opc.tcp://203.0.113.0:49320` aussehen.  
`securityPolicy`  
Die Sicherheitsrichtlinie, die verwendet werden soll, damit Sie Nachrichten schützen können, die aus der OPC UA-Quelle gelesen werden. Wählen Sie eine der folgenden Optionen:  
+ `NONE`— Das SiteWise Edge-Gateway schützt keine Nachrichten von der OPC UA-Quelle. Wir empfehlen Ihnen, eine andere Sicherheitsrichtlinie zu wählen. Wenn Sie diese Option wählen, müssen Sie auch `NONE` für `messageSecurityMode` auswählen.
+ `BASIC256_SHA256`— Die `Basic256Sha256` Sicherheitsrichtlinie.
+ `AES128_SHA256_RSAOAEP`— Die `Aes128_Sha256_RsaOaep` Sicherheitspolitik.
+ `AES256_SHA256_RSAPSS`— Die `Aes256_Sha256_RsaPss` Sicherheitspolitik.
+ `BASIC128_RSA15`— (Veraltet) Die `Basic128Rsa15` Sicherheitsrichtlinie ist in der OPC UA-Spezifikation veraltet, da sie nicht mehr als sicher gilt. Wir empfehlen Ihnen, eine andere Sicherheitsrichtlinie zu wählen. Weitere Informationen finden Sie unter [Profil SecurityPolicy — Basic128Rsa15](https://profiles.opcfoundation.org/profile/1532).
+ `BASIC256`— (Veraltet) Die `Basic256` Sicherheitsrichtlinie ist in der OPC UA-Spezifikation veraltet, da sie nicht mehr als sicher gilt. Wir empfehlen Ihnen, eine andere Sicherheitsrichtlinie zu wählen. Weitere Informationen finden Sie unter [SecurityPolicy — Basic256](https://profiles.opcfoundation.org/profile/1536).
Wenn Sie eine andere Sicherheitsrichtlinie als wählen`NONE`, müssen Sie `SIGN` oder `SIGN_AND_ENCRYPT` für wählen. `messageSecurityMode` Sie müssen Ihren Quellserver auch so konfigurieren, dass er dem SiteWise Edge-Gateway vertraut. Weitere Informationen finden Sie unter [Richten Sie OPC UA-Server so ein, dass sie dem AWS IoT SiteWise Edge-Gateway vertrauen](enable-source-trust.md).  
`messageSecurityMode`  
Der Sicherheitsmodus für Nachrichten, der verwendet werden soll, um Verbindungen zur OPC UA-Quelle zu sichern. Wählen Sie eine der folgenden Optionen:  
+ `NONE`— Das SiteWise Edge-Gateway sichert keine Verbindungen zur OPC UA-Quelle. Wir empfehlen, dass Sie einen anderen Nachrichtensicherheitsmodus wählen. Wenn Sie diese Option wählen, müssen Sie auch `NONE` für `securityPolicy` auswählen.
+ `SIGN`— Daten, die zwischen dem SiteWise Edge-Gateway und der OPC UA-Quelle übertragen werden, sind signiert, aber nicht verschlüsselt.
+ `SIGN_AND_ENCRYPT`— Daten, die zwischen dem Gateway und der OPC UA-Quelle übertragen werden, sind signiert und verschlüsselt.
Wenn Sie einen anderen Nachrichtensicherheitsmodus als wählen`NONE`, müssen Sie einen `securityPolicy` anderen als `NONE` wählen. Sie müssen Ihren Quellserver auch so konfigurieren, dass er dem SiteWise Edge-Gateway vertraut. Weitere Informationen finden Sie unter [Richten Sie OPC UA-Server so ein, dass sie dem AWS IoT SiteWise Edge-Gateway vertrauen](enable-source-trust.md).  
`identityProvider`  
Eine Identitätsanbieterstruktur, die die folgenden Informationen enthält:    
`type`  
Der Typ der Authentifizierungsanmeldeinformationen, die von der Quelle erfordert werden. Wählen Sie eine der folgenden Optionen:  
+ `Anonymous`— Die Quelle benötigt keine Authentifizierung, um eine Verbindung herzustellen.
+ `Username`— Die Quelle benötigt einen Benutzernamen und ein Passwort, um eine Verbindung herzustellen. Wenn Sie diese Option wählen, müssen Sie `usernameSecretArn` in `identityProvider` definieren.  
`usernameSecretArn`  
(Optional) Der ARN eines AWS Secrets Manager Geheimnisses. Das SiteWise Edge-Gateway verwendet die Authentifizierungsanmeldeinformationen in diesem geheimen Schlüssel, wenn es eine Verbindung zu dieser Quelle herstellt. Sie müssen Geheimnisse an den SiteWise IoT-Connector Ihres SiteWise Edge-Gateways anhängen, um sie für die Quellauthentifizierung zu verwenden. Weitere Informationen finden Sie unter [Konfigurieren Sie die Datenquellenauthentifizierung für SiteWise Edge](configure-source-authentication-ggv2.md).  
Dieses Feld ist erforderlich, wenn Sie `Username` für `type` in `identityProvider` auswählen.  
`nodeFilterRules`  
Eine Liste von Knotenfilterregelstrukturen, die die OPC UA-Datenstream-Pfade definieren, die an die AWS Cloud gesendet werden sollen. Sie können Knotenfilter verwenden, um die Startzeit und die CPU-Auslastung Ihres SiteWise Edge-Gateways zu reduzieren, indem Sie nur Pfade zu Daten einbeziehen, die Sie modellieren. AWS IoT SiteWise Standardmäßig laden SiteWise Edge-Gateways alle OPC UA-Pfade hoch, außer denen, die mit beginnen. `/Server/` Um OPC UA-Knotenfilter zu definieren, können Sie Knotenpfade und die `*` Platzhalterzeichen und verwenden. `**` Weitere Informationen finden Sie unter [Verwenden Sie OPC UA-Knotenfilter in Edge SiteWise](opc-ua-node-filters.md).  
Jede Struktur in der Liste muss folgende Informationen enthalten:    
`action`  
Die Aktion für diese Knotenfilterregel. Sie können die folgenden Optionen auswählen:  
+ `INCLUDE`— Das SiteWise Edge-Gateway umfasst nur Datenströme, die dieser Regel entsprechen.  
`definition`  
Eine Knotenfilterregelstruktur, die die folgenden Informationen enthält:    
`type`  
Der Typ des Knotenfilterpfads für diese Regel. Sie können die folgenden Optionen auswählen:  
+ `OpcUaRootPath`— Das SiteWise Edge-Gateway bewertet diesen Knotenfilterpfad anhand des Stammverzeichnisses der OPC-UA-Pfadhierarchie.  
`rootPath`  
Der Knotenfilterpfad, der anhand der Wurzel der OPC UA-Pfadhierarchie ausgewertet werden soll. Dieser Pfad muss mit `/` beginnen.  
`measurementDataStreamPrefix`  
Eine Zeichenfolge, die allen Datenströmen aus der Quelle vorangestellt wird. Das SiteWise Edge-Gateway fügt dieses Präfix allen Datenströmen aus dieser Quelle hinzu. Verwenden Sie ein Datenstrom-Präfix, um zwischen Datenströmen mit demselben Namen aus verschiedenen Quellen zu unterscheiden. Jeder Datenstrom sollte einen eindeutigen Namen in Ihrem Konto haben.  
`typeConversions`  
Die Konvertierungstypen, die für nicht unterstützte OPC UA-Datentypen verfügbar sind. Jeder Datentyp wird in Zeichenketten konvertiert. Weitere Informationen finden Sie unter [Nicht unterstützte Datentypen werden konvertiert](string-conversion.md).    
`array`  
Der einfache Array-Datentyp, der in Zeichenketten konvertiert wird. Sie können die folgenden Optionen auswählen:  
+ `JsonArray`— Zeigt an, dass Sie Ihre einfachen Array-Datentypen in Zeichenketten konvertieren möchten.  
`datetime`  
Der DateTime Datentyp, der in Zeichenketten konvertiert wird. Sie können die folgenden Optionen auswählen:  
+ `ISO8601String`— Zeigt an, dass Sie ISO 8601-Datentypen in Zeichenketten konvertieren möchten.  
`destination`  
Konfiguration für das Ziel von OPC UA-Tags. Klassische Stream-, v2- und MQTT-fähige V3-Gateways haben unterschiedliche Konfigurationen für Ziele.    
`type`  
Der Typ des Ziels.  
`streamName`— *nur für Classic-Streams, V2-Gateways*  
Name des -Streams. Der Streamname sollte eindeutig sein.  
`streamBufferSize`— *nur für Classic-Streams, V2-Gateways*  
Die Puffergröße des Streams. Dies ist wichtig für die Verwaltung des Datenflusses aus OPC UA-Quellen.  
`defaultPropertyGroupConfig`— *MQTT-fähig*, nur V3-Gateways  
(Optional) Konfiguration für die Standard-Eigenschaftsgruppe. Die Standard-Eigenschaftsgruppe enthält alle Knoten, die sonst nicht in einer benutzerdefinierten Eigenschaftsgruppe enthalten sind.    
`dataChangeTrigger`  
Der Standardauslöser für Datenänderungen, der in der Standard-Eigenschaftengruppe verwendet werden soll. Gültige Werte sind `STATUS_VALUE_TIMESTAMP`, `STATUS_VALUE` oder `STATUS`.
`defaultPropertyGroupConfig`erfordert Version 3.1.0 oder höher der IoT SiteWise OPC UA-Kollektorkomponente. Weitere Informationen finden Sie unter [Aktualisieren Sie die Version einer Komponente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).  
`discoveryConfig`— *MQTT-fähig*, nur V3-Gateways  
(Optional) Konfiguration für den OPC UA-Knotenerkennungsprozess.    
`enableNodeTraversal`  
Gibt an, ob weiterhin untergeordnete Knoten des Stammknotens durchsucht werden sollen, der durch den Knotenfilter der Datenquelle definiert ist. Wenn diese Option auf gesetzt `false` ist, stoppt die Erkennung am Stammknoten.  
`avoidNodeTreeLoops`  
Gibt an, ob beim Durchsuchen des OPC UA-Knotens Endlosschleifen vermieden werden sollen. Wenn diese Option auf gesetzt ist`true`, verfolgt das Gateway besuchte Knoten, um Zirkelverweise zu verhindern.  
`maxConcurrentBrowseRequests`  
Die maximale Anzahl gleichzeitiger Suchanfragen, die Ihr OPC UA-Server gleichzeitig verarbeiten kann. Der gültige Bereich liegt zwischen 1 und 500.  
`maxNodesPerBrowseRequest`  
Die maximale Anzahl von Knoten, die in jeder Suchanforderung an den OPC UA-Server gesendet werden sollen. Der gültige Bereich liegt zwischen 1 und 1.000.  
`periodicDiscovery`  
Konfiguration für die regelmäßige Ausführung der Erkennung in festen Intervallen. Die regelmäßige Erkennung ist aktiviert, wenn diese Konfiguration bereitgestellt wird.    
`interval`  
Die Zeitspanne zwischen den periodischen Erkennungsvorgängen. Sie können es `m` für Minuten, `h` Stunden und `d` Tage verwenden. Zum Beispiel `90m` oder `1h`. Das Mindestintervall beträgt 30 Sekunden.  
`maxNodesDiscoveredPerInterval`  
Die maximale Anzahl von Knoten, die pro Erkennungsintervall entdeckt werden sollten. Dies hilft, die Last sowohl auf dem Gateway als auch auf dem OPC UA-Server zu kontrollieren.
`periodicDiscovery`erfordert Version 3.1.0 oder höher der IoT SiteWise OPC UA-Kollektorkomponente. Weitere Informationen finden Sie unter [Aktualisieren Sie die Version einer Komponente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).
Wenn sich die Erkennung endlos wiederholt, aktivieren Sie diese Option. `avoidNodeTreeLoops` Überwachen Sie den Fortschritt der Erkennung in den CloudWatch Protokollen unter der `aws.iot.SiteWiseOpcUaCollector` Komponente.

`propertyGroups`  
(Optional) Die Liste der Eigenschaftsgruppen, die das Protokoll definieren `deadband` und vom Protokoll `scanMode` angefordert werden.    
`name`  
Der Name der Eigenschaftsgruppe. Dies sollte ein eindeutiger Bezeichner sein.  
`deadband`  
Der `deadband` Wert definiert die minimale Änderung des Werts eines Datenpunkts, die eintreten muss, bevor die Daten an die Cloud gesendet werden. Sie umfasst die folgenden Informationen:    
`type`  
Die unterstützten Typen von Deadband. Sie können die folgenden Optionen auswählen:  
+ `ABSOLUTE`— Ein fester Wert, der die minimale absolute Änderung angibt, die erforderlich ist, um einen Datenpunkt als signifikant genug anzusehen, um an die Cloud gesendet zu werden.
+ `PERCENT`— Ein dynamischer Wert, der die minimal erforderliche Änderung als Prozentsatz des Werts des zuletzt gesendeten Datenpunkts angibt. Diese Art von Totband ist nützlich, wenn die Datenwerte im Laufe der Zeit stark variieren.  
`value`  
Der Wert des Totbandes. Wenn `type` ja`ABSOLUTE`, ist dieser Wert ein Double ohne Einheit. Wenn `type` ja`PERCENT`, ist dieser Wert ein Doppelter zwischen `1` und`100`.  
`eguMin`  
(Optional) Das Minimum an technischen Einheiten, wenn ein `PERCENT` Totband verwendet wird. Sie legen dies fest, wenn auf dem OPC UA-Server keine technischen Einheiten konfiguriert sind.  
`eguMax`  
(Optional) Die maximale Anzahl an technischen Einheiten, wenn ein `PERCENT` Deadband verwendet wird. Sie legen dies fest, wenn auf dem OPC UA-Server keine technischen Einheiten konfiguriert sind.  
`timeoutMilliseconds`  
Die Dauer in Millisekunden vor dem Timeout. Das Minimum ist. `100`  
`scanMode`  
Die `scanMode` Struktur, die die folgenden Informationen enthält:    
`type`  
Die unterstützten Typen von`scanMode`. Zulässige Werte sind `POLL` und`EXCEPTION`.  
`rate`  
Das Abtastintervall für den Scanmodus.  
`timestampToReturn`  
Die Quelle des Zeitstempels. Sie können die folgenden Optionen auswählen:  
+ `SOURCE_TIME`— Verwendet den Zeitstempel von Ihrem Gerät.
+ `SERVER_TIME`— Verwendet den Zeitstempel von Ihrem Server.
Verwendung `TimestampToReturn` mit Version 2.5.0 oder höher der IoT SiteWise OPC UA-Collector-Komponente. Wenn Sie diese Funktion mit früheren Versionen verwenden, schlagen Konfigurationsupdates fehl. Weitere Informationen finden Sie unter [Aktualisieren Sie die Version einer Komponente AWS IoT SiteWise](manage-gateways-ggv2.md#update-component-version).  
`nodeFilterRuleDefinitions`  
(Optional) Eine Liste von Knotenpfaden, die in die Eigenschaftengruppe aufgenommen werden sollen. Eigenschaftsgruppen dürfen sich nicht überschneiden. Wenn Sie keinen Wert für dieses Feld angeben, enthält die Gruppe alle Pfade unter dem Stamm, und Sie können keine zusätzlichen Eigenschaftsgruppen erstellen. Die `nodeFilterRuleDefinitions`-Struktur enthält folgende Informationen:    
`type`  
`OpcUaRootPath`ist der einzige unterstützte Typ. Dies gibt an, dass der Wert von `rootPath` ein Pfad relativ zum Stammverzeichnis des OPC UA-Browsingbereichs ist.  
`rootPath`  
Eine durch Kommas getrennte Liste, die die Pfade (relativ zum Stamm) angibt, die in die Eigenschaftsgruppe aufgenommen werden sollen.

### Beispiele für zusätzliche Funktionskonfigurationen für Classic-Streams, V2-Gateways ()AWS CLI
<a name="opc-ua-source-example-cli"></a>

Das folgende Beispiel definiert eine OPC UA SiteWise Edge-Gateway-Funktionskonfiguration anhand einer in einer JSON-Datei gespeicherten Nutzlast.

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

**Example : OPC UA-Quellkonfiguration**  
Die folgende `opc-ua-configuration.json` Datei definiert eine grundlegende, unsichere OPC UA-Quellkonfiguration.  

```
{
    "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 : OPC UA-Quellkonfiguration mit definierten Eigenschaftsgruppen**  
Die folgende `opc-ua-configuration.json` Datei definiert eine grundlegende, unsichere OPC UA-Quellkonfiguration mit definierten Eigenschaftsgruppen.  

```
{
    "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 : OPC UA-Quellkonfiguration mit Eigenschaften**  
Das folgende JSON-Beispiel für `opc-ua-configuration.json` definiert eine OPC UA-Quellkonfiguration mit den folgenden Eigenschaften:  
+ Vertraut jedem Zertifikat.
+ Verwendet die `BASIC256` Sicherheitsrichtlinie, um Nachrichten zu sichern.
+ Verwendet den `SIGN_AND_ENCRYPT`-Modus zum Sichern von Verbindungen.
+ Verwendet Authentifizierungsdaten, die in einem Secrets Manager Manager-Secret gespeichert sind.
+ Filtert Datenströme außer denjenigen heraus, deren Pfad mit `/WindFarm/2/WindTurbine/` beginnt.
+ Fügt `/Washington` am Anfang jedes Datenstrompfades hinzu, um zwischen diesem „Windpark \$12" und einem „Windpark \$12" in einem anderen Bereich zu unterscheiden.

```
{
    "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 : OPC UA-Quellkonfiguration mit Zertifikatsvertrauen**  
Das folgende JSON-Beispiel für `opc-ua-configuration.json` definiert eine OPC UA-Quellkonfiguration mit den folgenden Eigenschaften:  
+ Vertraut einem bestimmten X.509-Zertifikat.
+ Verwendet die `BASIC256` Sicherheitsrichtlinie, um Nachrichten zu sichern.
+ Verwendet den `SIGN_AND_ENCRYPT`-Modus zum Sichern von Verbindungen.

```
{
    "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": ""
              
        }
    ]
}
```