Skip to content

AutoHttps 1.3.0

Choose a tag to compare

@astralmaster astralmaster released this 08 Sep 12:45
· 63 commits to main since this release

Five additions to the core library, all backward compatible, plus four new companion packages.

Core (AutoHttps 1.3.0)

  • Preferred certificate chain. PreferredChain names the root the served chain should lead up to when an authority offers more than one, the way certbot's preferred-chain flag does. This keeps clients working when a certificate authority retires a root.
  • DNS-01 propagation check. Point DnsPropagationResolver at a DNS-over-HTTPS resolver and AutoHttps polls it until the TXT record is visible before asking the authority to validate, instead of waiting a fixed time. Off by default, so nothing changes unless you enable it.
  • Fail-fast startup. RequireCertificateOnStartup stops the application if no certificate is obtained within StartupCertificateTimeout, so an orchestrator restarts the instance rather than leaving it up serving the self-signed fallback.
  • Jittered retry backoff. Instances that failed at the same moment no longer retry in lockstep, which is what the Let's Encrypt integration guide asks for.
  • Certificate revocation. Inject IAutoHttpsCertificateManager to revoke a certificate at the authority (RFC 8555 revokeCert) on a suspected key compromise or when decommissioning one.

The core package still has no NuGet dependencies.

New companion packages

Opt-in packages that keep their dependencies out of the core. Install one only if you need it:

  • AutoHttps.Cloudflare 1.0.0: dns-01 challenges, including wildcards, through the Cloudflare API.
  • AutoHttps.Route53 1.0.0: dns-01 challenges through AWS Route 53.
  • AutoHttps.Azure 1.0.0: dns-01 through Azure DNS, and certificate and account key storage in Key Vault.
  • AutoHttps.Redis 1.0.0: certificate and account key storage in Redis, for instances that do not share a filesystem.

Each targets net8.0 and net10.0 and depends on AutoHttps 1.3.0.