OpaInfoFetcher missing/bad TLS config results in confusing error message
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 38/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- kubernetes, rust
- Domaine
- infrastructure, security
Piste de recherche
Aucun fichier ni test n’est nommé ; commencez par localiser la requête de jeton d’accès de OpaInfoFetcher et sa gestion de TLS/des erreurs. Reproduisez le problème avec la configuration Keycloak indiquée, puis vérifiez que l’absence de confiance webPki ou une confiance incorrecte produit une erreur qui identifie le problème TLS plutôt que de signaler uniquement le HTTP 405.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
We moved from an on-prem Keycloak (16.0.1) to a managed keycloak (24.0.4) for a customer. It worked fine for basically all required products (Trino, Superset, Datahub etc.) but the OPA infofetcher was unhappy with just changing the endpoint and clientId / clientSecret.
user-info-fetcher 2024-12-05T11:52:15.473210Z WARN stackable_opa_user_info_fetcher: Error while processing request error=failed to get user information from Keycloak error.sources=[failed to get access_token, http response 405 for "https://foo.bar.de/realms/foobar/protocol/openid-connect/token" with response body "{\"error\":\"HTTP 405 Method Not Allowed\",\"error_description\":\"For more on this error consult the server log at the debug level.\"}"]
That was the error from the info fetcher. The get "access-token" call is 100% a POST HTTP call etc.
The managed Keycloak actually was complaining about (and receiving) a GET request.
This was very misleading, since the actual problem was missing the webPki trust.
userInfo:
backend:
keycloak:
hostname: "{{ .Values.keycloak }}"
clientCredentialsSecret: "opa-infofetcher-secret"
adminRealm: "foobar"
userRealm: "foobar"
tls:
verification:
server:
caCert:
webPki: {}
Since Trust/TLS this is a very common configuration mistake, i think the error messages should reflect this better.
Edit: Since this may depend on the (managed) keycloak server and setup, I did not check if i could reproduce this with other setups.
- Langage dominant
- Rust
- Étoiles
- 21
- Forks
- 5
- Merge moyen
- 13 h 9 min
- PR mergées (30 j)
- 10
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Aucun guide de contribution
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.
Autres issues de stackabletech/opa-operator
-
type/bug
Difficulté 4/5 3-5 jours Accessibilité débutants 52/100
stackabletech/opa-operator#823 ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 30/100
stackabletech/opa-operator#766 ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
stackabletech/opa-operator#733 ·
-
User Info Fetcher: Document data differences between backends, and/or how to query it manuallyOuverte
Difficulté 2/5 Une demi-journée Accessibilité débutants 50/100
stackabletech/opa-operator#724 ·
-
type/bug
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 20/100
stackabletech/opa-operator#718 ·
Toutes les issues de stackabletech/opa-operator
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
linebender/parley#849 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
boxlite-ai/boxlite#1729 ·
Les mainteneurs répondent en général sous 1 jour
-
external
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
langchain-ai/docs#6255 ·
Les mainteneurs répondent en général sous 1 jour
-
P2 testing
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
Les mainteneurs répondent en général sous 1 jour