-
Notifications
You must be signed in to change notification settings - Fork 74
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
Feature: Add impersonation to tekton results API #373
Conversation
Skipping CI for Draft Pull Request. |
/kind feature |
948420f
to
04b1f3a
Compare
/test all |
04b1f3a
to
abde8c6
Compare
abde8c6
to
ffa7ffc
Compare
/test pull-tekton-results-integration-tests |
/assign @adambkaplan |
6e0cf3b
to
71bda4c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/approve
Marking this as an approved feature to add. In the current form, however, we need to ensure that e2e tests work with this feature enabled. @dibyom do other projects have a mechanism to test features e2e where the feature flag is enabled and disabled?
71bda4c
to
06adf68
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Almost there! Code looks good, I added a suggestion to add a code comment.
Can you also please add a section to the Authorization doc that indicates we support Kubernetes impersonation headers [1]? You don't need to explain what user impersonation is - a link to the Kubernetes doc [2] is sufficient. Just focus on how to enable the feature and how Results clients (gRPC, REST) can use it.
[1] https://github.com/tektoncd/results/tree/main/docs/api#authenticationauthorization
[2] https://kubernetes.io/docs/reference/access-authn-authz/authentication/#user-impersonation
06adf68
to
e9b6e5c
Compare
/assign @dibyom @alan-ghelardi There is a breaking configuration change here. |
Shouldn't we introduce a deprecation notice instead of directly breaking it? We can remove the |
Technically, we are allowed to make breaking changes in alpha apis. Though generally what we have done in other projects is what @khrm is suggesting here |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: adambkaplan, dibyom The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
e9b6e5c
to
6af8bf3
Compare
Agreed! But this flag is mostly for development, to bypass the RBAC processing. |
Added code comment and updated doc. |
6af8bf3
to
20f0bf6
Compare
20f0bf6
to
f0a604e
Compare
This feature adds Kubernetes impersonation header processing, impersonation access check for requester and RBAC for tekton results resources with impersonated user data.
f0a604e
to
13bce1b
Compare
@alan-ghelardi just want to check with you that renaming the Otherwise LGTM. |
/lgtm by lazy consensus. |
Changes
Resolves #309
This feature adds Kubernetes impersonation header processing, impersonation access check for requester and RBAC for tekton results resources with impersonated user data.
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#user-impersonation
Submitter Checklist
These are the criteria that every PR should meet, please check them off as you review them:
/kind <type>
. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tepRelease Notes