Skip to main content
16-Pearl
November 19, 2025
Solved

HTTPS in Kepware Universal Device Driver?

  • November 19, 2025
  • 1 reply
  • 225 views

I'm looking into utilizing the Universal Device Driver (UDD) for getting data from a REST API, however the API I need to communicate with is on a secure port requiring https.  I've found two articles that specifically say TLS is not currently supported by UDD:

Since the UDD profile is user-defined, I'm still curious if there's a way to implement TLS into the connection via the Javascript profile.  Here are my questions I'm looking to get answered: 

  • Has anyone successfully implemented TLS/HTTPS calls via UDD?
  • How does the back-end Script Engine make the calls to the remote host? 
  • Does the Script Engine use a particular library for the calls? 
  • Is TLS support on the UDD roadmap?
Best answer by pshashipreetham

Hi @Ascherer17 ,

 

You’re correct,  the Universal Device Driver (UDD) in Kepware doesn’t currently support native TLS/HTTPS communication. It only supports unencrypted HTTP and raw TCP/UDP sockets. The JavaScript execution engine used inside UDD runs within Kepware’s sandbox and doesn’t expose any secure socket or HTTPS libraries.

 

To answer your questions directly:

  • No, HTTPS/TLS can’t be implemented natively through UDD or the JavaScript profile; it lacks access to https modules or encryption APIs.

  • The Script Engine runs locally within Kepware, making direct calls via the internal networking stack. All traffic goes out as plain HTTP.

  • It doesn’t use any system libraries (like Windows SChannel or OpenSSL).

  • TLS support for UDD is not currently on the Kepware roadmap as of the latest releases.

Workarounds:

  1. Use an external middleware (Node-RED, Python, or a small REST proxy) that handles HTTPS requests and exposes a local HTTP endpoint for UDD to consume.

  2. Or, if the target REST API supports it, enable a local unencrypted endpoint (HTTP) inside your trusted network, then isolate encryption at the network perimeter.

This is the most reliable approach until Kepware adds native HTTPS support for UDD.

 

Thanks,

1 reply

18-Opal
November 21, 2025

Hi @Ascherer17 ,

 

You’re correct,  the Universal Device Driver (UDD) in Kepware doesn’t currently support native TLS/HTTPS communication. It only supports unencrypted HTTP and raw TCP/UDP sockets. The JavaScript execution engine used inside UDD runs within Kepware’s sandbox and doesn’t expose any secure socket or HTTPS libraries.

 

To answer your questions directly:

  • No, HTTPS/TLS can’t be implemented natively through UDD or the JavaScript profile; it lacks access to https modules or encryption APIs.

  • The Script Engine runs locally within Kepware, making direct calls via the internal networking stack. All traffic goes out as plain HTTP.

  • It doesn’t use any system libraries (like Windows SChannel or OpenSSL).

  • TLS support for UDD is not currently on the Kepware roadmap as of the latest releases.

Workarounds:

  1. Use an external middleware (Node-RED, Python, or a small REST proxy) that handles HTTPS requests and exposes a local HTTP endpoint for UDD to consume.

  2. Or, if the target REST API supports it, enable a local unencrypted endpoint (HTTP) inside your trusted network, then isolate encryption at the network perimeter.

This is the most reliable approach until Kepware adds native HTTPS support for UDD.

 

Thanks,