Skip to content

Conversation

@jphines
Copy link
Contributor

@jphines jphines commented May 6, 2019

Problem

SSO up to this point has been structured to share a single provider and oauthproxy instance. This OAuthProxy object did the complex routing, housing various routing types, differentiated different upstreams for authorization, and managed the complexity of switching between various context states.

This, however, adds undue complexity and makes it harder to add more distinct features.

Solution

This is a refactor of the OAuthProxy code base which emphasizes:

  • Adds smaller, a targeted package for routing, hostmust
  • Now implements a 1:1:1:1 relationship to OAuthProxy, UpstreamConfig, Provider, and ReverseProxy as opposed to 1:N:1:N previously.
  • Cleans up reverse proxy logic and splits it out into it's own testable component
  • Cleans up test overhead complexity by simplifying OAuthProxy startup and adding new func option helpers.
  • Adds new SSOProxy parent object to house routing, /ping and instantiation of many OAuthProxy objects

@jphines
Copy link
Contributor Author

jphines commented May 7, 2019

Closing in favor of #190 and #189

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant