Dynamics NAV / Business Central: automatiseret SSL-certifikat
Microsoft Dynamics NAV og Business Central on-premise har to certifikatpunkter, som skal opdateres
samtidigt: IIS-bindingen til Web Client, og ServicesCertificateThumbprint i hver BC Service
Tier-instans. simple-acme håndterer IIS-delen, og FairSSLs ImportDynamicsNAV.ps1-script
håndterer Service Tier-konfigurationen.
Opsætning
Trin 1: Installer simple-acme
Hent FairSSL-udgaven af simple-acme
(forudkonfigureret med ACME-adresse og fornyelsesindstillinger, og indeholder
ImportDynamicsNAV.ps1 i Scripts-mappen). Udpak til C:\simple-acme på
BC-serveren.
Trin 2: Forbered miljøet
- Hostnavnet matcher det BC-klienterne bruger, og er ikke et wildcard.
- Domænet er konfigureret til FairSSL Auto DNS.
- Planlæg et serviceinterval - scriptet genstarter de BC-instanser, hvor thumbprintet ændrer sig.
- Kør en kommandoprompt som administrator og naviger til
C:\simple-acme.
Trin 3: Udsted og udrul
Kør kommandoen som administrator. simple-acme udsteder certifikatet via Auto DNS, installerer det i Windows Certificate Store, binder det til IIS, og kører ImportDynamicsNAV-scriptet som opdaterer hver kørende 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.eksempel.dk" --validation none `
--certificatestore My `
--installation iis,script --script "Scripts\ImportDynamicsNAV.ps1" `
--scriptparameters "'{CertThumbprint}'" `
--friendlyname "fairssl-acme-bc.eksempel.dk" Trin 4: Verificér IIS-bindingen
Åbn BC Web Client-URL\'en i en browser og bekræft at det nye certifikat vises. Hvis det gamle stadig
serveres, så har IIS-bindingen ikke et host-header, som simple-acme kan matche. Åbn IIS Manager,
gå til BC Web Client-sitet → Bindings → HTTPS → Edit, og vælg det nye certifikat
(friendly name fairssl-acme-<host>). Tilføj samtidig et host-header til bindingen
(fx *:443:bc.eksempel.dk), så fornyelser fremover binder automatisk.
Trin 5: Indstil simple-acme fornyelsesvinduet
Hvis du brugte FairSSL-udgaven af simple-acme, er dette allerede sat. Ellers så ret i
settings.json i simple-acme-mappen ScheduledTask → RenewalDays til
365. Det får simple-acme til at lade ARI styre fornyelsen i stedet for en fast tidsplan.
Avanceret: flere instanser med hvert sit certifikat
Kun hvis du har flere BC-instanser, der bruger forskellige certifikater. Kør Trin 3-kommandoen én gang pr. certifikat/instans-par og udvid scriptparametrene med instansnavnet:
--scriptparameters "'{CertThumbprint}' 'BC-PROD'" Ofte stillede spørgsmål
Find svar på de mest almindelige spørgsmål om SSL certifikater og FairSSL.
CustomSettings.config via PowerShell-modulet NavAdminTool/BCAdminTool, som leveres med BC. Scriptet detekterer hvilket modul der er installeret.ServicesCertificateThumbprint peger på det nye certifikat, giver BC-tjenestens konto Read-rettighed på den private nøgle (så tjenesten faktisk kan starte med det nye certifikat), og genstarter kun de instanser, hvor thumbprintet ændrede sig. Instanser uden ændring forbliver kørende.ServicesCertificateThumbprint blev ændret. Hvis du har flere BC-instanser, der bruger samme certifikat, genstartes alle, men kun fordi de alle skal opdateres. Hvis du har en separat opsætning hvor forskellige instanser bruger forskellige certifikater, så se det avancerede afsnit nederst.bc.example.com og nav.example.com.*:443: (ingen host-header), så viser browseren stadig det gamle certifikat efter første kørsel. Løsning: åbn IIS Manager, tilføj host-headeret (fx bc.example.com), vælg det nye certifikat manuelt én gang. Fremtidige fornyelser binder automatisk.Klar til at automatisere BC-certifikater?
Opret en gratis konto og udsted dit første certifikat på under 10 minutter.