Reto Kupferschmid
64e736f668
fix: websocket path rewrite ( #2300 )
2024-11-04 23:12:35 +01:00
Ian Roberts
cb53401c3a
Don't use http.StripPrefix when a file: upstream has rewriteTarget
...
A regular (non-regex) file: upstream needs to strip the prefix so that it is equivalent to "mounting" the specified directory under the configured path in the URL space, but with regex rewriting the target path is determined by the rewriteTarget.
Fixes oauth2-proxy/oauth2-proxy#2242
2024-09-02 11:27:28 +01:00
Ian Roberts
b618ed7150
Test for a file:/// upstream combined with regex path rewrite
2024-09-02 11:27:28 +01:00
Koen van Zuijlen
343bd61ebb
chore(deps): Updated to ginkgo v2 ( #2459 )
...
* chore(deps): Updated to ginkgo v2
* fix basic auth test suite cleanup
* fix redis store tests
* add changelog entry
---------
Co-authored-by: Jan Larwig <jan@larwig.com >
2024-07-18 22:41:02 +02:00
kvanzuijlen
f8efdbae5f
chore: Updated go-jwt to v5
2024-03-04 01:42:00 +01:00
Damien Degois
70571d96e1
Add support for unix socket as upstream ( #1866 )
...
* Add support for unix socket as upstream
* Add CHANGELOG.md entry
* Add Unix socket documentation
* Don't export unixRoundTripper, switch from string prefix to Scheme match
* Add basic unix server mock
* Add some tests and comments
2023-10-26 10:57:00 +01:00
Andrew Hamade
7fe6384f38
Fix Linting Errors ( #1835 )
...
* initial commit: add groups to azure
Signed-off-by: andrewphamade@gmail.com <andrewphamade@gmail.com >
* fix deprecations and linting errors
Signed-off-by: Andrew Hamade <andrewphamade@gmail.com >
* remove groups testing from azure provider
Signed-off-by: Andrew Hamade <andrewphamade@gmail.com >
* fix test error
Signed-off-by: Andrew Hamade <andrewphamade@gmail.com >
* verify-generate
Signed-off-by: Andrew Hamade <andrewphamade@gmail.com >
Signed-off-by: andrewphamade@gmail.com <andrewphamade@gmail.com >
Signed-off-by: Andrew Hamade <andrewphamade@gmail.com >
2022-10-21 11:57:51 +01:00
Jack Henschel
7a27cb04df
Implement configurable timeout for upstream connections
...
Signed-off-by: Jack Henschel <jack.henschel@cern.ch >
2022-05-18 11:41:17 +01:00
Matt Lilley
3957183fd5
Use the httputil.NewSingleHostReverseProxy instead of yhat/wsutil for … ( #1348 )
...
* Use the httputil.NewSingleHostReverseProxy instad of yhat/wsutil for websocket proxying. This correctly handles 404 responses with keep-alive by terminating the tunnel rather than keeping it alive
* Tidy up dependencies - yhat/wsutil is no longer required
* Update changelog to include reference to 1348
Co-authored-by: Matt Lilley <matt.lilley@securitease.com >
Co-authored-by: Joel Speed <Joel.speed@hotmail.co.uk >
2021-10-03 15:38:40 +01:00
Fabian Stelzer
88f32aeaa1
rename Upstreams to UpstreamConfig and its Configs member to Upstreams then
2021-09-17 12:37:57 +00:00
Fabian Stelzer
662fa72e8c
Add ProxyRawPath tests
...
Refactor proxy_test to set mux/upstream options for each test
individually and add tests for encoded urls with ProxyRawPath set and
unset.
2021-09-17 12:37:56 +00:00
Fabian Stelzer
d51556515e
Introduce ProxyRawPath flag
...
Setting this flag will configure the upstream proxy to pass encoded urls
as-is.
2021-09-17 12:37:56 +00:00
Fabian Stelzer
12ab4ef529
Make the Upstreams mux configurable
...
This commit changes Upstreams from []Upstream to a struct{}
moving the previous []Upstream into .Configs and adjusts all uses of it.
2021-09-17 12:31:18 +00:00
Joel Speed
075cb9c3a0
Ensure upstreams are sorted by longest first
2021-06-23 12:20:48 +01:00
Joel Speed
8a06779d41
Redirect request if it would match with an appended trailing slash
2021-06-23 12:20:47 +01:00
Joel Speed
6c62b25bf1
Allow request paths to be rewritten before proxying to upstream server
2021-06-23 12:20:46 +01:00
Joel Speed
d2d62bb452
Replace standard serve mux with gorilla mux
2021-06-23 12:20:21 +01:00
Joel Speed
befcdd9d04
Add pagewriter to upstream proxy
2021-05-10 11:14:05 +01:00
Joel Speed
92ae5d9d24
Remove duplication in proxy directors
2021-03-22 13:07:41 +00:00
Joel Speed
025ef3eca4
Fix upstream proxy appending ?
to requests
2021-03-22 13:07:36 +00:00
Nick Meves
c1267bb92d
Request ID Logging ( #1087 )
...
* Add RequestID to the RequestScope
* Expose RequestID to auth & request loggers
* Use the RequestID in templated HTML pages
* Allow customizing the RequestID header
* Document new Request ID support
* Add more cases to scope/requestID tests
* Split Get vs Generate RequestID funtionality
* Add {{.RequestID}} to the request logger tests
* Move RequestID management to RequestScope
* Use HTML escape instead of sanitization for Request ID rendering
2021-03-21 18:20:57 +00:00
Nick Meves
602dac7852
Move Logging to Middleware Package ( #1070 )
...
* Use a specialized ResponseWriter in middleware
* Track User & Upstream in RequestScope
* Wrap responses in our custom ResponseWriter
* Add tests for logging middleware
* Inject upstream metadata into request scope
* Use custom ResponseWriter only in logging middleware
* Assume RequestScope is never nil
2021-03-06 17:27:16 +00:00
Joel Speed
a63ed0225c
Use ErrorPage to render proxy error page
2021-02-12 21:12:27 +00:00
Joel Speed
b6cca79cb9
Ensure errors in tests are logged to the GinkgoWriter
2021-02-10 19:50:04 +00:00
Joel Speed
aed43a54da
Add DefaultUpstreamFlushInterval to replace magic time.Second value
2020-11-19 10:39:21 +00:00
Joel Speed
b6d6f31ac1
Introduce Duration so that marshalling works for duration strings
2020-11-19 10:35:29 +00:00
Mitsuo Heijo
3fa42edb73
Fix import path for v7 ( #800 )
...
* fix import path for v7
find ./ -name "*.go" | xargs sed -i -e 's|"github.com/oauth2-proxy/oauth2-proxy|"github.com/oauth2-proxy/oauth2-proxy/v7|'
* fix module path
* go mod tidy
* fix installation docs
* update CHANGELOG
* Update CHANGELOG.md
Co-authored-by: Joel Speed <Joel.speed@hotmail.co.uk >
Co-authored-by: Joel Speed <Joel.speed@hotmail.co.uk >
2020-09-29 17:44:42 +01:00
Joel Speed
b40517bbe3
Fix conversion of static responses in upstreams
2020-08-31 16:54:01 +01:00
Phil Taprogge
d69fd6af22
Allow Logging to stdout with separate Error Log Channel ( #718 )
...
* Add dedicated error logging writer
* Document new errors to stdout flag
* Update changelog
* Thread-safe the log buffer
* Address feedback
* Remove duplication by adding log level
* Clean up error formatting
* Apply suggestions from code review
Co-authored-by: Joel Speed <Joel.speed@hotmail.co.uk >
2020-08-10 11:44:08 +01:00
Nick Meves
ad52587ae6
Document GoSec nosec skip comments
2020-08-09 07:55:40 -07:00
Nick Meves
65c228394f
Address gosec findings
...
Mostly handling unhandled errors appropriately.
If logging to STDERR fails, we panic. Added #nosec
comments to findings we are OK with.
2020-08-09 07:55:39 -07:00
Joel Speed
d43b372ca9
Use bool pointers for upstream options that default to true
2020-07-19 14:01:36 +01:00
Joel Speed
5b95ed3033
Add tests for upstream package
2020-07-05 10:21:05 +01:00
Joel Speed
fa8e1ee033
Allow file server to handle windows filesystems
2020-07-05 10:21:05 +01:00
Joel Speed
e1c3e938cc
Add upstream package with Proxy server implementation
2020-07-05 10:21:05 +01:00