# OPC UA Server Properties

## `port` (integer)

Port of the listening socket

Default: `4841`

Example: `4841`

## `maxSessions` (integer)

Max Sessions allowed by user

Default: `20`

Example: `1000`

## `maxConnections` (integer)

Max Connections allowed for a single endpoint to prevent DDoS attacks

Default: `20`

Example: `1000`

## `resourcePath` (string)

Resource Path of the OPC Server. This must be added to the OPC UA connection URN of the client

Default: `"/UA/CybusOpcuaServer"`

Examples: `"/UA/CybusOpcuaServer"`, `"/My/IndividualName"`

## `alternateHostname` (string)

This setting is deprecated, has been renamed into 'hostname', and will be removed in a future release

Examples: `"10.20.30.40"`, `"my.connectware-host.company.com"`

## `hostname` (string)

The hostname by which the Connectware with the OPC UA server will be reachable on the system. This can be either an IP address or a DNS name.

Examples: `"10.20.30.40"`, `"my.connectware-host.company.com"`

## `applicationUri` (string)

The application URI is used to define the namespace name of the Connectware defined NodeIds

Default: `"urn:cybus:opcua:server:1"`

Example: `"urn:cybus:opcua:server:1"`

## `allowAnonymous` (boolean)

If true, usage of anonymous access token is allowed. In that case, OPC UA clients are allowed to connect without any authentication. Note: This is a high security risk and must not be used in production deployments.

Default: `false`

Example: `true`

## `certificateFile` (string)

Absolute path to the server certificate file

Default: `"/connectware_certs/cybus_server.crt"`

Example: `"/connectware_certs/cybus_server.crt"`

## `privateKeyFile` (string)

Absolute path to the server private key file

Default: `"/connectware_certs/cybus_server.key"`

Example: `"/connectware_certs/cybus_server.key"`

## `securityPolicies` (array)

Defines the list of OPC UA securityPolicies that will be available on the server. Note: The policy "None" is a high security risk and must not be used in production deployments.

The object is an array with all elements of the type `string`.

Each element of the array must be one of the following enum values:

* `Basic256Sha256`
* `None`

Default:

```
[
  "Basic256Sha256"
]
```

Example: `"[\"Basic256Sha256\", \"None\"]"`

## `nodesetFiles` (array)

Predefined Nodeset files to load on startup

The object is an array with all elements of the type `string`.

## `securityModes` (array)

Defines the list of OPC UA security modes which an OPC client can use to establish a connection to the Cybus OPC UA server

The object is an array with all elements of the type `string`.

Each element of the array must be one of the following enum values:

* `Invalid`
* `None`
* `Sign`
* `SignAndEncrypt`

Default:

```
[
  "SignAndEncrypt"
]
```

Example: `"[\"None\", \"SignAndEncrypt\"]"`

## `database` (object)

Definition of the database for historical access of the data. If this property exists, historical access is enabled, otherwise it is not enabled.

Properties of the `database` object:

#### `type` (string, enum)

Type of the history database

This element must be one of the following enum values:

* `influx`

Default: `"influx"`

Example: `"influx"`

#### `host` (string)

Database Host

Example: `"10.20.30.40"`

#### `port` (integer)

Port of the database server

Default: `8086`

Example: `8086`

#### `name` (string)

Database Name

Example: `"opcuaHistory"`

#### `retention` (integer)

Data older than the specified number of days will be automatically discarded

Example: `356`
