Blog Options
Archive
<< October 2026 >>-
Thursday 29
- Classify and Route Customer Mail with AI in Delphi -
Wednesday 28
- Translate Your Delphi Resourcestrings with TMS FNC Localization 0.9.4.0 BETA -
Tuesday 27
- Building an AI Mail Desk for a Car Dealership with Delphi -
Monday 26
- TMS FNC Component Studio now available as a trial -
Wednesday 21
- Auto-renewal for selected TMS products -
Monday 19
- TMS BIZ October 2026: Multi-Tenancy, One-Executable Servers, Configuration and More -
Thursday 15
- Install third-party Delphi libraries with TMS Smart Setup -
Wednesday 14
- Five Free Delphi utilities built with TMS WEB Core -
Tuesday 13
- One Build, Every Environment: Configuration in TMS BIZ -
Monday 12
- Open beta: one TMS.NET Maps codebase for WinForms, WPF, .NET MAUI and Blazor -
Friday 9
- Why direct RSA string encryption fails for large strings and how CMS envelopedData solves it? -
Thursday 8
- TMS FNC Core 4.5 released: save 25% when you buy an FNC license -
Wednesday 7
- New book: Getting Started with XData by Jens Fudge -
Tuesday 6
- TMS September 2026 highlights -
Monday 5
- Transform PDFs with TMS FNC Core 4.5
- Claude Plugin For TMS FNC Datagrid now available
- Expired license? Restart it with 31% off this Halloween
- TMS VCL UI Pack 13.8: Taking Native PDF Handling to the Next Level!
- FNC Showcase: every product in the TMS FNC family
- Demystifying SSH crypto containers: architecture, X.509 differences, OpenSSL creation, and TMS Crypto creation
- StellarDS: Your Cloud Backend, Made Simple
- Multi-Tenancy and Database Sharding in TMS XData
Authors
- Bernard Roussely (7)
- Wagner Landgraf (108)
- Dennis Röhner (3)
- Roman Yankovsky (2)
- Bart Holvoet (45)
- Aaron Decramer (87)
- Aäron Decramer (14)
- Pieter Scheldeman (144)
- Nancy Lescouhier (32)
- Adrian Gallero (35)
- Bruno Fierens (464)
- Marcos Douglas B. Santos (5)
- Bernard (4)
- Bradley Velghe (44)
- Andrew Simard (86)
- Holger Flick (15)
- Gjalt Vanhouwaert (54)
- Tunde Keller (40)
- Masiha Zemarai (117)
Blog
All Blog Posts | Next Post | Previous Post
Enable HTTPS in your REST server with Free SSL/TLS Certificate from Lets Encrypt
Thursday, April 19, 2018
Updated: April 11th, 2021.
One of the most important aspects of a REST API server is security. It should be mandatory that your data is encrypted while being transferred between client and server. And the standard way to do such encryption is using HTTP Secure (HTTPS).
To support HTTPS in your server, you need an SSL/TLS certificate. Not so long ago, this was a task that was relatively annoying/hard to do, and it would also require you to pay yearly fees for that. Thats not true anymore, since the release of Lets Encrypt. From their website: Lets Encrypt is a free, automated and open Certificate Authority. What does that means, basically? You can now have SSL/TLS certificates for free. And automatically!
You can use Let's Encrypt to generate SSL/TLS certificate for any TMS Sparkle-based server (like TMS XData, for example). Thus, if you want more info about Lets Encrypt and how its system works, please visit their web site to learn more about how it works.
To install a Lets Encrypt certificate in your TMS Sparkle server, we are going to use a tool named win-acme (Simple ACME Client for Windows, WACS - Windos ACME Simple). It was formerly called letsencrypt-win-simple (LEWS).
The tool is very simple to use and self-explanatory. There are many ways to validate your certificate, from self-hosted server to DNS modifications, including Cloudflare integration, for example. Refer to WinAcme documentation to learn what's the best option for you.
The only trick you need to be aware is that when WinAcme generates a certificate (regardless if it's a new or renewal), it gives you the possibility to execute a batch script. This is very useful so we can automatically bind the new certificate with Sparkle using netsh tool.
So, you can simply create a file named bindcertificate.bat - as suggestion, use the name you want - with the following content:
netsh http delete sslcert ipport=0.0.0.0:443
netsh http add sslcert ipport=0.0.0.0:443 certhash=%1 certstorename=%2 appid={00112233-4455-6677-8899-AABBCCDDEEFF}The GUID in appid above could be anything. You can change to a GUID value you want, or just use what's there.
And ask WinAcme to execute such script upon every certification generation. LE will then pass the certificate footprint in parameter %1 and the store name in parameter %2, and the certificate will be bound to Sparkle automatically in each renewal.
And that's it! Your server now supports HTTPS forever, for free!
Wagner Landgraf
This blog post has received 14 comments.
2. Thursday, April 19, 2018 at 2:04:52 PM
Glad you liked Ronald, thank you.
Wagner R. Landgraf
3. Thursday, April 19, 2018 at 7:00:20 PM
Sweet !! Thanks
Farias Anderson
4. Thursday, April 19, 2018 at 8:52:06 PM
Thanks Anderson, you''re welcome!
Wagner R. Landgraf
5. Friday, April 20, 2018 at 1:49:14 AM
This is excellent!
Ian Barker
6. Friday, April 20, 2018 at 1:00:09 PM
Thanks Ian!
Wagner R. Landgraf
7. Tuesday, May 8, 2018 at 2:29:39 PM
tentei não consegui instalar segui todos os passo .Erro apresentado:
1-[EROR] Error encoutered whila opening certificadostore. the system cannot find file especified
2-[EROR] create certificate the system cannot find the file especificad
vc teria uma sugestão pra me ajudar
To instalando no windows sever 2008 r2
Grupo WS sISTEMA
8. Monday, May 14, 2018 at 6:58:28 PM
Envie um e-mail para o nosso suporte com as informações detalhadas para podermos ajudar!
Wagner R. Landgraf
9. Wednesday, October 10, 2018 at 4:19:27 PM
Really great, works like a charm, thanks!
Bossier Peter
10. Wednesday, October 10, 2018 at 4:38:25 PM
Thanks Peter ;)
Bruno Fierens
11. Monday, March 29, 2021 at 1:08:39 AM
Hello, could you please update this article? I cannot process the step: Create LetsEncrypt account.It looks that ACME Client which you mentioned is not supported.
See my error code:
"Account creation on ACMEv1 is disabled. Please upgrade your ACME client to a version that supports ACMEv2"
Could you please help me how to continue?
Ondrej Pillar
12. Monday, March 29, 2021 at 1:50:12 PM
You can download their latest version. The process is pretty much the same, just the option names and order might have changed.
Wagner R. Landgraf
13. Friday, September 20, 2024 at 9:28:41 PM
I dowloaded the source from Github. Does exist any video about how to use win-acme code ?
Stéphane
14. Sunday, October 6, 2024 at 8:30:52 AM
Thanks for this, I was finally able to do it. Stesp were 1. run wacs.exe as admin rights (won''t see edit renewal wihout it
2. manage renewals
3. edit renewal
4. add installation script for example c:\letsentryct\bindcertificate.bat
5, add paramameters {CertThumbprint} {StorePath}
check renewal
Koistinen Mika
All Blog Posts | Next Post | Previous Post
Thanks for sharing it with us.
Ronald Janse