feat: multiple TLS configuration improvements#27162
Merged
gwossum merged 4 commits intomaster-1.xfrom Jan 28, 2026
Merged
Conversation
Externally visible changes:
- New `[http] insecure-certificate` configuration allows skipping permission
checking for HTTP TLS certificate.
- New `[opentsdb] insecure-certificate` configuration allows skipping
permission checking for OpenTSDB endpoint certificates.
Internal changes:
- TLSConfigManager
- Allow skipping certificate permission checks with WithIgnoreFilePermissions
- Direct passthrough of TLSCertLoader options suported.
- Add support for client authentication using WithClientAuth
- Custom root CAs supported through WithRootCAIncludeSystem and
WithRootCAFiles
- Custom client CAs supported through WithClientCAIncludeSystem and
WithClientCAFiles
- Refactoring of construction code
- NewClientTLSManager now returns an error
- TLSCertLoader
- GetClientCertificate: Improve client and server side error messages
when the server will not accept the client certificate
- GetClientCertificate: error message improvement
- NewTLSCertLoader no longer waits for certificate monitoring goroutine
to start before returning. Test code that needs to wait for this should
use TLSCertLoader.WaitForMonitorStart.
- TLSCertLoaderOpt constructors include TLSCertLoader in their name
Can you please add these to |
devanbenz
requested changes
Jan 28, 2026
devanbenz
left a comment
There was a problem hiding this comment.
One comment about the new configuration items.
Member
Author
Good catch! |
gwossum
added a commit
that referenced
this pull request
Feb 12, 2026
* feat: multiple TLS configuration improvements
Externally visible changes:
- New `[http] https-insecure-certificate` configuration allows skipping permission
checking for HTTP TLS certificate.
- New `[opentsdb] insecure-certificate` configuration allows skipping
permission checking for OpenTSDB endpoint certificates.
Internal changes:
- TLSConfigManager
- Allow skipping certificate permission checks with WithIgnoreFilePermissions
- Direct passthrough of TLSCertLoader options suported.
- Add support for client authentication using WithClientAuth
- Custom root CAs supported through WithRootCAIncludeSystem and
WithRootCAFiles
- Custom client CAs supported through WithClientCAIncludeSystem and
WithClientCAFiles
- Refactoring of construction code
- NewClientTLSManager now returns an error
- TLSCertLoader
- GetClientCertificate: Improve client and server side error messages
when the server will not accept the client certificate
- GetClientCertificate: error message improvement
- NewTLSCertLoader no longer waits for certificate monitoring goroutine
to start before returning. Test code that needs to wait for this should
use TLSCertLoader.WaitForMonitorStart.
- TLSCertLoaderOpt constructors include TLSCertLoader in their name
(cherry picked from commit 85353b3)
gwossum
added a commit
that referenced
this pull request
Feb 12, 2026
Add `tlsconfig.TLSConfigManager` for managing TLS configurations, handling certificate reloads, logging certificate expiration warnings, etc. This is backport of the following master-1.x PRs to the 1.12 branch: - #27100: feat: add TLSConfigManager for managing TLS configuration (clean cherry-pick) - #27103: feat: add TLSConfigManager.DialWithDialer method (clean cherry-pick) - #27106: feat: add NewClientTLSConfigManager and NewDisabledTLSConfigManager (clean cherry-pick) - #27120: feat: add TLSConfigManager.UseTLS (clean cherry-pick) - #27150: fix: Clone *tls.Config returned by TLSConfigManager.TLSConfig (clean cherry-pick) - #27162: feat: multiple TLS configuration improvements (almost clean cherry-pick)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Externally visible changes:
[http] https-insecure-certificateconfiguration allows skipping permission checking for HTTP TLS certificate.[opentsdb] insecure-certificateconfiguration allows skipping permission checking for OpenTSDB endpoint certificates.Internal changes: