logout is slo

git-svn-id: svn://localhost/lasso-conform/trunk@7 2a3a78c3-912c-0410-af21-e1fb2d1df599
This commit is contained in:
fpeters 2006-11-06 18:59:03 +00:00
parent 4872a77235
commit 0cdadf6685
1 changed files with 13 additions and 4 deletions

View File

@ -1,4 +1,5 @@
import os
import lasso
from quixote import get_publisher, get_response, get_session, redirect, get_session_manager
from quixote.directory import Directory
@ -92,11 +93,15 @@ class RootDirectory(Directory):
template.html_top('Lasso Conformance SP')
if get_request().user:
'<p>%s</p>' % _('Logged in')
'<p>%s</p>' % _('Logged in (%s)') % get_request().user.display_name
'<p id="logout"><a href="logout">%s</a></p>' % _('Logout')
else:
if get_cfg('sp'):
'<p id="login"><a href="login">%s</a></p>' % _('Login')
'<pre>'
get_session().lasso_identity_provider_id
'</pre>'
def logout(self):
logger.info('logout')
@ -108,9 +113,13 @@ class RootDirectory(Directory):
get_session_manager().expire_session()
return redirect('/')
# add settings to disable single logout?
# (and to set it as none/get/soap?)
return self.liberty.singleLogout()
provider = misc.get_provider(
misc.get_provider_key(get_session().lasso_identity_provider_id))
if provider.getProtocolConformance() == lasso.PROTOCOL_SAML_2_0:
return self.saml.slo_sp()
else:
return self.liberty.singleLogout()
def _q_traverse(self, path):
session = get_session()