Skip to content

Releases: oauth2-proxy/oauth2-proxy

v7.6.0

13 Feb 11:23
7af1e42
Compare
Choose a tag to compare

Release Highlights

Important Notes

Breaking Changes

Changes since v7.5.1

V7.5.1

22 Sep 13:35
ef95957
Compare
Choose a tag to compare

Release Highlights

  • 🐛 Several bugs have been squashed
  • 🕵️‍♀️ Vulnerabilities have been addressed
  • 📖Improved docs

Important Notes

  • This release includes fixes for a number of CVEs, we recommend to upgrade as soon as possible.
  • The environment variable OAUTH2_PROXY_GOOGLE_GROUP has been deprecated in favor of OAUTH2_PROXY_GOOGLE_GROUPS. Next major release
    will remove this option. This change makes sure that the configuration options follow the documentation.

Breaking Changes

N/A

Changes since v7.5.0

V7.5.0

04 Sep 10:47
01386bf
Compare
Choose a tag to compare

Release Highlights

  • 🐛 Several bugs have been squashed
  • 🕵️‍♀️ Vulnerabilities have been addressed
  • ⭐️ Added a readiness endpoint to check if the application is ready to receive traffic
  • ⭐️ Google Application Default Credentials support (i.e. for running on Google Cloud Platform)
  • ⭐ Session cookie support

Important Notes

  • This release includes fixes for a number of CVEs, we recommend to upgrade as soon as possible.

Breaking Changes

The following PR introduces a change to how auth routes are evaluated using the flags skip-auth-route/skip-auth-regex. The new behaviour uses the regex you specify to evaluate the full path including query parameters. For more details please read the detailed description #2271

Changes since v7.4.0

V7.4.0

29 Oct 16:45
aafa966
Compare
Choose a tag to compare

Release Highlights

  • New Azure groups support for Azure OAuth2 v2.0
  • Option to configure API routes - paths that will not redirect to login when unauthenticated
  • CSRF and session cookies now have different timeouts

Important Notes

  • #1708 Enable different CSRF cookies per request (@miguelborges99)
    • Since the CSRF cookie name is now longer it could potentially break long cookie names (around 1000 characters).
    • Having a unique CSRF cookie per request can lead to quite a number of cookies, in case an application performs a high number of parallel authentication requests. Each call will redirect to /oauth2/start, if the user is not authenticated, and a new cookie will be set. The successfully authenticated requests will have its CSRF cookies immediatly expired, however the failed ones will mantain its CSRF cookies until they expire (by default in 15 minutes).
    • The user may redefine the CSRF cookie expiration time using flag "--cookie-csrf-expire" (e.g. --cookie-csrf-expire=5m). By default, it is 15 minutes, but you can fine tune to your environment.
  • #1574 Add Azure groups support and Azure OAuth v2.0 (@adriananeci)
  • This release includes fixes for a number of CVEs, we recomend to upgrade as soon as possible.

Breaking Changes

N/A

Changes since v7.3.0

  • #1862 Update dependencies (@JoelSpeed)
  • #1828 call providerData.setProviderDefaults for oidc provider to achieve consistent behaviour (@Centzilius)
    • UserClaim will be set to sub instead of beeing empty from now on.
  • #1691 Fix Redis IdleTimeout when Redis timeout option is set to non-zero (@Dimss)
  • #1669 Fix method deprecated error in lint (@t-katsumura)
  • #1701 Watch the htpasswd file for changes and update the htpasswdMap (@aiciobanu)
  • #1709 Show an alert message when basic auth credentials are invalid (@aiciobanu)
  • #1723 Added ability to specify allowed TLS cipher suites. (@crbednarz)
  • #1720 Extract roles from authToken, to allow using allowed roles with Keycloak. (@MrDeerly )
  • #1774 Fix vulnerabilities CVE-2022-27191, CVE-2021-44716 and CVE-2022-29526. (@felipeconti)
  • #1667 Rename configuration file flag for PKCE (@ChrisEke)
    to remain consistent with CLI flags. You should specify code_challenge_method in your configuration instead of
    force_code_challenge_method.
  • #1708 Enable different CSRF cookies per request (@miguelborges99)
    • Add flag "--cookie-csrf-per-request" which activates an algorithm to name CSRF cookies differently per request.
      This feature allows parallel callbacks and by default it is disabled.
    • Add flag "--cookie-csrf-expire" to define a different expiration time for the CSRF cookie. By default, it is 15 minutes.
  • #1762 Support negating for skip auth routes (@ianldge)
  • #1788 Update base docker image to alpine 3.16 (@tooptoop4)
  • #1760 Option to configure API routes (@segfault16)
  • #1825 Fix vulnerabilities CVE-2022-32149 and CVE-2022-27664. (@crbednarz)
  • #1750 Fix Nextcloud provider (@n1tehawk)
  • #1574 Add Azure groups support and Azure OAuth v2.0 (@adriananeci)
  • #1851 Bump golang to 1.19 and min allowed version to 1.18 (@adriananeci)
  • #1815 Keycloak: save user and preferredUsername in session to populate headers for the backend (@babs)
  • #1847 Update go-redis/redis to v9 (@arhamGH)

V7.3.0

29 May 14:56
db74661
Compare
Choose a tag to compare

Release Highlights

  • #1361 PKCE Code Challenge Support - RFC-7636 (@braunsonm)
    • At this time the --code-challenge-method flag can be used to enable it with the method of your choice.
  • Parital support for OAuth2 Authorization Server Metadata for detecting code challenge methods (@braunsonm)
    • A warning will be displayed when your provider advertises support for PKCE but you have not enabled it.
  • Support for the ARMv8 and ppc64le architectures
  • Configurable upstream request timeouts

