Programmatical Approach of using Lets Encrypt SSL Certificate from Microsoft .Net Application coding for API connections

Hi Support,

Is there any document available for configuring a Microsoft .Net Coding Application to use the Let’s encrypt SSL Certificate (.cer format or .p7b format) for accessing the clients site for retrieving the data’s via API connections.

Thanks,
Vijayakumar.E

Hi @Vijayakumar,

Let’s Encrypt certificates are already trusted by Microsoft Windows. So,

  • if the site already uses a Let’s Encrypt certificate to provide an HTTPS service, client applications should not need to do anything Let’s Encrypt-specific; they can just connect to this service using HTTPS like they would connect to any other HTTPS service
  • if the site doesn’t use a Let’s Encrypt certificate, Let’s Encrypt services aren’t relevant to the problem of connecting to it!

Let’s Encrypt doesn’t provide client certificates (which are used by an HTTPS client to authenticate to an HTTPS server). If you need those, you’ll have to find a different solution.

Hi Schoen,

Thanks for your response on my query raised.

Here is our concern of how do we connect the HTTPS site of a customer (who recently configured LetsEncrypt SSL certificate on their end) to incorporate into our Microsoft .Net Application to get the data programmatically through API connections which previously worked fine for HTTP without any problems.

Could you please check and let us know the compatibility with Microsoft .Net Programs or any other specific requirements/configuration needed for accessing LetsEncrypt SSL Site to be configured in the client side through Application coding level.

The typical usage of System.Net.Http.HttpClient (and the underlying SslStream library) is completely compatible with web servers using Let’s Encrypt certificates. No extra code or configuration is required.

e.g.

using (HttpClient client = new HttpClient())
{
  var response = await client.GetAsync("http://letsencrypt.org");
  response.EnsureSuccessStatusCode();
  string responseBody = await response.Content.ReadAsStringAsync();
  Console.WriteLine(responseBody);
}

If you are experiencing issues with the above, then it indicates a misuse or misconfiguration in either your server or client. But we would need specific details about your issue to help you.

2 Likes

Hi Schoen,

We have figured out the exact requirement of configuration changes required in the Application coding level which fixed the problem now.

Thanks,
Vijayakumar.E

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.