Commit e87f809d authored by Kubernetes Submit Queue's avatar Kubernetes Submit Queue Committed by GitHub

Merge pull request #49219 from jmillikin-stripe/case-insensitive-request-header-group

Automatic merge from submit-queue (batch tested with PRs 49081, 49318, 49219, 48989, 48486) Use case-insensitive header keys for `--requestheader-group-headers`. This flag is documented as being case-insensitive, but the code was doing a case-sensitive map lookup. **Release note**: ```release-note Bug fix: Parsing of `--requestheader-group-headers` in requests should be case-insensitive. ```
parents c9842a21 0acdc0cd
......@@ -145,7 +145,8 @@ func headerValue(h http.Header, headerNames []string) string {
func allHeaderValues(h http.Header, headerNames []string) []string {
ret := []string{}
for _, headerName := range headerNames {
values, ok := h[headerName]
headerKey := http.CanonicalHeaderKey(headerName)
values, ok := h[headerKey]
if !ok {
continue
}
......
......@@ -111,6 +111,20 @@ func TestRequestHeader(t *testing.T) {
},
expectedOk: true,
},
"groups case-insensitive": {
nameHeaders: []string{"X-REMOTE-User"},
groupHeaders: []string{"X-REMOTE-Group"},
requestHeaders: http.Header{
"X-Remote-User": {"Bob"},
"X-Remote-Group": {"Users"},
},
expectedUser: &user.DefaultInfo{
Name: "Bob",
Groups: []string{"Users"},
Extra: map[string][]string{},
},
expectedOk: true,
},
"extra prefix matches case-insensitive": {
nameHeaders: []string{"X-Remote-User"},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment