Dynamics NAV / Business Central: automatiserat SSL-certifikat
Microsoft Dynamics NAV och Business Central on-premise har två certifikatpunkter som ska uppdateras
samtidigt: IIS-bindningen för Web Client och ServicesCertificateThumbprint i varje BC
Service Tier-instans. simple-acme sköter IIS-delen och FairSSLs ImportDynamicsNAV.ps1-skript
sköter Service Tier-konfigurationen.
Uppsättning
Steg 1: Installera simple-acme
Hämta FairSSL-utgåvan av simple-acme
(förkonfigurerad med ACME-adress och förnyelseinställningar, och innehåller
ImportDynamicsNAV.ps1 i Scripts-mappen). Packa upp till C:\simple-acme på
BC-servern.
Steg 2: Förbered miljön
- Värdnamnet matchar det BC-klienterna använder och är inte ett wildcard.
- Domänen är konfigurerad för FairSSL Auto DNS.
- Schemalägg ett servicefönster - skriptet startar om de BC-instanser där thumbprintet ändras.
- Kör en kommandotolk som administratör och gå till
C:\simple-acme.
Steg 3: Utfärda och distribuera
Kör kommandot som administratör. simple-acme utfärdar certifikatet via Auto DNS, installerar det i Windows Certificate Store, binder det till IIS, och kör ImportDynamicsNAV-skriptet som uppdaterar varje körande BC-instans.
wacs.exe --verbose --baseuri "https://fairssl.dk/acme" `
--eab-key-identifier DIN_EAB_KID --eab-key DIN_EAB_HMAC --accepttos `
--source manual --host "bc.exempel.se" --validation none `
--certificatestore My `
--installation iis,script --script "Scripts\ImportDynamicsNAV.ps1" `
--scriptparameters "'{CertThumbprint}'" `
--friendlyname "fairssl-acme-bc.exempel.se" Steg 4: Verifiera IIS-bindningen
Öppna BC Web Client-URL:en i en webbläsare och bekräfta att det nya certifikatet visas. Om det gamla
fortfarande serveras saknar IIS-bindningen en host-header som simple-acme kan matcha. Öppna IIS Manager,
gå till BC Web Client-sajten → Bindings → HTTPS → Edit, och välj det nya certifikatet
(friendly name fairssl-acme-<host>). Lägg samtidigt till en host-header på bindningen
(t.ex. *:443:bc.exempel.se) så att framtida förnyelser binder automatiskt.
Steg 5: Ställ in simple-acme förnyelsefönstret
Om du använde FairSSL-utgåvan av simple-acme är detta redan satt. Annars: ändra
ScheduledTask → RenewalDays till 365 i settings.json i
simple-acme-mappen. Det får simple-acme att låta ARI styra förnyelsen i stället för ett fast schema.
Avancerat: flera instanser med olika certifikat
Endast om du har flera BC-instanser som använder olika certifikat. Kör Steg 3-kommandot en gång per certifikat/instans-par och utöka skriptparametrarna med instansnamnet:
--scriptparameters "'{CertThumbprint}' 'BC-PROD'" Vanliga frågor
Hitta svar på de vanligaste frågorna om SSL-certifikat och FairSSL.
CustomSettings.config via PowerShell-modulen NavAdminTool/BCAdminTool som följer med BC. Skriptet upptäcker vilket modulnamn som är installerat.ServicesCertificateThumbprint pekar på det nya certifikatet, ger BC-tjänstens konto Read-rättighet på den privata nyckeln (så tjänsten faktiskt kan starta med det nya certifikatet) och startar bara om de instanser där thumbprintet ändrades. Instanser utan ändring förblir igång.ServicesCertificateThumbprint ändrades. Om du har flera BC-instanser som använder samma certifikat startas alla om, men bara för att alla ska uppdateras. Om olika instanser använder olika certifikat, se det avancerade avsnittet längst ner.bc.example.com och nav.example.com.*:443: (ingen host-header) visar webbläsaren fortfarande det gamla certifikatet efter första körningen. Lösning: öppna IIS Manager, lägg till host-headern (t.ex. bc.example.com), och välj det nya certifikatet manuellt en gång. Framtida förnyelser binder automatiskt.Redo att automatisera BC-certifikat?
Skapa ett gratis konto och utfärda ditt första certifikat på under 10 minuter.