diff options
author | Patrick O'Doherty <p@trickod.com> | 2016-05-23 17:56:15 +0100 |
---|---|---|
committer | Patrick O'Doherty <p@trickod.com> | 2016-05-24 12:25:15 +0100 |
commit | 6f86efb594721bc577c56b284f5f2499e563c45c (patch) | |
tree | d5e98834090b6f800893b7ff3708f0ff419f106c /cmd/cashierd | |
parent | 7f6b342de26e16e197f69c7576bb687aac03e527 (diff) |
Don't allow wide-open Google or Github configs
Fail loudly if either the google_opts domain value or github_opts organization
values are not set in the configuration. The lack of these values means that
a) in the Google case any @gmail.com address will be allowed
b) the Github case any Github user will be allowed.
This was previously documented but left as a foot-gun in the code.
Future commits will allow for explicit wildcards to be set.
Diffstat (limited to 'cmd/cashierd')
-rw-r--r-- | cmd/cashierd/main.go | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/cmd/cashierd/main.go b/cmd/cashierd/main.go index e482dde..61461a7 100644 --- a/cmd/cashierd/main.go +++ b/cmd/cashierd/main.go @@ -212,13 +212,17 @@ func main() { var authprovider auth.Provider switch config.Auth.Provider { case "google": - authprovider = google.New(&config.Auth) + authprovider, err = google.New(&config.Auth) case "github": - authprovider = github.New(&config.Auth) + authprovider, err = github.New(&config.Auth) default: log.Fatalln("Unknown provider %s", config.Auth.Provider) } + if err != nil { + log.Fatal(err) + } + ctx := &appContext{ cookiestore: sessions.NewCookieStore([]byte(config.Server.CookieSecret)), authprovider: authprovider, |