From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

LabVIEW client web services and SSL - looking for example

Solved!
Go to solution

Hello

 

I'm looking for an example of the app with web services converted from regular/simple/HTTP web services to secured by SSL (HTTPS).

 

Application work at LabVIEW 2017 comunicating with linux based server, based on VIs created by imported WDSL files.  

1. Server deliver WDSL files,

2. VIs for web services are generated using menu: Tools>>Import>> Web Services...

3. Works.

Then server is upgraded to secure connection based on SSL, and next WDSL file imported - all created VI look this same.

..but do not establish proper connection of course (event 1172 from .NET, cannot establish secure connection)

Yes, URL is changed, http to https, added port 443

http://192.168.1.10  to  https://192.168.1.10:443

What do I miss? Server certificate is self-signed, so there have to be some way to point trust store for LabVIEW.

Server certificate is added to the Windows trust store (saved from Firefox browser)

Any tips, or ideas?

 

Regards
Mikrobi (Zbigniew St. Sobków)____________________________________________________________
"You can lead a horse to water, but if you can get him to float on his back you've got something."
0 Kudos
Message 1 of 4
(3,237 Views)

Well, will replay to myself :).

It looks like LabVIEW (2017) should go transparently by web services.

Change 'http' to 'https' should be enough.

Well... let's look closer.  LabVIEW will use some of the functionality of the JAVA app, that  communicates using web services,

On the server there are WSDL files, so:

-  WSDL file imported to LabVIEW,

- generated project

- set web service

- and go...

LabVIEW 2017 .NET errorLabVIEW 2017 .NET error

So brief look into communication using Wireshark: gives this for JAVA app:

JAVA app connecting to serverJAVA app connecting to server

so Client (JAVA) hello, Server (Linux) hello, kiss-kiss, certificates.

 

and that for LabVIEW:

 

LabVIEW2017 app connecting to serverLabVIEW2017 app connecting to server

Client (LabVIEW2017) hello, Server (Linux) ... well "Handshake Failure".

 

The question is why LabVIEW is using TLSv1 not TLSv1.2 ?

I expect that Tools: Import: Web Services tool will use transparent Windows OS solution.

JAVA app works locally on the PC, same as LabVIEW 2017, Windows is 7. So assumption that Windows 7 cannot TLSv1.2 is wrong.

 

Any clues?

Regards
Mikrobi (Zbigniew St. Sobków)____________________________________________________________
"You can lead a horse to water, but if you can get him to float on his back you've got something."
0 Kudos
Message 2 of 4
(3,154 Views)
Solution
Accepted by topic author Zbigniew_StS
Message 3 of 4
(3,139 Views)

Hi Adam,

you saved my day.

An old application stop working after 2 years (probably due to some windows update).

 

Thanks a lot.

Golzio

0 Kudos
Message 4 of 4
(2,574 Views)