summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Uiterwijk <puiterwijk@redhat.com>2014-10-10 20:11:59 +0200
committerPatrick Uiterwijk <puiterwijk@redhat.com>2014-10-24 18:03:28 +0200
commit5ea128eca075c19880419c072be36fd761aad4a4 (patch)
tree3eafea21ddaa998cb5a527811c09d4382df1b1ab
parent92291b4692864aad0aa4806eaf71e6e1cb354673 (diff)
downloadipsilon-5ea128eca075c19880419c072be36fd761aad4a4.tar.gz
ipsilon-5ea128eca075c19880419c072be36fd761aad4a4.tar.xz
ipsilon-5ea128eca075c19880419c072be36fd761aad4a4.zip
Show login target on the login screen
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com> Reviewed-by: Simo Sorce <simo@redhat.com>
-rwxr-xr-xipsilon/login/common.py3
-rwxr-xr-xipsilon/providers/openid/auth.py3
-rwxr-xr-xipsilon/providers/saml2/auth.py3
-rw-r--r--templates/login/form.html6
4 files changed, 13 insertions, 2 deletions
diff --git a/ipsilon/login/common.py b/ipsilon/login/common.py
index 6231997..94284b0 100755
--- a/ipsilon/login/common.py
+++ b/ipsilon/login/common.py
@@ -210,8 +210,10 @@ class LoginFormBase(LoginPageBase):
if username is None:
username = ''
+ target = None
if self.trans is not None:
tid = self.trans.transaction_id
+ target = self.trans.retrieve().get('login_target')
if tid is None:
tid = ''
@@ -224,6 +226,7 @@ class LoginFormBase(LoginPageBase):
"description": self.lm.help_text,
"next_url": next_url,
"username": username,
+ "login_target": target,
}
context.update(kwargs)
if self.trans is not None:
diff --git a/ipsilon/providers/openid/auth.py b/ipsilon/providers/openid/auth.py
index 868daf1..da110f7 100755
--- a/ipsilon/providers/openid/auth.py
+++ b/ipsilon/providers/openid/auth.py
@@ -90,7 +90,8 @@ class AuthenticateRequest(ProviderPageBase):
self.basepath, self.trans.get_GET_arg())
data = {'openid_stage': 'auth',
'openid_request': json.dumps(kwargs),
- 'login_return': returl}
+ 'login_return': returl,
+ 'login_target': request.trust_root}
self.trans.store(data)
redirect = '%s/login?%s' % (self.basepath,
self.trans.get_GET_arg())
diff --git a/ipsilon/providers/saml2/auth.py b/ipsilon/providers/saml2/auth.py
index 87f4ac8..49f73a9 100755
--- a/ipsilon/providers/saml2/auth.py
+++ b/ipsilon/providers/saml2/auth.py
@@ -127,7 +127,8 @@ class AuthenticateRequest(ProviderPageBase):
self.basepath, self.trans.get_GET_arg())
data = {'saml2_stage': 'auth',
'saml2_request': login.dump(),
- 'login_return': returl}
+ 'login_return': returl,
+ 'login_target': login.remoteProviderId}
self.trans.store(data)
redirect = '%s/login?%s' % (self.basepath,
self.trans.get_GET_arg())
diff --git a/templates/login/form.html b/templates/login/form.html
index 4188ead..e5e5978 100644
--- a/templates/login/form.html
+++ b/templates/login/form.html
@@ -10,6 +10,12 @@
{% endif %}
+{% if login_target %}
+<div class="col-md-10">
+ <h4>You are being asked to login by {{login_target}}</h4>
+ <hr>
+</div>
+{% endif %}
<div class="col-sm-7 col-md-6 col-lg-5 login">
<form class="form-horizontal" role="form" id="login_form" action="{{ action }}" method="post" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="ipsilon_transaction_id" id="ipsilon_transaction_id" value="{{ ipsilon_transaction_id }}">