git.iko.soy/typeable/oauth2-proxy
on master help sign in
Merge branch 'master' into fix/missing-version-during-docker-built
commita29eda3a6db281860e70623bfa8eed83cf69d8cf authorJan Larwig <jan@larwig.com> dateWed 15 Jan 2025, 09:08 (2 years ago) parentf1a5011f31e02c
3 files changed+9−2
CHANGELOG.md+2−1 pkg/middleware/jwt_session.go+1−1 pkg/middleware/jwt_session_test.go+6
CHANGELOG.md+2−1
@@ -8,7 +8,8 @@
88
99## Changes since v7.8.0
1010
11−- [#2920](https://github.com/oauth2-proxy/oauth2-proxy/pull/2920) fix: setting version during docker built
11+- [#2887](https://github.com/oauth2-proxy/oauth2-proxy/issues/2887) fix: jwt regex validation error during skip-jwt-bearer-tokens flow
12+- [#2920](https://github.com/oauth2-proxy/oauth2-proxy/pull/2920) fix: missing oauth2-proxy version for docker builds
1213
1314# V7.8.0
1415
pkg/middleware/jwt_session.go+1−1
@@ -13,7 +13,7 @@ import (
1313 k8serrors "k8s.io/apimachinery/pkg/util/errors"
1414)
1515
16−const jwtRegexFormat = `^ey[IJ][a-zA-Z0-9_-]*\.ey[IJ][a-zA-Z0-9_-]*\.[a-zA-Z0-9_-]+$`
16+const jwtRegexFormat = `^ey[a-zA-Z0-9_-]*\.ey[a-zA-Z0-9_-]*\.[a-zA-Z0-9_-]+$`
1717
1818func NewJwtSessionLoader(sessionLoaders []middlewareapi.TokenToSessionFunc) alice.Constructor {
1919 js := &jwtSessionLoader{
pkg/middleware/jwt_session_test.go+6
@@ -71,6 +71,7 @@ Nnc3a3lGVWFCNUMxQnNJcnJMTWxka1dFaHluYmI4Ongtb2F1dGgtYmFzaWM=`
7171 // validToken will pass the token regex so can be used to check token fetching
7272 // is valid. It will not pass the OIDC Verifier however.
7373 const validToken = "eyJfoobar.eyJfoobar.12345asdf"
74+ const validTokenWithSpace = "eyAidHlwIjogIkpXVCIsICJraWQiOiAiRTJlWW5ZMWR1eGttTkpiVGdCRzd4MkVpNVJZPSIsICJhbGciOiAiUlMyNTYiIH0K.eyJfoobar.12345asdf"
7475
7576 Context("JwtSessionLoader", func() {
7677 var verifier middlewareapi.VerifyFunc
@@ -294,6 +295,11 @@ Nnc3a3lGVWFCNUMxQnNJcnJMTWxka1dFaHluYmI4Ongtb2F1dGgtYmFzaWM=`
294295 expectedErr: nil,
295296 expectedToken: validToken,
296297 }),
298+ Entry("Bearer <valid-token-with-whitespace>", findBearerTokenFromHeaderTableInput{
299+ header: fmt.Sprintf("Bearer %s", validTokenWithSpace),
300+ expectedErr: nil,
301+ expectedToken: validTokenWithSpace,
302+ }),
297303 Entry("Basic invalid-base64", findBearerTokenFromHeaderTableInput{
298304 header: "Basic invalid-base64",
299305 expectedErr: errors.New("invalid basic auth token: illegal base64 data at input byte 7"),