Skip to content

Commit

Permalink
fix: use lowercase header name to
Browse files Browse the repository at this point in the history
Signed-off-by: Ink33 <Ink33@smlk.org>
  • Loading branch information
Ink-33 committed Dec 31, 2023
1 parent a3b22d9 commit b9873ad
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions plugins/wasm-go/extensions/jwt-auth/handler/extractor.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,10 @@ func extractToken(keepToken bool, consumer *cfg.Consumer, log wrapper.Log) strin

func extractFromHeader(keepToken bool, headers []cfg.FromHeader, log wrapper.Log) (token string) {
for i := range headers {
token, err := proxywasm.GetHttpRequestHeader(headers[i].Name)

// proxywasm 获取到的 header name 均为小写,此处需做修改
lowerName := strings.ToLower(headers[i].Name)
token, err := proxywasm.GetHttpRequestHeader(lowerName)
if err != nil {
log.Warnf("failed to get authorization: %v", err)
continue
Expand All @@ -66,7 +69,7 @@ func extractFromHeader(keepToken bool, headers []cfg.FromHeader, log wrapper.Log
return ""
}
if !keepToken {
_ = proxywasm.RemoveHttpRequestHeader(headers[i].Name)
_ = proxywasm.RemoveHttpRequestHeader(lowerName)
}
return strings.TrimPrefix(token, headers[i].ValuePrefix)
}
Expand Down Expand Up @@ -97,7 +100,7 @@ func extractFromParams(keepToken bool, params []string, log wrapper.Log) (token
}

func extractFromCookies(keepToken bool, cookies []string, log wrapper.Log) (token string) {
requestCookies, err := proxywasm.GetHttpRequestHeader("Cookie")
requestCookies, err := proxywasm.GetHttpRequestHeader("cookie")
if err != nil {
log.Warnf("failed to get authorization: %v", err)
return ""
Expand All @@ -107,7 +110,7 @@ func extractFromCookies(keepToken bool, cookies []string, log wrapper.Log) (toke
token := findCookie(requestCookies, cookies[i])
if token != "" {
if !keepToken {
_ = proxywasm.ReplaceHttpRequestHeader("Cookie", deleteCookie(requestCookies, cookies[i]))
_ = proxywasm.ReplaceHttpRequestHeader("cookie", deleteCookie(requestCookies, cookies[i]))
}
return token
}
Expand Down

0 comments on commit b9873ad

Please sign in to comment.