You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

This plugin is based on the S2OPC open source library.

OPC UA server protocol stack configuration

Attributes definition

AttributeDescriptionExpected valuesMandatory
urlThe server URL endpoint

“opc.tcp://:[/sub/path]”

e.g. “opc.tcp://localhost:4841
YES
appUriThe application URIe.g. “urn:S2OPC:localhost”YES
productUriThe product URIe.g. “urn:S2OPC:localhost”YES
appDescriptionApplication descriptionAny non-empty string.YES
localeIdThe default language Id.e.g. "en-US", "fr-FR", ...YES
namespaces

List of namespaces URI, starting at namespace 1.
Note that in current implementation, only namespace 1 is used.

Thus, the array should contain only one name. (Array is kept for portability)

e.g. for 2 users namespaces (ns=1, ns=2): [ "urn:S2OPC:localhost", "urn:S2OPC:localhost_2" ]YES
policiesArray of accepted policies

If no security is required: 
- a single element containing both "None" for Mode and Policy should be used.


YES
policies.securityMode

The security mode

A string among “None”, “Sign” and “SignAndEncrypt” (case insensitive)YES
policies.securityPolicyThe security policyA string among “None”, “Basic256”, “Basic256Sha256”, “Aes128Sha256RsaOaep” and “Aes256Sha256RsaPss”YES
policies.userPoliciesThe user policy

If no security is required, "Anonymous" should be used

A string among “Anonymous”, “username”, “username_None”, “username_Basic256”YES
usersA map of 'user':'password'.
If no user-authentication is required, it can be an empty object
e.g: {"user" : "password", "user2" : "xGt4sdE3Z+" }
e.g: {}
YES
certificatesNote: all certificate files are expected to be provided in the $(FLEDGE_INSTALL)/data/etc/certs/s2opc_srv folder
NO
certificates.serverCertPathThe Server certificate filename (DER format)e.g. "server_2k_cert.der"NO
certificates.serverKeyPathThe Server key filename (PEM format)e.g. "server_2k_key.pem"NO
certificates.trusted_rootThe list of trusted root certificates (DER)e.g. [ "cacert.der" ]NO
certificates.trusted_intermediateThe list of trusted intermediate certificates (DER)Same as “trusted_root”NO
certificates.revokedThe list of revoked certificates (DER)Same as “trusted_root”NO
certificates.untrusted_rootThe list of untrusted root certificates (DER)Same as “trusted_root”NO
certificates.untrusted_intermediateThe list of untrusted intermediate certificates (DER)Same as “trusted_root”NO
certificates.issuedThe list of untrusted issued certificates (DER)Same as “trusted_root”NO

Configuration JSON structure

{
   "transport_layer":{
      "url":"opc.tcp://localhost:4841/OPCUA/s2opc",
      "appUri":"urn:S2OPC:localhost",
      "productUri":"urn:S2OPC:localhost",
      "appDescription":"Application description",
      "localeId":"en-US",
      "namespaces":[ "urn:S2OPC:localhost" ],
      "policies":[
         {
            "securityMode":"None",
            "securityPolicy":"None",
            "userPolicies":[
               "anonymous"
            ]
         },
         {
            "securityMode":"SignAndEncrypt",
            "securityPolicy":"Basic256Sha256",
            "userPolicies":[
               "username_Basic256Sha256",
               "username_None"
            ]
         }
      ],
      "users":{ "user":"password", "user2":"xGt4sdE3Z+" },
      "certificates":{
         "serverCertPath":"server_2k_cert.der",
         "serverKeyPath":"server_2k_key.pem",
         "trusted_root":[ "cacert.der" ],
         "trusted_intermediate":[],
         "revoked":["cacrl.der"],
         "untrusted_root":[],
         "untrusted_intermediate":[],
         "issued":[]
      }
   }
}
  • No labels