git.iko.soy/typeable/oauth2-proxy
on master help sign in
Logs provider name on startup

If invalid provider is specified, stop and error out fixes #895

commit45ae87e4b7acf4d923b8b3483f2c2efc1a1e36fc authorArcadiy Ivanov <arcadiy@ivanov.biz> dateWed 11 Nov 2020, 00:53 (6 years ago) parent6254ed2
3 files changed+12−2
CHANGELOG.md+2 pkg/validation/options.go+7−1 providers/providers.go+3−1
CHANGELOG.md+2
@@ -17,6 +17,7 @@
1717
1818## Breaking Changes
1919
20+- [#911](https://github.com/oauth2-proxy/oauth2-rpoxy/pull/911) Specifying a non-existent provider will cause OAuth2-Proxy to fail on startup instead of defaulting to "google".
2021- [#722](https://github.com/oauth2-proxy/oauth2-proxy/pull/722) When a Redis session store is configured, OAuth2-Proxy will fail to start up unless connection and health checks to Redis pass
2122- [#800](https://github.com/oauth2-proxy/oauth2-proxy/pull/800) Fix import path for v7. The import path has changed to support the go get installation.
2223 - You can now `go get github.com/oauth2-proxy/oauth2-proxy/v7` to get the latest `v7` version of OAuth2 Proxy
@@ -34,6 +35,7 @@
3435
3536## Changes since v6.1.1
3637
38+- [#911](https://github.com/oauth2-proxy/oauth2-rpoxy/pull/911) Validate provider type on startup.
3739- [#906](https://github.com/oauth2-proxy/oauth2-proxy/pull/906) Set up v6.1.x versioned documentation as default documentation (@JoelSpeed)
3840- [#905](https://github.com/oauth2-proxy/oauth2-proxy/pull/905) Remove v5 legacy sessions support (@NickMeves)
3941- [#904](https://github.com/oauth2-proxy/oauth2-proxy/pull/904) Set `skip-auth-strip-headers` to `true` by default (@NickMeves)
pkg/validation/options.go+7−1
@@ -233,7 +233,13 @@ func parseProviderInfo(o *options.Options, msgs []string) []string {
233233 p.ValidateURL, msgs = parseURL(o.ValidateURL, "validate", msgs)
234234 p.ProtectedResource, msgs = parseURL(o.ProtectedResource, "resource", msgs)
235235
236− o.SetProvider(providers.New(o.ProviderType, p))
236+ provider := providers.New(o.ProviderType, p)
237+ if provider == nil {
238+ msgs = append(msgs, fmt.Sprintf("invalid setting: provider '%s' is not available", o.ProviderType))
239+ return msgs
240+ }
241+ o.SetProvider(provider)
242+
237243 switch p := o.GetProvider().(type) {
238244 case *providers.AzureProvider:
239245 p.Configure(o.AzureTenant)
providers/providers.go+3−1
@@ -46,7 +46,9 @@ func New(provider string, p *ProviderData) Provider {
4646 return NewNextcloudProvider(p)
4747 case "digitalocean":
4848 return NewDigitalOceanProvider(p)
49− default:
49+ case "google":
5050 return NewGoogleProvider(p)
51+ default:
52+ return nil
5153 }
5254}