-
Notifications
You must be signed in to change notification settings - Fork 3
Add selfhosted ingress identity forwarding and organizations service #350
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
Changes from all commits
02d8421
569dd8c
04ca2cd
e64baa6
4025d7f
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -253,6 +253,31 @@ ingress: | |||||||||||||||
| nginx.ingress.kubernetes.io/auth-url: "http://flyteadmin.{{ template \"flyte.namespace\" . }}.svc.cluster.local/me" | ||||||||||||||||
| nginx.ingress.kubernetes.io/auth-response-headers: "Set-Cookie,X-User-Subject,X-User-Claim-Identitytype,X-User-Claim-Preferred-Username,X-User-Token" | ||||||||||||||||
| nginx.ingress.kubernetes.io/auth-cache-key: "$http_authorization$http_flyte_authorization$http_cookie" | ||||||||||||||||
| # For gRPC backends (backend-protocol: GRPC), nginx uses grpc_pass instead | ||||||||||||||||
| # of proxy_pass. The auth-response-headers annotation only sets proxy headers, | ||||||||||||||||
| # not gRPC headers. This configuration-snippet bridges identity headers from | ||||||||||||||||
| # the auth subrequest response into the upstream gRPC request so backend | ||||||||||||||||
| # services receive the caller's identity. | ||||||||||||||||
| nginx.ingress.kubernetes.io/configuration-snippet: | | ||||||||||||||||
| auth_request_set $user_id $upstream_http_x_user_subject; | ||||||||||||||||
| proxy_set_header X-User-Subject $user_id; | ||||||||||||||||
| grpc_set_header X-User-Subject $user_id; | ||||||||||||||||
|
|
||||||||||||||||
| auth_request_set $user_identitytype $upstream_http_x_user_claim_identitytype; | ||||||||||||||||
| proxy_set_header X-User-Claim-Identitytype $user_identitytype; | ||||||||||||||||
| grpc_set_header X-User-Claim-Identitytype $user_identitytype; | ||||||||||||||||
|
|
||||||||||||||||
| auth_request_set $user_handle $upstream_http_x_user_claim_userhandle; | ||||||||||||||||
| proxy_set_header X-User-Claim-userhandle $user_handle; | ||||||||||||||||
| grpc_set_header X-User-Claim-userhandle $user_handle; | ||||||||||||||||
|
|
||||||||||||||||
| auth_request_set $groups $upstream_http_x_user_claim_groups; | ||||||||||||||||
| proxy_set_header X-User-Claim-groups $groups; | ||||||||||||||||
| grpc_set_header X-User-Claim-groups $groups; | ||||||||||||||||
|
|
||||||||||||||||
|
Comment on lines
+270
to
+277
|
||||||||||||||||
| auth_request_set $user_handle $upstream_http_x_user_claim_userhandle; | |
| proxy_set_header X-User-Claim-userhandle $user_handle; | |
| grpc_set_header X-User-Claim-userhandle $user_handle; | |
| auth_request_set $groups $upstream_http_x_user_claim_groups; | |
| proxy_set_header X-User-Claim-groups $groups; | |
| grpc_set_header X-User-Claim-groups $groups; |
Copilot
AI
Apr 20, 2026
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.
This PR changes the rendered Helm output (new organizations service + new protectedIngressAnnotationsGrpc snippet). The repo has snapshot-style Helm output tests under tests/generated driven by tests/run.sh; these fixtures will need to be regenerated/updated or CI diffs will fail for the controlplane.* test cases.
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.
Claude confirms this is why the CI check is failing.
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.
The gRPC identity-forwarding configuration-snippet currently forwards X-User-Subject and X-User-Claim-Identitytype, but it does not forward X-User-Token or X-User-Claim-Preferred-Username even though they are included in auth-response-headers. If the intent is that gRPC backends receive the same identity context as HTTP backends, add grpc_set_header/proxy_set_header entries for these headers as well (sourced from the auth subrequest response).
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.
Are these headers actually needed?