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

Transition service account controller clients to TokenRequest API #71275

Closed
enj opened this issue Nov 20, 2018 · 8 comments · Fixed by #72179
Closed

Transition service account controller clients to TokenRequest API #71275

enj opened this issue Nov 20, 2018 · 8 comments · Fixed by #72179
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/auth Categorizes an issue or PR as relevant to SIG Auth.

Comments

@enj
Copy link
Member

enj commented Nov 20, 2018

The controller manager handles controller clients via the ControllerClientBuilder interface. The core implementation is SAControllerClientBuilder (see k8s.io/kubernetes/pkg/controller/client_builder.go). To get a client for a specific service account, it ensures that the service account exists, and then waits for the token controller to create a secret that contains the service account's token. While the long term desire may be to remove the token controller, we can work towards that goal by moving these clients to the TokenRequest API.

Action items:

  1. Switch the controller manager clients to auto rotating tokens not persisted in secrets
  2. SAControllerClientBuilder should check if the TokenRequest API is available and use it, otherwise it should fallback to the current behavior of using secret based tokens
  3. Determine how to opt out of the token controller generated secrets (so that the only tokens for these controller clients are ephemeral and short lived)
  4. Possibly clean up legacy tokens for the controller service accounts after a release

/sig auth
/sig api-machinery

@kubernetes/sig-auth-feature-requests

xref: #70679

@k8s-ci-robot k8s-ci-robot added sig/auth Categorizes an issue or PR as relevant to SIG Auth. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. kind/feature Categorizes issue or PR as related to a new feature. labels Nov 20, 2018
@enj
Copy link
Member Author

enj commented Nov 20, 2018

/assign

@WanLinghao
Copy link
Contributor

/cc

@jennybuckley
Copy link

/cc @yliaog

@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Feb 24, 2019
@enj
Copy link
Member Author

enj commented Mar 27, 2019

/reopen

Some aspects remain.

@k8s-ci-robot
Copy link
Contributor

@enj: Reopened this issue.

In response to this:

/reopen

Some aspects remain.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@k8s-ci-robot k8s-ci-robot reopened this Mar 27, 2019
@enj
Copy link
Member Author

enj commented Mar 27, 2019

/remove-lifecycle stale

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 27, 2019
@enj
Copy link
Member Author

enj commented May 8, 2019

Opened #77599 and #77600 to cover the remaining work.

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. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/auth Categorizes an issue or PR as relevant to SIG Auth.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants