From 7d6ff03d1395065caed136bc6fb0396963d798a5 Mon Sep 17 00:00:00 2001 From: Nick Meves Date: Sat, 7 Nov 2020 12:34:27 -0800 Subject: [PATCH] Fix X-Auth-Request-Preferred-Username in response headers --- pkg/apis/options/legacy_options.go | 44 +++++++++++++++++++----------- 1 file changed, 28 insertions(+), 16 deletions(-) diff --git a/pkg/apis/options/legacy_options.go b/pkg/apis/options/legacy_options.go index f9e55499..88784e9b 100644 --- a/pkg/apis/options/legacy_options.go +++ b/pkg/apis/options/legacy_options.go @@ -203,7 +203,10 @@ func (l *LegacyHeaders) getResponseHeaders() []Header { responseHeaders := []Header{} if l.SetXAuthRequest { - responseHeaders = append(responseHeaders, getXAuthRequestHeaders(l.PassAccessToken)...) + responseHeaders = append(responseHeaders, getXAuthRequestHeaders()...) + if l.PassAccessToken { + responseHeaders = append(responseHeaders, getXAuthRequestAccessTokenHeader()) + } } if l.SetBasicAuth { @@ -331,7 +334,7 @@ func getPreferredUsernameHeader() Header { } } -func getXAuthRequestHeaders(passAccessToken bool) []Header { +func getXAuthRequestHeaders() []Header { headers := []Header{ { Name: "X-Auth-Request-User", @@ -353,7 +356,16 @@ func getXAuthRequestHeaders(passAccessToken bool) []Header { }, }, }, - getPreferredUsernameHeader(), + { + Name: "X-Auth-Request-Preferred-Username", + Values: []HeaderValue{ + { + ClaimSource: &ClaimSource{ + Claim: "preferred_username", + }, + }, + }, + }, { Name: "X-Auth-Request-Groups", Values: []HeaderValue{ @@ -366,18 +378,18 @@ func getXAuthRequestHeaders(passAccessToken bool) []Header { }, } - if passAccessToken { - headers = append(headers, Header{ - Name: "X-Auth-Request-Access-Token", - Values: []HeaderValue{ - { - ClaimSource: &ClaimSource{ - Claim: "access_token", - }, - }, - }, - }) - } - return headers } + +func getXAuthRequestAccessTokenHeader() Header { + return Header{ + Name: "X-Auth-Request-Access-Token", + Values: []HeaderValue{ + { + ClaimSource: &ClaimSource{ + Claim: "access_token", + }, + }, + }, + } +}