Giter VIP home page Giter VIP logo

Comments (10)

rohanKanojia avatar rohanKanojia commented on June 3, 2024 1

@ttbadr : Could you please provide more details? How are OpenID parameters being provided to KubernetesClient (like refresh_token, OpenID identity provider URL, etc)?

from kubernetes-client.

ttbadr avatar ttbadr commented on June 3, 2024 1

@rohanKanojia I use the k8s, I create a pull request to fix it #5888, can you help to review it. thx

from kubernetes-client.

ttbadr avatar ttbadr commented on June 3, 2024 1

@rohanKanojia I build the Kubeclient via ConfigBuilder, the code like below:

Config config = new ConfigBuilder().withAutoConfigure(false)
        .withNameSpace(namespace)
        .withMasterUrl(url)
        .withAutoOAuthToken(token)
        .withCaCertData(base64CaData)
        .withAuthProvider(new AuthProviderConfigBuilder()
                .withName(providerName)
                .withConfig(configMap)
                .build()).build();
new KubernetesClientBuilder().withConfig(config).build();

btw, I can't find the ConfigBuilder class in the source, is it genarated by some maven task?

from kubernetes-client.

ttbadr avatar ttbadr commented on June 3, 2024

@rohanKanojia I think the root cause is here
this method persistKubeConfigWithUpdatedAuthInfo will be called when the refresh token request success, and persist the new token to the config.
but you can see that if the config is not a file then return, if the config is a file then save the new token to the kubeconfig.
so if the config is in-memory, the new token will be ignore, the next client request will use the old token and fail

from kubernetes-client.

rohanKanojia avatar rohanKanojia commented on June 3, 2024

@ttbadr : May I know which cluster you're using? It might be difficult for us to reproduce this. Is it possible for you to create a pull request to fix this?

from kubernetes-client.

rohanKanojia avatar rohanKanojia commented on June 3, 2024

@ttbadr : Thanks a lot! Could you please add a test case to validate your fix? Also, could you please provide more details about your setup? I'm wondering from which source KubernetesClient is fetchin refresh token for performing refresh, it will help us out in doing review.

from kubernetes-client.

ttbadr avatar ttbadr commented on June 3, 2024

@rohanKanojia ok, I can add some test cases. Sorry I can't provide the source, It's a internal k8s cluster

from kubernetes-client.

rohanKanojia avatar rohanKanojia commented on June 3, 2024

@ttbadr : I'm not asking for your cluster details. I'm requesting you to elaborate more on your problem. How is Config loaded by KubernetesClient? Is it via some local .kubeconfig file or via ConfigBuilder?

from kubernetes-client.

rohanKanojia avatar rohanKanojia commented on June 3, 2024

@ttbadr: Yes, it's generated using sundrio annotation processor

from kubernetes-client.

manusa avatar manusa commented on June 3, 2024

After working on the refactor of the OpenIDConnectionUtils, I'm noticing that these changes might actually create a regression for #4802 which was fixed by #4951

Please, @Vlatombe, could you review #5888 and verify it won't cause a regression for your use cases.

from kubernetes-client.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.