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/main.go | |
| 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/main.go')
| -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,  | 
