feat(resources): add backend TLS options #7
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/backend-tls"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
httpstargets: a custom CA, a server name, or skipping verification.feat/custom-headers); retarget tomainonce #2 to #6 are merged.Changes
backend_tls_server_name,backend_tls_skip_verifyandbackend_tls_cato resources. Columns only, so it is portable and reversible.BackendTlsis the single definition of valid settings, shared by the changeset and the renderer. The CA is parsed and stored re-encoded, so only the validated certificates are kept (never text around them); private keys and other PEM objects are refused; at most 64 KB and 20 certificates. A server name must be a host name. Skipping verification cannot be combined with a CA or server name.DynamicConfigadds aserversTransportsentry (st-<id>) only for resources that deviate from the defaults, and every service of the resource names it. A resource whose stored settings fail validation is not served at all, rather than served with weaker verification.Verification
compile --warnings-as-errors,credo --strictclean;mix dialyzer0 errors on both backends.certificate signed by unknown authority, HTTP 500); skip-verify works; the CA alone works; the CA with a matching server name works; the CA with a server name the certificate is not valid for fails (certificate is valid for backend.internal, tlsbackend, not other.internal). All objects loaded with zero errors. Also exercised in the browser: a bad server name is rejected inline, then the saved resource routes with HTTP 200.httptargets on a resource with TLS settings, and certificate expiry (not checked when saving).Not included