oauth2-proxy/pkg/middleware
wucm667 8be41ba7d2 fix(middleware): redirect to login on fatal refresh error instead of showing error page
When Keycloak (or other OIDC providers) returns "invalid_grant" during
token refresh (e.g., "Session not active" when the Keycloak session
expires), the session is correctly cleared from the store. However, the
user sees an error page and must manually reload to trigger re-authentication.

Fix: introduce errSessionCleared sentinel error so that getValidatedSession
returns nil session and nil error when a fatal refresh error occurs. This
allows the normal auth flow to redirect the user to the login page seamlessly
instead of showing an error page.

Fixes oauth2-proxy/oauth2-proxy#3402

Signed-off-by: wucm667 <stevenwucongmin@gmail.com>
2026-05-01 10:38:12 +08:00
..
testdata/metrics Add Prometheus metrics endpoint 2021-02-15 13:45:26 +00:00
basic_session.go fix(1356): test if session variable is null (#1357) 2021-09-09 12:12:29 +01:00
basic_session_test.go chore(deps): Updated to ginkgo v2 (#2459) 2024-07-18 22:41:02 +02:00
headers.go feat: migrate google used organization id and header normalization booleans to pointers 2025-11-16 22:39:01 +01:00
headers_test.go feat: migrate google used organization id and header normalization booleans to pointers 2025-11-16 22:39:01 +01:00
healthcheck.go Merge commit from fork 2026-04-13 18:20:36 +02:00
healthcheck_test.go Merge commit from fork 2026-04-13 18:20:36 +02:00
jwt_session.go Add --bearer-token-login-fallback option (#2924) 2025-04-21 13:40:39 +01:00
jwt_session_test.go adapting unit tests and fixing minor issues introduced with the derefing 2025-11-16 22:38:57 +01:00
metrics.go Add Prometheus metrics endpoint 2021-02-15 13:45:26 +00:00
metrics_test.go chore(deps): Updated to ginkgo v2 (#2459) 2024-07-18 22:41:02 +02:00
middleware_suite_test.go chore(deps): Updated to ginkgo v2 (#2459) 2024-07-18 22:41:02 +02:00
readynesscheck.go feat: readiness check (#1839) 2022-12-23 09:08:12 +00:00
readynesscheck_test.go chore(deps): Updated to ginkgo v2 (#2459) 2024-07-18 22:41:02 +02:00
redirect_to_https.go Make HTTPS Redirect middleware Reverse Proxy aware 2021-01-16 13:55:48 -08:00
redirect_to_https_test.go Merge commit from fork 2026-04-13 18:22:56 +02:00
request_logger.go Move Logging to Middleware Package (#1070) 2021-03-06 17:27:16 +00:00
request_logger_test.go chore(deps): Updated to ginkgo v2 (#2459) 2024-07-18 22:41:02 +02:00
scope.go Merge commit from fork 2026-04-13 18:22:56 +02:00
scope_test.go Merge commit from fork 2026-04-13 18:22:56 +02:00
session_utils.go Add Basic Auth session loader middleware 2020-07-19 17:21:42 +01:00
session_utils_test.go chore(deps): Updated to ginkgo v2 (#2459) 2024-07-18 22:41:02 +02:00
stored_session.go fix(middleware): redirect to login on fatal refresh error instead of showing error page 2026-05-01 10:38:12 +08:00
stored_session_test.go fix: invalidate session on fatal OAuth2 refresh errors (#3333) 2026-04-12 14:48:55 +02:00