Home Search

DriveWorks Pro 23
Configuration File

Send Feedback

This section is specific to DriveWorks 23 onwards, for earlier DriveWorks versions please see DriveWorks Pro Server.

Configuration File

The DriveWorksProServerSettings.json file stores the settings applied in the Pro Server Management Console.

This topic details the settings that can be applied manually in the configuration file.

Adding settings that are not required or invalid may cause the Pro Server service to fail.

Ensure the structure of the json is correct according to the examples below.

The Ports used by Pro Server and/or enable HTTPS can be configured by manually editing this file, however this is completely optional.

Database Settings

We recommended these settings are applied directly in the Management Console User Interface.

The Provider and ConnectionString settings ensure connection to the SQL Server and the Pro Server Database, including the Authentication method used.

"Database": {
        "Provider": "SqlServer",
        "ConnectionString": "Data Source=SQLEXPRESS;Initial Catalog=ProServerDatabase;Integrated Security=True;Trust Server Certificate=True"
      }

Hosting Settings

All settings related to how DriveWorks Pro Server is hosted are applied within the Hosting element.

"Hosting": {
	APPLY REQUIRED SETTINGS HERE
}

The settings that can be applied have been split into the following categories:

Port Settings

For a list of ports used across all DriveWorks modules see Ports used for DriveWorks Deployment

ManagementConsolePort

DriveWorks Pro Server Management Console uses port 54500 by default.

Only add this setting if this default is required to be changed.

Change the default number below (54500) to the required port number, for example 54501.

"ManagementConsolePort": 54500,

ApplicationHttpPort

DriveWorks Pro Server Web Application uses port 54380 by default.

Only add this setting if this default is required to be changed.

Change the default number below (54380) to the required port number, for example 54381.

"ApplicationHttpPort": 54380,

To allow remote access to the Pro Server Web Application the port used above must be added as an Inbound Rule to the firewall settings on the machine DriveWorks Pro Server is installed.

Please see Create an Inbound Rule for the data port for more information.

ApplicationHttpsPort

DriveWorks Pro Server Web Application uses HTTP by default.

Only add this setting if this default is required to be changed.

"ApplicationHttpsPort": 54443,

If HTTPS is enabled further settings can be applied, see HTTPS Settings below.

To allow remote access to the Pro Server Web Application the port used above must be added as an Inbound Rule to the firewall settings on the machine DriveWorks Pro Server is installed.

Please see Create an Inbound Rule for the data port for more information.

HTTPS Settings

Additional settings to be applied when the "ApplicationHttpsPort" setting has been applied.

IsApplicationHttpsEnabled

If HTTPS is to be attempted for the Pro Server Web Application

  • true to enable
  • false to disable
"IsApplicationHttpsEnabled": true,

UseHttpsRedirection

If all HTTP requests are redirected to their HTTPS counterparts.

For example, if a user navigates to http://localhost:54380 they will be redirected to https://localhost:54443 (using default ports)

  • true to enable
  • false to disable
"UseHttpsRedirection": true,

UseHsts

If HSTS headers should be sent to prevent access via HTTP.*

This will only take effect once the user has first accessed the site via HTTPS.

  • true to enable
  • false to disable
"UseHsts": false,

For more information about HSTS please see mozilla.org - Headers-Strict-Transport-Security.

SSL Certificate Settings

If IsApplicationHttpsEnabled is set to true, then you need to declare an SSL Certificate.

The settings required when using SSL are from one of the following sections:

For more information about Certificate Stores, please see (Microsoft.com) Certificate Stores.

Certificate Store

Not required when using a Certificate File.

When using a Certificate Store the following settings are required:

ApplicationSslCertificateStoreLocation

Where the certificate store is located within the Windows operating system.

"LocalMachine" will contain certificates that are accessible to all users on the computer.

"CurrentUser" will contain certificates that are accessible only to the current user.

"ApplicationSslCertificateStoreLocation": false,

ApplicationSslCertificateStoreName

Name of the certificate store.

For example: "My", "Root" or "TrustedPeople"

"ApplicationSslCertificateStoreName": "My",

ApplicationSslCertificateStoreSubjectName

Name of the certificate.

In the Microsoft Management Console, this will be listed under the IssuedTo column.

This will not use the Friendly Name.

"ApplicationSslCertificateStoreSubjectName": "localhost",

Certificate File

Not required when using a Certificate Store.

When using a Certificate file the following settings are required:

ApplicationSslCertificateFilePath

File Path where the SSL certificate is stored.

"ApplicationSslCertificateFilePath": "C:\ProServer\MachineNameCertificate.cer",

ApplicationSslCertificateFilePassword

Password for the SSL certificate, if required.

"ApplicationSslCertificateFilePassword": "password",

Discovery Host Name

ApplicationDiscoveryHostName

The address advertised out to apps like DriveWorks Administrator when it tries to find the DriveWorks Pro Server.

"ApplicationDiscoveryHostName": "localhost",

Load Balancer

ApplicationTrustedOrigins

When a load balancer forwards traffic to Pro Server, it typically uses the X-Forwarded-For header to pass along the IP address of the client that made the request. In order for us to trust X-Forwarded-For, the IP address used by the reverse proxy must be registered as a trusted origin.

"ApplicationTrustedOrigins": "{Reverse Proxy IPv4/CIDR}, {Reverse Proxy IPv6/CIDR}",

Typical Configuration File

After adding the required settings above a typical DriveWorksProServerSettings.json file would look like the example below:

{
  "DriveWorks": {
    "ProServer": {
      "Hosting": {
        "ManagementConsolePort": 54501,
        "ApplicationHttpsPort": 54444,
        "IsApplicationHttpsEnabled": true,
        "UseHttpsRedirection": false,
        "ApplicationSslCertificateStoreLocation": "LocalMachine",
        "ApplicationSslCertificateStoreName": "My",
        "ApplicationSslCertificateStoreSubjectName": "localhost",
      },
      "Database": {
        "Provider": "SqlServer",
        "ConnectionString": "Data Source=SQLEXPRESS;Initial Catalog=ProServerDatabase;Integrated Security=True;Trust Server Certificate=True"
      }
    }
  }
}