stackabletech / stackabletech/opa-operator
User Info Fetcher: Enable TLS with WebPKI trust by default
Personne n'a encore pris cette issue.
- Langage dominant
- Rust
- Étoiles
- 21
- Forks
- 5
- Merge moyen
- 12 h 44 min
- PR mergées (30 j)
- 11
Description
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: {}
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par la configuration TlsVerification et le backend userInfo de Keycloak décrits dans l’issue, puis suivez la manière dont les paramètres TLS sont désérialisés et appliqués au client HTTP. Vérifiez que la valeur par défaut utilise la confiance WebPKI, tandis que les configurations explicites null, none et internal-PKI conservent leur comportement prévu ; ajoutez ou mettez à jour les tests pertinents si le dépôt en fournit.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- rust
- Domaine
- networking, security
- Type d'issue
- Fonctionnalité
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100