Important Notes

  • oauth2-proxy separate image tags for each architecture is deprecated. Instead, images are cross compiled and pushed as the same tag for every platform.
    If you are using an architecture specific tag (ex: v7.2.1-arm64) you should move to the generic tag instead (ex: v7.2.1 )
  • #1478 Changes the UID and GID of the runtime user to 65532.
    Which also is known as nonroot user in distroless images.
  • This release includes fixes for a number of CVEs, we recomend to upgrade as soon as possible.

Breaking Changes

N/A

Changes since v7.2.1

  • #1662 Discover signature algorithms from OIDC provider (@JoelSpeed)
  • #1651 Updated go-lang's text, crypto and prometheus dependencies to fix reported security vulnerabilities. (@rkkris75)
  • #1595 Add optional allowed_emails query parameter to the auth_request. (@zv0n)
  • #1478 Parameterise the runtime image (@omBratteng)
  • #1583 Add groups to session too when creating session from bearer token (@adriananeci)
  • #1418 Support for passing arbitrary query parameters through from /oauth2/start to the identity provider's login URL. Configuration settings control which parameters are passed by default and precisely which values can be overridden per-request (@ianroberts)
  • #1559 Introduce ProviderVerifier to clean up OIDC discovery code (@JoelSpeed)
  • #1561 Add ppc64le support (@mgiessing)
  • #1563 Ensure claim extractor does not attempt profile call when URL is empty (@JoelSpeed)
  • #1560 Fix provider data initialisation (@JoelSpeed)
  • #1555 Refactor provider configuration into providers package (@JoelSpeed)
  • #1394 Add generic claim extractor to get claims from ID Tokens (@JoelSpeed)
  • #1468 Implement session locking with session state lock (@JoelSpeed, @Bibob7)
  • #1489 Fix Docker Buildx push to include build version (@JoelSpeed)
  • #1477 Remove provider documentation for Microsoft Azure AD (@omBratteng)
  • #1204 Added configuration for audience claim (--oidc-extra-audience) and ability to specify extra audiences (--oidc-extra-audience) allowed passing audience verification. This enables support for AWS Cognito and other issuers that have custom audience claims. Also, this adds the ability to allow multiple audiences. (@kschu91)
  • #1509 Update LoginGovProvider ValidateSession to pass access_token in Header (@pksheldon4)
  • #1474 Support configuration of minimal acceptable TLS version (@polarctos)
  • #1545 Fix issue with query string allowed group panic on skip methods (@andytson)
  • #1286 Add the allowed_email_domains and the allowed_groups on the auth_request + support standard wildcard char for validation with sub-domain and email-domain. (@w3st3ry @armandpicard)
  • #1361 PKCE Code Challenge Support - RFC-7636 (@braunsonm)
  • #1594 Release ARMv8 docker images (@braunsonm)
  • #1649 Return a 400 instead of a 500 when a request contains an invalid redirect target (@Niksko)
  • #1638 Implement configurable upstream timeout (@jacksgt)
  • #1650 Fixed 500 when checking if user has repo (@adamsong)
  • #1635 Added description and unit tests for ipv6 address (@t-katsumura)
  • #1502 Unbreak oauth2-proxy for keycloak provider after 2c668a (@ckwalsh)

V7.2.1

22 Dec 18:17
5761849
Compare
Choose a tag to compare

Release Highlights

This release contains a number of bug and security fixes, but has no feature additions.

Important Notes

N/A

Breaking Changes

N/A

Changes since v7.2.0

V7.2.0

23 Oct 08:53
6c379f7
Compare
Choose a tag to compare

Release Highlights

  • LinkedIn provider updated to support the new v2 API
  • Introduce --force-json-errors to allow OAuth2 Proxy to protect JSON APIs and disable authentication redirection
  • Add URL rewrite capabilities to the upstream proxy
  • New ADFS provider integration
  • New Keycloak OIDC provider integration
  • Introduced Multiarch Docker images on the standard image tags

Important Notes

  • #1086 The extra validation to protect invalid session
    deserialization from v6.0.0 (only) has been removed to improve performance. If you are on v6.0.0, either upgrade
    to a version before this first and allow legacy sessions to expire gracefully or change your cookie-secret
    value and force all sessions to reauthenticate.
  • #1210 A new keycloak-oidc provider has been added with support for role based authentication. The existing keycloak auth provider will eventually be deprecated and removed. Please switch to the new provider keycloak-oidc.

Breaking Changes

  • #1239 GitLab groups sent in the X-Forwarded-Groups header
    to the upstream server will no longer be prefixed with group:

Changes since v7.1.3

V7.1.3

28 Apr 16:54
88122f6
Compare
Choose a tag to compare

Release Highlights

  • Fixed typos in the metrics server TLS config names

Important Notes

  • #967 --insecure-oidc-skip-nonce is currently true by default in case
    any existing OIDC Identity Providers don't support it. The default will switch to false in a future version.

Breaking Changes

Changes since v7.1.2

V7.1.2

02 Apr 11:02
9d20b4e
Compare
Choose a tag to compare

Release Highlights

  • Metrics bind address initialisation was broken in config files

Important Notes

N/A

Breaking Changes

N/A

Changes since v7.1.1

V7.1.1

29 Mar 16:51
4daa66e
Compare
Choose a tag to compare

Release Highlights

  • The metrics server could not be started in v7.1.0, this is now fixed.

Important Notes

N/A

Breaking Changes

N/A

Changes since v7.1.0

  • #1133 Metrics server should be constructed with secure bind address for TLS (@JoelSpeed)