Make docker Oauth endpoint configurable

This commit is contained in:
Marcos Lilljedahl
2019-03-31 14:14:05 -03:00
parent 91912732aa
commit 40197c4cdf
2 changed files with 8 additions and 3 deletions

View File

@@ -240,14 +240,18 @@ func initOauthProviders(p *types.Playground) {
config.Providers[p.Id]["facebook"] = conf
}
if p.DockerClientID != "" && p.DockerClientSecret != "" {
oauth2.RegisterBrokenAuthHeaderProvider(".id.docker.com")
endpoint := "id.docker.com"
if len(p.DockerHost) > 0 {
endpoint = p.DockerHost
}
oauth2.RegisterBrokenAuthHeaderProvider(fmt.Sprintf(".%s", endpoint))
conf := &oauth2.Config{
ClientID: p.DockerClientID,
ClientSecret: p.DockerClientSecret,
Scopes: []string{"openid"},
Endpoint: oauth2.Endpoint{
AuthURL: "https://id.docker.com/id/oauth/authorize/",
TokenURL: "https://id.docker.com/id/oauth/token",
AuthURL: fmt.Sprintf("https://%s/id/oauth/authorize/", endpoint),
TokenURL: fmt.Sprintf("https://%s/id/oauth/token", endpoint),
},
}