POST request fails: Could not create SSL/TLS secure channel

Maria-SMaria-S Member Posts: 90
Dear Experts,

I am trying to post data to some https endpoint of our partner from NAV2018


When I am sending the request from NAV (i tried AL variant with HTTPClient and C/AL variant with HttpWebRequestMgt), it fails with the following error:
"The request was aborted: Could not create SSL/TLS secure channel."

When I do test with Powershell and post via Invoke-WebRequest to the same endpoint, the responce is OK (200).

What could be the difference and how to make it work in NAV?

(I also received the .p7b certificate from the partner, but since it works without it in powershell, I guess I do not need it)

Please help.

Best Answer

  • Maria-SMaria-S Member Posts: 90
    Answer ✓
    OK, I solved it.

    HttpWebRequestMgt.AddSecurityProtocolTls10();

    Apparently, our partner uses ancient security protocol.
    I could have guessed because other options to connect were FTP and X.400.

    I used Fiddler to check the difference between PowerShell and NAV calls.

Answers

  • Maria-SMaria-S Member Posts: 90
    Also tried adding the following string, but this did not help:

    HttpWebRequestMgt.AddSecurityProtocolTls12();
  • Maria-SMaria-S Member Posts: 90
    Also I can access "https://tlstest.paypal.com/" from NAV, that means Security Protocol is not a problem.

    Is there a way to get clearer indication what could be the problem?
  • Maria-SMaria-S Member Posts: 90
    Answer ✓
    OK, I solved it.

    HttpWebRequestMgt.AddSecurityProtocolTls10();

    Apparently, our partner uses ancient security protocol.
    I could have guessed because other options to connect were FTP and X.400.

    I used Fiddler to check the difference between PowerShell and NAV calls.
  • devanshu_chaudharydevanshu_chaudhary Member Posts: 8
    edited 2022-08-29
    I am also facing the same challenge....plz suggest any best way to solve this Error: The request was aborted: Could not create SSL/TLS secure channel.
    Trying ServicePMgr.SecurityProtocol(SecurityProtocal.Tls12);
Sign In or Register to comment.