-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for certificate managers/keystores #43
Comments
Thanks for your interest in this project. This is out of scope for this library, but as you pointed out, this library should provide enough to enable a secure connection between a load balancer that supports these features and the exporter itself. Additionally, you are requesting embedding quite big dependencies (AWS SDK, Azure SDK) which would force everyone importing this library to also depend on. |
Tanks for your answer ! What is your recomendation in case of third party endpoint like a reverse proxy or load blancer, to have a full on transit encryption ? |
I don't provide security advices for particular stacks unfortunately, but it looks like you'd need a CA and some automation. Note that our security policy is at https://prometheus.io/docs/operating/security/ and should answer some of your questions about what to expect and not expect from Prometheus wrt this topic. |
I understand, each stacks are different, and Prometheus follows good general guidelines with native cryptography libs to keep a good security and maintenability. Maybe an alternative... Why not provide an option like : tls_server_config:
# Mutualy exclusive with cert_file and key_file
cert_provider_command: "/path/to/command --output stdout --format pem"
key_provider_command: "/path/to/command --output stdout --format pem" This could handle all use cases, especialy with cloud providers. Even if you manage your own CA pki, you could automaticaly ask and challenge for a new certificate to your service. It can be compatible with Hashicorp Vault, LetsEncrypt, custom CA, Azure, AWS and so on... |
We do not have certificates in memory, they are read on every request. If you have a command, you just have to make it write the certs atomically on disk and it will work. |
Ok, in this case it's a very simple workaround ! |
Hello,
It could be very usefull and compliant with lot of security levels to add the support of certificate managers/keystores as plugin or embded providers.
As common keystores we could start with :
I know we could delegate it to a reverse proxy with already these capabilities, but for a full in transit encryption compliance it can be a nightmare.
The text was updated successfully, but these errors were encountered: