stackabletech / stackabletech/opa-operator

User Info Fetcher: Enable TLS with WebPKI trust by default

Aperta
#517 4 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Rust
Stelle
21
Fork
5
Merge medio
12h 44m
PR unite (30g)
11

Descrizione

Currently, the following configuration leads to the HTTP client connecting without TLS:

apiVersion: opa.stackable.tech/v1alpha1
kind: OpaCluster
metadata:
  name: test-opa
spec:
  clusterConfig:
    userInfo:
      backend:
        keycloak:
          hostname: keycloak.example.com
          clientCredentialsSecret: opa-infofetcher-keycloak-secret
          adminRealm: master
          userRealm: master

And to enable TLS, you have to jump through a few hoops by adding:

          tls:
            verification:
              server:
                caCert:
                  webPki: {}

In this day-in-age, I think it is expected to default to TLS (and the CRA requires secure-by-default).

So I propose that we impl Default for tls:

impl Default for TlsVerification {
    fn default() -> Self {
        Self::Server(TlsServerVerification {
            ca_cert: CaCert::WebPki {},
        })
    }
}

... and explicit steps are to be taken to disable TLS or to ignore verification (or set internal PKI), eg:

          tls: null 

or

          tls:
            verification:
              none: {}

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia dalla configurazione TlsVerification e dal backend userInfo di Keycloak descritti nell’issue, quindi segui il modo in cui le impostazioni TLS vengono deserializzate e applicate al client HTTP. Verifica che il valore predefinito utilizzi la fiducia WebPKI, mentre le configurazioni esplicite null, none e internal-PKI mantengano il comportamento previsto; aggiungi o aggiorna i test pertinenti se il repository li fornisce.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
rust
Ambito
networking, security
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.