Skip to content
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

Verify client certs for Prometheus deployments #1186

Open
1 of 3 tasks
tnozicka opened this issue Mar 16, 2023 · 10 comments
Open
1 of 3 tasks

Verify client certs for Prometheus deployments #1186

tnozicka opened this issue Mar 16, 2023 · 10 comments
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. triage/accepted Indicates an issue or PR is ready to be actively worked on.

Comments

@tnozicka
Copy link
Member

tnozicka commented Mar 16, 2023

Is this a bug report or feature request?

  • Feature Request

What should the feature do:
Currently the managed Prometheus that is part of the new monitoring stack doesn't force mTLS certificate verification.

# clientAuthType: "RequireAndVerifyClientCert"
# TODO: we need the prometheus-operator not to require certs only for /-/readyz or to do exec probes that can read certs

This was done temporarily on purpose because the prometheus-operator sets up probes behind authenticated enpoints, which obviously doesn't work because kubelets don't have the client certs for mTLS. We need to start by creating a simple reproducer and report it to the prometheus-operator.

What is use case behind this feature:
Security

fyi @YvanDaSilva (so you are not surprised when this gets fixed)

Requires

  1. priority/Pmaybe
  2. priority/important-longterm
    rzetelskik
  3. dependency/external kind/bug stale
@tnozicka tnozicka added kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. labels Mar 16, 2023
@rzetelskik
Copy link
Member

Opened prometheus-operator/prometheus-operator#5419
fyi @tnozicka

@rzetelskik
Copy link
Member

Tried to follow it up in the most recent PR which tried to address it: prometheus/exporter-toolkit#106. It seems to have lost traction and I haven't received any replies so far. The developers seem to agree on an approach of excluding certain paths from cert verification - although I don't know how exactly they want to achieve that atm. Anyway waiting for a reply there to agree on an approach - I wouldn't want to invest into sending a PR if we don't get anyone to look at it.

@rzetelskik
Copy link
Member

Just sent prometheus/exporter-toolkit#151. I will update this issue once (if?) it gets merged.

@rzetelskik
Copy link
Member

No response from developers so far. Pinged the maintainers on prometheus/exporter-toolkit#151 and reached out on their slack channel in CNCF workspace. If I don't get a reply in the next couple of days, I'll attend Prometheus Developer Office Hours next Monday.

@rzetelskik
Copy link
Member

I added the PR to the Developer Office Hours' agenda today but was only informed by the moderator that we'll just have to wait for the maintainers to reply in the PR. Pinged the maintainers again.

@rzetelskik
Copy link
Member

rzetelskik commented May 23, 2024

As per prometheus/exporter-toolkit#151 (comment), this should be discussed on Prometheus Dev Summit today.

Update: it wasn't 🫠

Copy link
Contributor

The Scylla Operator project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 30d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out

/lifecycle stale

@scylla-operator-bot scylla-operator-bot bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 10, 2024
@rzetelskik
Copy link
Member

/remove-lifecycle stale
/triage accepted

@scylla-operator-bot scylla-operator-bot bot added triage/accepted Indicates an issue or PR is ready to be actively worked on. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jul 10, 2024
@rzetelskik
Copy link
Member

Update: it seems like prometheus/exporter-toolkit#151 is likely to finally go through as I've got a first review. @tnozicka can we try accommodating this again in our roadmap?

@rzetelskik
Copy link
Member

Update: prometheus/exporter-toolkit#151 got an approval and is waiting to be merged. The next step after that would be to update the prometheus-operator issue (or send a PR myself) but we'll have to wait for exporter-toolkit release and for it to propagate to prometheus itself. So at this point this item is blocked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
None yet
Development

No branches or pull requests

2 participants