Releases · buzzfeed/sso

v3.0.0

Changelog

⚠️ Similar to the v2.0.0 release, this release includes large changes to the configuration variables used by sso_proxy, so care must be taken while upgrading to this version. ⚠️

To aid the introduction of these new variables, please reference the description in #279, and particularly, the table included at the bottom of the referenced pull request.

Features & Enhancements 🚀

Bug Fixes 🐛

Documentation 📖

Release Contributors: @Jusshersmith, @benjsto, @jphines, @itwasntandy, @mccutchen, @katzdm, and @kjetijor

v2.1.0

v2.0.0

Changelog

Note: this release contains multiple breaking or potentially breaking changes. Please read the release notes carefully if you are upgrading from a previous version.

Providers

CI

Auth

Proxy

Bugs and Fixes

Documentation

Added Dependencies

There have been a number of dependencies added and/or updated. Please take the time to look through the dependencies in use by scanning through https://github.com/buzzfeed/sso/blob/master/go.mod.

Further details

To help with the introduction of configuration variable changes in sso: support multiple identity providers, below is a list of old_var -> new_var pairs for sso_auth only. (these variables changes do not yet apply to sso_proxy)

* in PROVIDER_*_TYPE and others represents a unique identifier grouping together a set of provider configs.

### SESSION
(NEW)                -> SESSION_COOKIE_NAME
COOKIE_SECRET        -> SESSION_COOKIE_SECRET
COOKIE_EXPIRE        -> SESSION_COOKIE_EXPIRE
COOKIE_DOMAIN        -> SESSION_COOKIE_DOMAIN
COOKIE_REFRESH       -> SESSION_COOKIE_REFRESH
COOKIE_SECURE        -> SESSION_COOKIE_SECURE
COOKIE_HTTP_ONLY     -> SESSION_COOKIE_HTTPONLY
SESSION_LIFETIME_TTL -> SESSION_LIFETIME
AUTH_CODE_SECRET     -> SESSION_KEY


### CLIENT
PROXY_CLIENT_ID     -> CLIENT_PROXY_ID
PROXY_CLIENT_SECRET -> CLIENT_PROXY_SECRET


### PROVIDER CONFIG FOR GOOGLE
(NEW)         -> PROVIDER_*_TYPE
(NEW)         -> PROVIDER_*_SLUG
CLIENT_ID     -> PROVIDER_*_CLIENT_ID
CLIENT_SECRET -> PROVIDER_*_CLIENT_SECRET
SCOPE         -> PROVIDER_*_SCOPE

### GOOGLE SPECIFIC 
GOOGLE_SERVICE_ACCOUNT_JSON -> PROVIDER_*_GOOGLE_CREDENTIALS
GOOGLE_ADMIN_EMAIL          -> PROVIDER_*_GOOGLE_IMPERSONATE

### OKTA SPECIFIC
OKTA_ORG_URL       -> PROVIDER_*_OKTA_URL
PROVIDER_SERVER_ID -> PROVIDER_*_OKTA_SERVER

### GROUP REFRESH
GROUPS_CACHE_REFRESH_TTL  -> PROVIDER_*_GROUPCACHE_INTERVAL_REFRESH
GROUPS_CACHE_PROVIDER_TTL -> PROVIDER_*_GROUPCACHE_INTERVAL_PROVIDER


# SERVER CONFIG
(NEW)             -> SERVER_SCHEME
HOST              -> SERVER_HOST
PORT              -> SERVER_PORT
REQUEST_TIMEOUT   -> SERVER_TIMEOUT_REQUEST
TCP_WRITE_TIMEOUT -> SERVER_TIMEOUT_WRITE
TCP_READ_TIMEOUT  -> SERVER_TIMEOUT_READ


# AUTHORIZE CONFIG
PROXY_ROOT_DOMAIN   -> AUTHORIZE_PROXY_DOMAINS
SSO_EMAIL_DOMAIN    -> AUTHORIZE_EMAIL_DOMAINS
SSO_EMAIL_ADDRESSES -> AUTHORIZE_EMAIL_ADDRESSES


# METRICS CONFIG 
STATSD_PORT -> METRICS_STATSD_PORT
STATSD_HOST -> METRICS_STATSD_HOST


# LOGGING CONFIG
REQUSEST_LOGGING -> LOGGING_ENABLE
(NEW)            -> LOGGING_LEVEL

v1.2.0

Changelog

  • Add provider for individual e-mail address authentication (#113)
  • Update to documentation to reflect unsupported nested groups (#135)
  • Change all session or csrf store logic to use internal CookieStore instead. (#137)
  • Prevent empty cookie header being added to request (#143)
  • Remove unused SecretBytes function (#145)
  • Install curl in the base image, allowing SSO to work with Istio liveness commands (#147)
  • Allow specification of default allowed groups via environment config for upstreams (#148)
  • Fix bug preventing effective use of nested Google groups (#149)
  • Move to Go 1.11 and utilise Go Mod with vendored dependencies, instead of GPM (#154)
  • Add attribution of oauth2_proxy to readme (#156)
  • Add implementation of reset deadline for http transports to aid with dynamic routing environments (#159)
  • Set limit for the WriteTimeout of http.Server to prevent 200 OK being incorrectly sent on long, timed out requests (#163)
  • Remove requirement to pull in dependency source code changes with each build (#168)

v1.1.0

Please take the SSO Community Survey to let us know how we're doing, and to help us plan our roadmap!

  • Remove support for legacy alternative cookie cipher (#54)
  • Ensure that sso_auth responds to pings (#65)
  • Static files are embedded directly into binaries (#63)
  • Allow per-upstream configuration of TLS verification (#49)
  • Fixed data race for encryption cipher (#77)
  • Refactoring of some provider logic, to facilitate additional providers (#76)
  • PROXY_ROOT_DOMAIN is now a required option for sso_auth (#92)
  • Added optional PROVIDER_URL_INTERNAL for split dns deployments (#88, #123)
  • Removed default provider and associated unused functions (#87)
  • Access token is now forwarded to upstreams via X-Forwarded-AccessToken header, when proxy option PASS_ACCESS_TOKEN is set (#109)
  • Added support for digital signing of upstream requests, via Sso-Signature header (#106)
  • Added preserve_host option to upstream configs (#55)
  • Various other minor fixes, cleanups, etc.

v1.0.0

v1.0.0 Release Notes

Initial open source release