gatekeeper: automatically redirect to passbook
This commit is contained in:
parent
3b2d469780
commit
9d68c9550b
|
@ -4,5 +4,7 @@ COPY templates /templates
|
||||||
|
|
||||||
ENV OAUTH2_PROXY_EMAIL_DOMAINS=*
|
ENV OAUTH2_PROXY_EMAIL_DOMAINS=*
|
||||||
ENV OAUTH2_PROXY_PROVIDER=oidc
|
ENV OAUTH2_PROXY_PROVIDER=oidc
|
||||||
ENV OAUTH2_PROXY_CUSTOM_TEMPLATES_DIR=/templates
|
|
||||||
ENV OAUTH2_PROXY_HTTP_ADDRESS=:4180
|
ENV OAUTH2_PROXY_HTTP_ADDRESS=:4180
|
||||||
|
# TODO: If service is access over HTTPS, this needs to be set to true (default), otherwise needs to be false
|
||||||
|
# ENV OAUTH2_PROXY_COOKIE_SECURE=true
|
||||||
|
ENV OAUTH2_PROXY_SKIP_PROVIDER_BUTTON=true
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
{{define "error.html"}}
|
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en" charset="utf-8">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<title>{{.Title}}</title>
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<h2>{{.Title}}</h2>
|
|
||||||
<p>{{.Message}}</p>
|
|
||||||
<hr>
|
|
||||||
<p><a href="{{.ProxyPrefix}}/sign_in">Sign In</a></p>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
||||||
{{end}}
|
|
|
@ -1,119 +0,0 @@
|
||||||
{{define "sign_in.html"}}
|
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en" charset="utf-8">
|
|
||||||
<head>
|
|
||||||
<title>Sign In with passbook</title>
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 1.42857143;
|
|
||||||
color: #333;
|
|
||||||
background: #f0f0f0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.signin {
|
|
||||||
display: block;
|
|
||||||
margin: 20px auto;
|
|
||||||
max-width: 400px;
|
|
||||||
background: #fff;
|
|
||||||
border: 1px solid #ccc;
|
|
||||||
border-radius: 10px;
|
|
||||||
padding: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.center {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn {
|
|
||||||
color: #fff;
|
|
||||||
background-color: #428bca;
|
|
||||||
border: 1px solid #357ebd;
|
|
||||||
-webkit-border-radius: 4;
|
|
||||||
-moz-border-radius: 4;
|
|
||||||
border-radius: 4px;
|
|
||||||
font-size: 14px;
|
|
||||||
padding: 6px 12px;
|
|
||||||
text-decoration: none;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn:hover {
|
|
||||||
background-color: #3071a9;
|
|
||||||
border-color: #285e8e;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
label {
|
|
||||||
display: inline-block;
|
|
||||||
max-width: 100%;
|
|
||||||
margin-bottom: 5px;
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
|
|
||||||
input {
|
|
||||||
display: block;
|
|
||||||
width: 100%;
|
|
||||||
height: 34px;
|
|
||||||
padding: 6px 12px;
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 1.42857143;
|
|
||||||
color: #555;
|
|
||||||
background-color: #fff;
|
|
||||||
background-image: none;
|
|
||||||
border: 1px solid #ccc;
|
|
||||||
border-radius: 4px;
|
|
||||||
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
|
|
||||||
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
|
|
||||||
-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
|
|
||||||
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
|
|
||||||
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
|
|
||||||
margin: 0;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
footer {
|
|
||||||
display: block;
|
|
||||||
font-size: 10px;
|
|
||||||
color: #aaa;
|
|
||||||
text-align: center;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
footer a {
|
|
||||||
display: inline-block;
|
|
||||||
height: 25px;
|
|
||||||
line-height: 25px;
|
|
||||||
color: #aaa;
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
footer a:hover {
|
|
||||||
color: #aaa;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div class="signin center">
|
|
||||||
<form method="GET" action="{{.ProxyPrefix}}/start">
|
|
||||||
<input type="hidden" name="rd" value="{{.Redirect}}">
|
|
||||||
<button type="submit" class="btn">Sign in with passbook</button><br />
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
if (window.location.hash) {
|
|
||||||
(function () {
|
|
||||||
var inputs = document.getElementsByName('rd');
|
|
||||||
for (var i = 0; i < inputs.length; i++) {
|
|
||||||
inputs[i].value += window.location.hash;
|
|
||||||
}
|
|
||||||
})();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
||||||
{{end}}
|
|
Reference in New Issue