git.iko.soy/typeable/oauth2-proxy
on master help sign in
Merge pull request #3312 from oauth2-proxy/chore/gomod

chore(deps): update go1.25.6 and dependencies

commit56b5c08596ded4966715a1278ee8d78668982f46 authorJan Larwig <jan@larwig.com> dateSat 17 Jan 2026, 16:07 (9 months ago) parent59f4e425020c33
13 files changed+77−82
.github/workflows/ci.yml+20−7 .github/workflows/publish-release.yml+1−3 .github/workflows/test.sh−26 .golangci.yml+3 CHANGELOG.md+1 go.mod+15−15 go.sum+28−28 oauthproxy.go+4−3 pkg/validation/allowlist.go+1 pkg/validation/header.go+1 pkg/validation/upstreams.go+1 providers/azure.go+1 providers/keycloak_oidc.go+1
.github/workflows/ci.yml+20−7
@@ -7,6 +7,10 @@ on:
77 pull_request:
88 branches:
99 - '**'
10+permissions:
11+ contents: read
12+ id-token: write
13+
1014jobs:
1115 build:
1216 runs-on: ubuntu-latest
@@ -22,14 +26,16 @@ jobs:
2226 go-version-file: go.mod
2327 id: go
2428
25− - name: Get dependencies
29+ - name: Install golangci-lint
2630 env:
2731 # renovate: datasource=github-tags depName=golangci/golangci-lint
28− GOLANGCI_LINT_VERSION: v2.7.2
32+ GOLANGCI_LINT_VERSION: v2.8.0
2933 run: |
3034 curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin ${GOLANGCI_LINT_VERSION}
31− curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
32− chmod +x ./cc-test-reporter
35+
36+ - name: Install gcov2lcov
37+ run: |
38+ go install github.com/jandelgado/gcov2lcov@latest
3339
3440 - name: Verify Code Generation
3541 run: |
@@ -51,10 +57,17 @@ jobs:
5157 make release
5258
5359 - name: Test
54− env:
55− CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
5660 run: |
57− ./.github/workflows/test.sh
61+ make test
62+
63+ - name: Generate Coverage Report
64+ run: |
65+ gcov2lcov -infile=c.out -outfile=lcov.info
66+
67+ - uses: qltysh/qlty-action/coverage@v2
68+ with:
69+ oidc: true
70+ files: lcov.info
5871
5972 docker:
6073 runs-on: ubuntu-latest
.github/workflows/publish-release.yml+1−3
@@ -50,11 +50,9 @@ jobs:
5050 - name: Get dependencies
5151 env:
5252 # renovate: datasource=github-tags depName=golangci/golangci-lint
53− GOLANGCI_LINT_VERSION: v2.7.2
53+ GOLANGCI_LINT_VERSION: v2.8.0
5454 run: |
5555 curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin ${GOLANGCI_LINT_VERSION}
56− curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
57− chmod +x ./cc-test-reporter
5856
5957 # Install go dependencies
6058 go mod download
.github/workflows/test.shdeleted−26
@@ -1,26 +0,0 @@
1−#!/bin/bash
2−# manually exiting from script, because after-build needs to run always
3−set +e
4−
5−if [ -z $CC_TEST_REPORTER_ID ]; then
6− echo "1. CC_TEST_REPORTER_ID is unset, skipping"
7−else
8− echo "1. Running before-build"
9− ./cc-test-reporter before-build
10−fi
11−
12−echo "2. Running test"
13−make test
14−TEST_STATUS=$?
15−
16−if [ -z $CC_TEST_REPORTER_ID ]; then
17− echo "3. CC_TEST_REPORTER_ID is unset, skipping"
18−else
19− echo "3. Running after-build"
20− ./cc-test-reporter after-build --exit-code $TEST_STATUS --prefix $(go list -m)
21−fi
22−
23−if [ "$TEST_STATUS" -ne 0 ]; then
24− echo "Test failed, status code: $TEST_STATUS"
25− exit $TEST_STATUS
26−fi
.golangci.yml+3
@@ -53,6 +53,9 @@ linters:
5353 - revive
5454 path: util/.*\.go$
5555 text: "var-naming: avoid meaningless package names"
56+ - linters:
57+ - prealloc
58+ path: _test\.go
5659 paths:
5760 - third_party$
5861 - builtin$
CHANGELOG.md+1
@@ -10,6 +10,7 @@
1010
1111- [#3309](https://github.com/oauth2-proxy/oauth2-proxy/pull/3309) fix: Return 302 redirect from AuthOnly endpoint when skip-provider-button is true (@StefanMarkmann)
1212- [#3302](https://github.com/oauth2-proxy/oauth2-proxy/pull/3302) fix: static upstreams failing validation due to `passHostHeader` and `proxyWebSockets` defaults being set incorrectly (@sourava01 / @tuunit)
13+- [#3312](https://github.com/oauth2-proxy/oauth2-proxy/pull/3312) chore(deps): upgrade to go1.25.6 and latest dependencies (@tuunit)
1314
1415# V7.14.0
1516
go.mod+15−15
@@ -1,6 +1,6 @@
11module github.com/oauth2-proxy/oauth2-proxy/v7
22
3−go 1.25.5
3+go 1.25.6
44
55require (
66 cloud.google.com/go/compute/metadata v0.9.0
@@ -20,9 +20,9 @@ require (
2020 github.com/gorilla/mux v1.8.1
2121 github.com/justinas/alice v1.2.0
2222 github.com/oauth2-proxy/mockoidc v0.0.0-20240214162133-caebfff84d25
23− github.com/onsi/ginkgo/v2 v2.27.3
24− github.com/onsi/gomega v1.38.3
25− github.com/pierrec/lz4/v4 v4.1.23
23+ github.com/onsi/ginkgo/v2 v2.27.5
24+ github.com/onsi/gomega v1.39.0
25+ github.com/pierrec/lz4/v4 v4.1.25
2626 github.com/prometheus/client_golang v1.23.2
2727 github.com/redis/go-redis/v9 v9.17.2
2828 github.com/spf13/cast v1.10.0
@@ -31,11 +31,11 @@ require (
3131 github.com/stretchr/testify v1.11.1
3232 github.com/vmihailenco/msgpack/v5 v5.4.1
3333 go.yaml.in/yaml/v3 v3.0.4
34− golang.org/x/crypto v0.46.0
35− golang.org/x/net v0.48.0
34+ golang.org/x/crypto v0.47.0
35+ golang.org/x/net v0.49.0
3636 golang.org/x/oauth2 v0.34.0
3737 golang.org/x/sync v0.19.0
38− google.golang.org/api v0.258.0
38+ google.golang.org/api v0.260.0
3939 gopkg.in/natefinch/lumberjack.v2 v2.2.1
4040 k8s.io/apimachinery v0.35.0
4141)
@@ -53,16 +53,16 @@ require (
5353 github.com/go-logr/logr v1.4.3 // indirect
5454 github.com/go-logr/stdr v1.2.2 // indirect
5555 github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
56− github.com/google/pprof v0.0.0-20251213031049-b05bdaca462f // indirect
56+ github.com/google/pprof v0.0.0-20260115054156-294ebfa9ad83 // indirect
5757 github.com/google/s2a-go v0.1.9 // indirect
58− github.com/googleapis/enterprise-certificate-proxy v0.3.7 // indirect
58+ github.com/googleapis/enterprise-certificate-proxy v0.3.11 // indirect
5959 github.com/googleapis/gax-go/v2 v2.16.0 // indirect
6060 github.com/kylelemons/godebug v1.1.0 // indirect
6161 github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
6262 github.com/pelletier/go-toml/v2 v2.2.4 // indirect
6363 github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
6464 github.com/prometheus/client_model v0.6.2 // indirect
65− github.com/prometheus/common v0.67.4 // indirect
65+ github.com/prometheus/common v0.67.5 // indirect
6666 github.com/prometheus/procfs v0.19.2 // indirect
6767 github.com/sagikazarmark/locafero v0.12.0 // indirect
6868 github.com/spf13/afero v1.15.0 // indirect
@@ -75,11 +75,11 @@ require (
7575 go.opentelemetry.io/otel/metric v1.39.0 // indirect
7676 go.opentelemetry.io/otel/trace v1.39.0 // indirect
7777 go.yaml.in/yaml/v2 v2.4.3 // indirect
78− golang.org/x/mod v0.31.0 // indirect
79− golang.org/x/sys v0.39.0 // indirect
80− golang.org/x/text v0.32.0 // indirect
81− golang.org/x/tools v0.40.0 // indirect
82− google.golang.org/genproto/googleapis/rpc v0.0.0-20251222181119-0a764e51fe1b // indirect
78+ golang.org/x/mod v0.32.0 // indirect
79+ golang.org/x/sys v0.40.0 // indirect
80+ golang.org/x/text v0.33.0 // indirect
81+ golang.org/x/tools v0.41.0 // indirect
82+ google.golang.org/genproto/googleapis/rpc v0.0.0-20260114163908-3f89685c29c3 // indirect
8383 google.golang.org/grpc v1.78.0 // indirect
8484 google.golang.org/protobuf v1.36.11 // indirect
8585 gopkg.in/yaml.v3 v3.0.1 // indirect
go.sum+28−28
@@ -76,15 +76,15 @@ github.com/gomodule/redigo v1.7.1-0.20190322064113-39e2c31b7ca3/go.mod h1:B4C85q
7676github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
7777github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
7878github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
79−github.com/google/pprof v0.0.0-20251213031049-b05bdaca462f h1:HU1RgM6NALf/KW9HEY6zry3ADbDKcmpQ+hJedoNGQYQ=
80−github.com/google/pprof v0.0.0-20251213031049-b05bdaca462f/go.mod h1:67FPmZWbr+KDT/VlpWtw6sO9XSjpJmLuHpoLmWiTGgY=
79+github.com/google/pprof v0.0.0-20260115054156-294ebfa9ad83 h1:z2ogiKUYzX5Is6zr/vP9vJGqPwcdqsWjOt+V8J7+bTc=
80+github.com/google/pprof v0.0.0-20260115054156-294ebfa9ad83/go.mod h1:MxpfABSjhmINe3F1It9d+8exIHFvUqtLIRCdOGNXqiI=
8181github.com/google/s2a-go v0.1.9 h1:LGD7gtMgezd8a/Xak7mEWL0PjoTQFvpRudN895yqKW0=
8282github.com/google/s2a-go v0.1.9/go.mod h1:YA0Ei2ZQL3acow2O62kdp9UlnvMmU7kA6Eutn0dXayM=
8383github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
8484github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
8585github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
86−github.com/googleapis/enterprise-certificate-proxy v0.3.7 h1:zrn2Ee/nWmHulBx5sAVrGgAa0f2/R35S4DJwfFaUPFQ=
87−github.com/googleapis/enterprise-certificate-proxy v0.3.7/go.mod h1:MkHOF77EYAE7qfSuSS9PU6g4Nt4e11cnsDUowfwewLA=
86+github.com/googleapis/enterprise-certificate-proxy v0.3.11 h1:vAe81Msw+8tKUxi2Dqh/NZMz7475yUvmRIkXr4oN2ao=
87+github.com/googleapis/enterprise-certificate-proxy v0.3.11/go.mod h1:RFV7MUdlb7AgEq2v7FmMCfeSMCllAzWxFgRdusoGks8=
8888github.com/googleapis/gax-go/v2 v2.16.0 h1:iHbQmKLLZrexmb0OSsNGTeSTS0HO4YvFOG8g5E4Zd0Y=
8989github.com/googleapis/gax-go/v2 v2.16.0/go.mod h1:o1vfQjjNZn4+dPnRdl/4ZD7S9414Y4xA+a/6Icj6l14=
9090github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY=
@@ -111,14 +111,14 @@ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq
111111github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
112112github.com/oauth2-proxy/mockoidc v0.0.0-20240214162133-caebfff84d25 h1:9bCMuD3TcnjeqjPT2gSlha4asp8NvgcFRYExCaikCxk=
113113github.com/oauth2-proxy/mockoidc v0.0.0-20240214162133-caebfff84d25/go.mod h1:eDjgYHYDJbPLBLsyZ6qRaugP0mX8vePOhZ5id1fdzJw=
114−github.com/onsi/ginkgo/v2 v2.27.3 h1:ICsZJ8JoYafeXFFlFAG75a7CxMsJHwgKwtO+82SE9L8=
115−github.com/onsi/ginkgo/v2 v2.27.3/go.mod h1:ArE1D/XhNXBXCBkKOLkbsb2c81dQHCRcF5zwn/ykDRo=
116−github.com/onsi/gomega v1.38.3 h1:eTX+W6dobAYfFeGC2PV6RwXRu/MyT+cQguijutvkpSM=
117−github.com/onsi/gomega v1.38.3/go.mod h1:ZCU1pkQcXDO5Sl9/VVEGlDyp+zm0m1cmeG5TOzLgdh4=
114+github.com/onsi/ginkgo/v2 v2.27.5 h1:ZeVgZMx2PDMdJm/+w5fE/OyG6ILo1Y3e+QX4zSR0zTE=
115+github.com/onsi/ginkgo/v2 v2.27.5/go.mod h1:ArE1D/XhNXBXCBkKOLkbsb2c81dQHCRcF5zwn/ykDRo=
116+github.com/onsi/gomega v1.39.0 h1:y2ROC3hKFmQZJNFeGAMeHZKkjBL65mIZcvrLQBF9k6Q=
117+github.com/onsi/gomega v1.39.0/go.mod h1:ZCU1pkQcXDO5Sl9/VVEGlDyp+zm0m1cmeG5TOzLgdh4=
118118github.com/pelletier/go-toml/v2 v2.2.4 h1:mye9XuhQ6gvn5h28+VilKrrPoQVanw5PMw/TB0t5Ec4=
119119github.com/pelletier/go-toml/v2 v2.2.4/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY=
120−github.com/pierrec/lz4/v4 v4.1.23 h1:oJE7T90aYBGtFNrI8+KbETnPymobAhzRrR8Mu8n1yfU=
121−github.com/pierrec/lz4/v4 v4.1.23/go.mod h1:EoQMVJgeeEOMsCqCzqFm2O0cJvljX2nGZjcRIPL34O4=
120+github.com/pierrec/lz4/v4 v4.1.25 h1:kocOqRffaIbU5djlIBr7Wh+cx82C0vtFb0fOurZHqD0=
121+github.com/pierrec/lz4/v4 v4.1.25/go.mod h1:EoQMVJgeeEOMsCqCzqFm2O0cJvljX2nGZjcRIPL34O4=
122122github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
123123github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
124124github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
@@ -126,8 +126,8 @@ github.com/prometheus/client_golang v1.23.2 h1:Je96obch5RDVy3FDMndoUsjAhG5Edi49h
126126github.com/prometheus/client_golang v1.23.2/go.mod h1:Tb1a6LWHB3/SPIzCoaDXI4I8UHKeFTEQ1YCr+0Gyqmg=
127127github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk=
128128github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE=
129−github.com/prometheus/common v0.67.4 h1:yR3NqWO1/UyO1w2PhUvXlGQs/PtFmoveVO0KZ4+Lvsc=
130−github.com/prometheus/common v0.67.4/go.mod h1:gP0fq6YjjNCLssJCQp0yk4M8W6ikLURwkdd/YKtTbyI=
129+github.com/prometheus/common v0.67.5 h1:pIgK94WWlQt1WLwAC5j2ynLaBRDiinoAb86HZHTUGI4=
130+github.com/prometheus/common v0.67.5/go.mod h1:SjE/0MzDEEAyrdr5Gqc6G+sXI67maCxzaT3A2+HqjUw=
131131github.com/prometheus/procfs v0.19.2 h1:zUMhqEW66Ex7OXIiDkll3tl9a1ZdilUOd/F6ZXw4Vws=
132132github.com/prometheus/procfs v0.19.2/go.mod h1:M0aotyiemPhBCM0z5w87kL22CxfcH05ZpYlu+b4J7mw=
133133github.com/redis/go-redis/v9 v9.17.2 h1:P2EGsA4qVIM3Pp+aPocCJ7DguDHhqrXNhVcEp4ViluI=
@@ -192,19 +192,19 @@ go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
192192golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
193193golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
194194golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
195−golang.org/x/crypto v0.46.0 h1:cKRW/pmt1pKAfetfu+RCEvjvZkA9RimPbh7bhFjGVBU=
196−golang.org/x/crypto v0.46.0/go.mod h1:Evb/oLKmMraqjZ2iQTwDwvCtJkczlDuTmdJXoZVzqU0=
195+golang.org/x/crypto v0.47.0 h1:V6e3FRj+n4dbpw86FJ8Fv7XVOql7TEwpHapKoMJ/GO8=
196+golang.org/x/crypto v0.47.0/go.mod h1:ff3Y9VzzKbwSSEzWqJsJVBnWmRwRSHt/6Op5n9bQc4A=
197197golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
198198golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
199−golang.org/x/mod v0.31.0 h1:HaW9xtz0+kOcWKwli0ZXy79Ix+UW/vOfmWI5QVd2tgI=
200−golang.org/x/mod v0.31.0/go.mod h1:43JraMp9cGx1Rx3AqioxrbrhNsLl2l/iNAvuBkrezpg=
199+golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c=
200+golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU=
201201golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
202202golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
203203golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
204204golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
205205golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
206−golang.org/x/net v0.48.0 h1:zyQRTTrjc33Lhh0fBgT/H3oZq9WuvRR5gPC70xpDiQU=
207−golang.org/x/net v0.48.0/go.mod h1:+ndRgGjkh8FGtu1w1FGbEC31if4VrNVMuKTgcAAnQRY=
206+golang.org/x/net v0.49.0 h1:eeHFmOGUTtaaPSGNmjBKpbng9MulQsJURQUAfUwY++o=
207+golang.org/x/net v0.49.0/go.mod h1:/ysNB2EvaqvesRkuLAyjI1ycPZlQHM3q01F02UY/MV8=
208208golang.org/x/oauth2 v0.34.0 h1:hqK/t4AKgbqWkdkcAeI8XLmbK+4m4G5YeQRrmiotGlw=
209209golang.org/x/oauth2 v0.34.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA=
210210golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -221,8 +221,8 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
221221golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
222222golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
223223golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
224−golang.org/x/sys v0.39.0 h1:CvCKL8MeisomCi6qNZ+wbb0DN9E5AATixKsvNtMoMFk=
225−golang.org/x/sys v0.39.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
224+golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ=
225+golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
226226golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
227227golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
228228golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
@@ -234,27 +234,27 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
234234golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
235235golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
236236golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
237−golang.org/x/text v0.32.0 h1:ZD01bjUt1FQ9WJ0ClOL5vxgxOI/sVCNgX1YtKwcY0mU=
238−golang.org/x/text v0.32.0/go.mod h1:o/rUWzghvpD5TXrTIBuJU77MTaN0ljMWE47kxGJQ7jY=
237+golang.org/x/text v0.33.0 h1:B3njUFyqtHDUI5jMn1YIr5B0IE2U0qck04r6d4KPAxE=
238+golang.org/x/text v0.33.0/go.mod h1:LuMebE6+rBincTi9+xWTY8TztLzKHc/9C1uBCG27+q8=
239239golang.org/x/time v0.14.0 h1:MRx4UaLrDotUKUdCIqzPC48t1Y9hANFKIRpNx+Te8PI=
240240golang.org/x/time v0.14.0/go.mod h1:eL/Oa2bBBK0TkX57Fyni+NgnyQQN4LitPmob2Hjnqw4=
241241golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
242242golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
243243golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
244244golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
245−golang.org/x/tools v0.40.0 h1:yLkxfA+Qnul4cs9QA3KnlFu0lVmd8JJfoq+E41uSutA=
246−golang.org/x/tools v0.40.0/go.mod h1:Ik/tzLRlbscWpqqMRjyWYDisX8bG13FrdXp3o4Sr9lc=
245+golang.org/x/tools v0.41.0 h1:a9b8iMweWG+S0OBnlU36rzLp20z1Rp10w+IY2czHTQc=
246+golang.org/x/tools v0.41.0/go.mod h1:XSY6eDqxVNiYgezAVqqCeihT4j1U2CCsqvH3WhQpnlg=
247247golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
248248gonum.org/v1/gonum v0.16.0 h1:5+ul4Swaf3ESvrOnidPp4GZbzf0mxVQpDCYUQE7OJfk=
249249gonum.org/v1/gonum v0.16.0/go.mod h1:fef3am4MQ93R2HHpKnLk4/Tbh/s0+wqD5nfa6Pnwy4E=
250−google.golang.org/api v0.258.0 h1:IKo1j5FBlN74fe5isA2PVozN3Y5pwNKriEgAXPOkDAc=
251−google.golang.org/api v0.258.0/go.mod h1:qhOMTQEZ6lUps63ZNq9jhODswwjkjYYguA7fA3TBFww=
250+google.golang.org/api v0.260.0 h1:XbNi5E6bOVEj/uLXQRlt6TKuEzMD7zvW/6tNwltE4P4=
251+google.golang.org/api v0.260.0/go.mod h1:Shj1j0Phr/9sloYrKomICzdYgsSDImpTxME8rGLaZ/o=
252252google.golang.org/genproto v0.0.0-20251202230838-ff82c1b0f217 h1:GvESR9BIyHUahIb0NcTum6itIWtdoglGX+rnGxm2934=
253253google.golang.org/genproto v0.0.0-20251202230838-ff82c1b0f217/go.mod h1:yJ2HH4EHEDTd3JiLmhds6NkJ17ITVYOdV3m3VKOnws0=
254254google.golang.org/genproto/googleapis/api v0.0.0-20251202230838-ff82c1b0f217 h1:fCvbg86sFXwdrl5LgVcTEvNC+2txB5mgROGmRL5mrls=
255255google.golang.org/genproto/googleapis/api v0.0.0-20251202230838-ff82c1b0f217/go.mod h1:+rXWjjaukWZun3mLfjmVnQi18E1AsFbDN9QdJ5YXLto=
256−google.golang.org/genproto/googleapis/rpc v0.0.0-20251222181119-0a764e51fe1b h1:Mv8VFug0MP9e5vUxfBcE3vUkV6CImK3cMNMIDFjmzxU=
257−google.golang.org/genproto/googleapis/rpc v0.0.0-20251222181119-0a764e51fe1b/go.mod h1:j9x/tPzZkyxcgEFkiKEEGxfvyumM01BEtsW8xzOahRQ=
256+google.golang.org/genproto/googleapis/rpc v0.0.0-20260114163908-3f89685c29c3 h1:C4WAdL+FbjnGlpp2S+HMVhBeCq2Lcib4xZqfPNF6OoQ=
257+google.golang.org/genproto/googleapis/rpc v0.0.0-20260114163908-3f89685c29c3/go.mod h1:j9x/tPzZkyxcgEFkiKEEGxfvyumM01BEtsW8xzOahRQ=
258258google.golang.org/grpc v1.78.0 h1:K1XZG/yGDJnzMdd/uZHAkVqJE+xIDOcmdSFZkBUicNc=
259259google.golang.org/grpc v1.78.0/go.mod h1:I47qjTo4OKbMkjA/aOOwxDIiPSBofUtQUI5EfpWvW7U=
260260google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE=
oauthproxy.go+4−3
@@ -397,9 +397,10 @@ func buildSessionChain(opts *options.Options, provider providers.Provider, sessi
397397 chain := alice.New()
398398
399399 if opts.SkipJwtBearerTokens {
400− sessionLoaders := []middlewareapi.TokenToSessionFunc{
401− provider.CreateSessionFromToken,
402− }
400+ verifiers := opts.GetJWTBearerVerifiers()
401+
402+ sessionLoaders := make([]middlewareapi.TokenToSessionFunc, 0, len(verifiers)+1)
403+ sessionLoaders = append(sessionLoaders, provider.CreateSessionFromToken)
403404
404405 for _, verifier := range opts.GetJWTBearerVerifiers() {
405406 sessionLoaders = append(sessionLoaders,
pkg/validation/allowlist.go+1
@@ -11,6 +11,7 @@ import (
1111)
1212
1313func validateAllowlists(o *options.Options) []string {
14+ //nolint:prealloc
1415 msgs := []string{}
1516
1617 msgs = append(msgs, validateAuthRoutes(o)...)
pkg/validation/header.go+1
@@ -7,6 +7,7 @@ import (
77)
88
99func validateHeaders(headers []options.Header) []string {
10+ //nolint:prealloc
1011 msgs := []string{}
1112 names := make(map[string]struct{})
1213
pkg/validation/upstreams.go+1
@@ -9,6 +9,7 @@ import (
99)
1010
1111func validateUpstreams(upstreams options.UpstreamConfig) []string {
12+ //nolint:prealloc
1213 msgs := []string{}
1314 ids := make(map[string]struct{})
1415 paths := make(map[string]struct{})
providers/azure.go+1
@@ -399,6 +399,7 @@ func (p *AzureProvider) getGroupsFromProfileAPI(ctx context.Context, s *sessions
399399}
400400
401401func getGroupsFromJSON(json *simplejson.Json, graphGroupField string) []string {
402+ //nolint:prealloc
402403 groups := []string{}
403404
404405 for i := range json.Get("value").MustArray() {
providers/keycloak_oidc.go+1
@@ -89,6 +89,7 @@ func (p *KeycloakOIDCProvider) extractRoles(s *sessions.SessionState) error {
8989 return err
9090 }
9191
92+ //nolint:prealloc
9293 var roles []string
9394 roles = append(roles, claims.RealmAccess.Roles...)
9495 roles = append(roles, getClientRoles(claims)...)