parent
							
								
									168cff9d4b
								
							
						
					
					
						commit
						57f82ed71e
					
				
							
								
								
									
										2
									
								
								main.go
								
								
								
								
							
							
						
						
									
										2
									
								
								main.go
								
								
								
								
							| 
						 | 
					@ -51,6 +51,7 @@ func main() {
 | 
				
			||||||
	flagSet.String("htpasswd-file", "", "additionally authenticate against a htpasswd file. Entries must be created with \"htpasswd -s\" for SHA encryption")
 | 
						flagSet.String("htpasswd-file", "", "additionally authenticate against a htpasswd file. Entries must be created with \"htpasswd -s\" for SHA encryption")
 | 
				
			||||||
	flagSet.Bool("display-htpasswd-form", true, "display username / password login form if an htpasswd file is provided")
 | 
						flagSet.Bool("display-htpasswd-form", true, "display username / password login form if an htpasswd file is provided")
 | 
				
			||||||
	flagSet.String("custom-templates-dir", "", "path to custom html templates")
 | 
						flagSet.String("custom-templates-dir", "", "path to custom html templates")
 | 
				
			||||||
 | 
						flagSet.String("footer", "", "custom footer string. Use \"-\" to disable default footer.")
 | 
				
			||||||
	flagSet.String("proxy-prefix", "/oauth2", "the url root path that this proxy should be nested under (e.g. /<oauth2>/sign_in)")
 | 
						flagSet.String("proxy-prefix", "/oauth2", "the url root path that this proxy should be nested under (e.g. /<oauth2>/sign_in)")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	flagSet.String("cookie-name", "_oauth2_proxy", "the name of the cookie that the oauth_proxy creates")
 | 
						flagSet.String("cookie-name", "_oauth2_proxy", "the name of the cookie that the oauth_proxy creates")
 | 
				
			||||||
| 
						 | 
					@ -98,7 +99,6 @@ func main() {
 | 
				
			||||||
		log.Printf("%s", err)
 | 
							log.Printf("%s", err)
 | 
				
			||||||
		os.Exit(1)
 | 
							os.Exit(1)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					 | 
				
			||||||
	validator := NewValidator(opts.EmailDomains, opts.AuthenticatedEmailsFile)
 | 
						validator := NewValidator(opts.EmailDomains, opts.AuthenticatedEmailsFile)
 | 
				
			||||||
	oauthproxy := NewOAuthProxy(opts, validator)
 | 
						oauthproxy := NewOAuthProxy(opts, validator)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -66,6 +66,7 @@ type OAuthProxy struct {
 | 
				
			||||||
	skipAuthRegex       []string
 | 
						skipAuthRegex       []string
 | 
				
			||||||
	compiledRegex       []*regexp.Regexp
 | 
						compiledRegex       []*regexp.Regexp
 | 
				
			||||||
	templates           *template.Template
 | 
						templates           *template.Template
 | 
				
			||||||
 | 
						Footer              string
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type UpstreamProxy struct {
 | 
					type UpstreamProxy struct {
 | 
				
			||||||
| 
						 | 
					@ -199,6 +200,7 @@ func NewOAuthProxy(opts *Options, validator func(string) bool) *OAuthProxy {
 | 
				
			||||||
		SkipProviderButton: opts.SkipProviderButton,
 | 
							SkipProviderButton: opts.SkipProviderButton,
 | 
				
			||||||
		CookieCipher:       cipher,
 | 
							CookieCipher:       cipher,
 | 
				
			||||||
		templates:          loadTemplates(opts.CustomTemplatesDir),
 | 
							templates:          loadTemplates(opts.CustomTemplatesDir),
 | 
				
			||||||
 | 
							Footer:             opts.Footer,
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -345,6 +347,7 @@ func (p *OAuthProxy) SignInPage(rw http.ResponseWriter, req *http.Request, code
 | 
				
			||||||
		Redirect      string
 | 
							Redirect      string
 | 
				
			||||||
		Version       string
 | 
							Version       string
 | 
				
			||||||
		ProxyPrefix   string
 | 
							ProxyPrefix   string
 | 
				
			||||||
 | 
							Footer        template.HTML
 | 
				
			||||||
	}{
 | 
						}{
 | 
				
			||||||
		ProviderName:  p.provider.Data().ProviderName,
 | 
							ProviderName:  p.provider.Data().ProviderName,
 | 
				
			||||||
		SignInMessage: p.SignInMessage,
 | 
							SignInMessage: p.SignInMessage,
 | 
				
			||||||
| 
						 | 
					@ -352,6 +355,7 @@ func (p *OAuthProxy) SignInPage(rw http.ResponseWriter, req *http.Request, code
 | 
				
			||||||
		Redirect:      redirect_url,
 | 
							Redirect:      redirect_url,
 | 
				
			||||||
		Version:       VERSION,
 | 
							Version:       VERSION,
 | 
				
			||||||
		ProxyPrefix:   p.ProxyPrefix,
 | 
							ProxyPrefix:   p.ProxyPrefix,
 | 
				
			||||||
 | 
							Footer:        template.HTML(p.Footer),
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	p.templates.ExecuteTemplate(rw, "sign_in.html", t)
 | 
						p.templates.ExecuteTemplate(rw, "sign_in.html", t)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,6 +35,7 @@ type Options struct {
 | 
				
			||||||
	HtpasswdFile             string   `flag:"htpasswd-file" cfg:"htpasswd_file"`
 | 
						HtpasswdFile             string   `flag:"htpasswd-file" cfg:"htpasswd_file"`
 | 
				
			||||||
	DisplayHtpasswdForm      bool     `flag:"display-htpasswd-form" cfg:"display_htpasswd_form"`
 | 
						DisplayHtpasswdForm      bool     `flag:"display-htpasswd-form" cfg:"display_htpasswd_form"`
 | 
				
			||||||
	CustomTemplatesDir       string   `flag:"custom-templates-dir" cfg:"custom_templates_dir"`
 | 
						CustomTemplatesDir       string   `flag:"custom-templates-dir" cfg:"custom_templates_dir"`
 | 
				
			||||||
 | 
						Footer                   string   `flag:"footer" cfg:"footer"`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	CookieName     string        `flag:"cookie-name" cfg:"cookie_name" env:"OAUTH2_PROXY_COOKIE_NAME"`
 | 
						CookieName     string        `flag:"cookie-name" cfg:"cookie_name" env:"OAUTH2_PROXY_COOKIE_NAME"`
 | 
				
			||||||
	CookieSecret   string        `flag:"cookie-secret" cfg:"cookie_secret" env:"OAUTH2_PROXY_COOKIE_SECRET"`
 | 
						CookieSecret   string        `flag:"cookie-secret" cfg:"cookie_secret" env:"OAUTH2_PROXY_COOKIE_SECRET"`
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -130,7 +130,12 @@ func getTemplates() *template.Template {
 | 
				
			||||||
	</div>
 | 
						</div>
 | 
				
			||||||
	{{ end }}
 | 
						{{ end }}
 | 
				
			||||||
	<footer>
 | 
						<footer>
 | 
				
			||||||
 | 
						{{ if eq .Footer "-" }}
 | 
				
			||||||
 | 
						{{ else if eq .Footer ""}}
 | 
				
			||||||
	Secured with <a href="https://github.com/bitly/oauth2_proxy#oauth2_proxy">OAuth2 Proxy</a> version {{.Version}}
 | 
						Secured with <a href="https://github.com/bitly/oauth2_proxy#oauth2_proxy">OAuth2 Proxy</a> version {{.Version}}
 | 
				
			||||||
 | 
						{{ else }}
 | 
				
			||||||
 | 
						{{.Footer}}
 | 
				
			||||||
 | 
						{{ end }}
 | 
				
			||||||
	</footer>
 | 
						</footer>
 | 
				
			||||||
</body>
 | 
					</body>
 | 
				
			||||||
</html>
 | 
					</html>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue