This method was deprecated but still used in a lot of places.
https://fedorahosted.org/ipsilon/ticket/120
Signed-off-by: Rob Crittenden <rcritten@redhat.com>
Reviewed-by: Simo Sorce <simo@redhat.com>
self._site[FACILITY] = plugins
available = plugins.available.keys()
- self._debug('Available login managers: %s' % str(available))
+ self.debug('Available login managers: %s' % str(available))
for item in plugins.available:
plugin = plugins.available[item]
plugin.register(self, self._site)
for item in plugins.enabled:
- self._debug('Login plugin in enabled list: %s' % item)
+ self.debug('Login plugin in enabled list: %s' % item)
if item not in plugins.available:
continue
plugins.available[item].enable()
def __init__(self, message, code):
super(AuthenticationError, self).__init__(message)
self.code = code
- self._debug('%s [%s]' % (message, code))
+ self.debug('%s [%s]' % (message, code))
class InvalidRequest(ProviderException):
def __init__(self, message):
super(InvalidRequest, self).__init__(message)
- self._debug(message)
+ self.debug(message)
class ProviderBase(ConfigHelper, PluginObject):
self._root = root
# init pages and admin interfaces
self.tree = self.get_tree(site)
- self._debug('IdP Provider registered: %s' % self.name)
+ self.debug('IdP Provider registered: %s' % self.name)
def on_enable(self):
self._root.add_subtree(self.name, self.tree)
else:
raise cherrypy.HTTPError(405)
- def _debug(self, fact):
+ def debug(self, fact):
superfact = '%s: %s' % (self.plugin_name, fact)
- super(ProviderPageBase, self)._debug(superfact)
+ super(ProviderPageBase, self).debug(superfact)
def _audit(self, fact):
cherrypy.log('%s: %s' % (self.plugin_name, fact))
site[FACILITY] = plugins
available = plugins.available.keys()
- self._debug('Available providers: %s' % str(available))
+ self.debug('Available providers: %s' % str(available))
for item in plugins.available:
plugin = plugins.available[item]
plugin.register(root, site)
for item in plugins.enabled:
- self._debug('Provider plugin in enabled list: %s' % item)
+ self.debug('Provider plugin in enabled list: %s' % item)
if item not in plugins.available:
continue
plugins.available[item].enable()
else:
raise cherrypy.HTTPError(405)
- def _debug(self, fact):
+ def debug(self, fact):
superfact = '%s: %s' % (self.plugin_name, fact)
- super(RestProviderBase, self)._debug(superfact)
+ super(RestProviderBase, self).debug(superfact)
def _audit(self, fact):
cherrypy.log('%s: %s' % (self.plugin_name, fact))
self.plugins.get_plugin_data()
available = self.plugins.available.keys()
- self._debug('Available Extensions: %s' % str(available))
+ self.debug('Available Extensions: %s' % str(available))
def enable(self, enabled):
for item in enabled:
self.key = M2Crypto.RSA.load_key(self.idp_key_file,
lambda *args: None)
except Exception, e: # pylint: disable=broad-except
- self._debug('Failed to init Persona provider: %r' % e)
+ self.debug('Failed to init Persona provider: %r' % e)
return None
def on_enable(self):
name = None
meta = None
if 'content-type' not in cherrypy.request.headers:
- self._debug("Invalid request, missing content-type")
+ self.debug("Invalid request, missing content-type")
message = "Malformed request"
message_type = ADMIN_STATUS_ERROR
return self.form_new(message, message_type)
ctype = cherrypy.request.headers['content-type'].split(';')[0]
if ctype != 'multipart/form-data':
- self._debug("Invalid form type (%s), trying to cope" % (
- cherrypy.request.content_type,))
+ self.debug("Invalid form type (%s), trying to cope" % (
+ cherrypy.request.content_type,))
for key, value in kwargs.iteritems():
if key == 'name':
name = value
if hasattr(value, 'content_type'):
meta = value.fullvalue()
else:
- self._debug("Invalid format for 'meta'")
+ self.debug("Invalid format for 'meta'")
elif key == 'metaurl':
if len(value) > 0:
try:
r.raise_for_status()
meta = r.content
except Exception, e: # pylint: disable=broad-except
- self._debug("Failed to fetch metadata: " + repr(e))
+ self.debug("Failed to fetch metadata: " + repr(e))
message = "Failed to fetch metadata: " + repr(e)
message_type = ADMIN_STATUS_ERROR
return self.form_new(message, message_type)
message = str(e)
message_type = ADMIN_STATUS_ERROR
except Exception, e: # pylint: disable=broad-except
- self._debug(repr(e))
+ self.debug(repr(e))
message = "Failed to create Service Provider!"
message_type = ADMIN_STATUS_ERROR
else:
message_type = ADMIN_STATUS_ERROR
return self.root_with_msg(message, message_type)
except Exception as e: # pylint: disable=broad-except
- self._debug("Error: %s" % repr(e))
+ self.debug("Error: %s" % repr(e))
message = "Internal Error"
message_type = ADMIN_STATUS_ERROR
return self.root_with_msg(message, message_type)
self.providers.remove(page.sp)
self.sp.del_subtree(name)
except Exception, e: # pylint: disable=broad-except
- self._debug("Failed to remove provider %s: %s" % (name, str(e)))
+ self.debug("Failed to remove provider %s: %s" % (name, str(e)))
def add_sps(self):
if self.cfg.idp:
self.del_sp(sp.name)
self.add_sp(sp.name, sp)
except Exception, e: # pylint: disable=broad-except
- self._debug("Failed to find provider %s: %s" % (p, str(e)))
+ self.debug("Failed to find provider %s: %s" % (p, str(e)))
def mount(self, page):
self.menu = page.menu
def __init__(self, message):
super(UnknownProvider, self).__init__(message)
- self._debug(message)
+ self.debug(message)
class AuthenticateRequest(ProviderPageBase):
e, message)
raise UnknownProvider(msg)
- self._debug('SP %s requested authentication' % login.remoteProviderId)
+ self.debug('SP %s requested authentication' % login.remoteProviderId)
return login
try:
login = self._parse_request(request)
except InvalidRequest, e:
- self._debug(str(e))
+ self.debug(str(e))
raise cherrypy.HTTPError(400, 'Invalid SAML request token')
except UnknownProvider, e:
- self._debug(str(e))
+ self.debug(str(e))
raise cherrypy.HTTPError(400, 'Unknown Service Provider')
except Exception, e: # pylint: disable=broad-except
- self._debug(str(e))
+ self.debug(str(e))
raise cherrypy.HTTPError(500)
return login
raise cherrypy.HTTPError(501)
elif login.protocolProfile == lasso.LOGIN_PROTOCOL_PROFILE_BRWS_POST:
login.buildAuthnResponseMsg()
- self._debug('POSTing back to SP [%s]' % (login.msgUrl))
+ self.debug('POSTing back to SP [%s]' % (login.msgUrl))
context = {
"title": 'Redirecting back to the web application',
"action": login.msgUrl,
def __init__(self, code):
message = 'Invalid Provider ID: %s' % code
super(InvalidProviderId, self).__init__(message)
- self._debug(message)
+ self.debug(message)
class NameIdNotAllowed(Exception):
self.load_config()
def get_valid_nameid(self, nip):
- self._debug('Requested NameId [%s]' % (nip.format,))
+ self.debug('Requested NameId [%s]' % (nip.format,))
if nip.format is None:
return SAML2_NAMEID_MAP[self.default_nameid]
else:
allowed = self.allowed_nameids
- self._debug('Allowed NameIds %s' % (repr(allowed)))
+ self.debug('Allowed NameIds %s' % (repr(allowed)))
for nameid in allowed:
if nip.format == SAML2_NAMEID_MAP[nameid]:
return nip.format
def add_provider(self, sp):
self.server.addProviderFromBuffer(lasso.PROVIDER_ROLE_SP,
sp['metadata'])
- self._debug('Added SP %s' % sp['name'])
+ self.debug('Added SP %s' % sp['name'])
def get_login_handler(self, dump=None):
if dump:
spc = ServiceProviderCreator(obj)
sp = spc.create_from_buffer(name, metadata)
except (InvalidProviderId, ServerAddProviderFailedError) as e:
- self._debug(repr(e))
+ self.debug(repr(e))
return rest_error(400, str(e))
except Exception, e: # pylint: disable=broad-except
- self._debug(repr(e))
+ self.debug(repr(e))
return rest_error(500, "Failed to create Service Provider")
obj.admin.add_sp(name, sp)
self.stage = transdata['saml2_stage']
if user.is_anonymous:
- self._debug("User is marked anonymous?!")
+ self.debug("User is marked anonymous?!")
# TODO: Return to SP with auth failed error
raise cherrypy.HTTPError(401)
- self._debug('Continue auth for %s' % user.name)
+ self.debug('Continue auth for %s' % user.name)
if 'saml2_request' not in transdata:
- self._debug("Couldn't find Request dump?!")
+ self.debug("Couldn't find Request dump?!")
# TODO: Return to SP with auth failed error
raise cherrypy.HTTPError(400)
dump = transdata['saml2_request']
try:
login = self.cfg.idp.get_login_handler(dump)
except Exception, e: # pylint: disable=broad-except
- self._debug('Failed to load status from dump: %r' % e)
+ self.debug('Failed to load status from dump: %r' % e)
if not login:
- self._debug("Empty Request dump?!")
+ self.debug("Empty Request dump?!")
# TODO: Return to SP with auth failed error
raise cherrypy.HTTPError(400)
def __init__(self, *args, **kwargs):
super(SLO, self).__init__(*args, **kwargs)
- self._debug('SLO init')
+ self.debug('SLO init')
self.Redirect = RedirectLogout(*args, **kwargs)
try:
idp = IdentityProvider(self)
except Exception, e: # pylint: disable=broad-except
- self._debug('Failed to init SAML2 provider: %r' % e)
+ self.debug('Failed to init SAML2 provider: %r' % e)
return None
self._root.logout.add_handler(self.name, self.idp_initiated_logout)
try:
idp.add_provider(sp)
except Exception, e: # pylint: disable=broad-except
- self._debug('Failed to add SP %s: %r' % (sp['name'], e))
+ self.debug('Failed to add SP %s: %r' % (sp['name'], e))
return idp
For the current user only.
"""
- self._debug("IdP-initiated SAML2 logout")
+ self.debug("IdP-initiated SAML2 logout")
us = UserSession()
saml_sessions = us.get_provider_data('saml2')
if saml_sessions is None:
- self._debug("No SAML2 sessions to logout")
+ self.debug("No SAML2 sessions to logout")
return
session = saml_sessions.get_next_logout(remove=False)
if session is None:
if self.auth_protect and self.user.is_anonymous:
raise cherrypy.HTTPError(401)
- self._debug("method: %s" % cherrypy.request.method)
+ self.debug("method: %s" % cherrypy.request.method)
op = getattr(self, cherrypy.request.method, None)
if callable(op):
# Basic CSRF protection
if cherrypy.request.method != 'GET':
url = self.get_url()
if 'referer' not in cherrypy.request.headers:
- self._debug("Missing referer in %s request to %s"
- % (cherrypy.request.method, url))
+ self.debug("Missing referer in %s request to %s"
+ % (cherrypy.request.method, url))
raise cherrypy.HTTPError(403)
referer = cherrypy.request.headers['referer']
if not self._check_referer(referer, url):
- self._debug("Wrong referer %s in request to %s"
- % (referer, url))
+ self.debug("Wrong referer %s in request to %s"
+ % (referer, url))
raise cherrypy.HTTPError(403)
return op(*args, **kwargs)
else:
return str(output_page)
def handler(self, status, message, traceback, version):
- self._debug(repr([status, message, traceback, version]))
+ self.debug(repr([status, message, traceback, version]))
return self._error_template('internalerror.html',
title='Internal Error')
return op(*args[1:], **kwargs)
else:
if self._is_form_page:
- self._debug("method: %s" % cherrypy.request.method)
+ self.debug("method: %s" % cherrypy.request.method)
op = getattr(self, cherrypy.request.method, None)
if callable(op):
# Basic CSRF protection
if cherrypy.request.method != 'GET':
url = self.get_url()
if 'referer' not in cherrypy.request.headers:
- self._debug("Missing referer in %s request to %s"
- % (cherrypy.request.method, url))
+ self.debug("Missing referer in %s request to %s"
+ % (cherrypy.request.method, url))
raise cherrypy.HTTPError(403)
referer = cherrypy.request.headers['referer']
if not self._check_referer(referer, url):
- self._debug("Wrong referer %s in request to %s"
- % (referer, url))
+ self.debug("Wrong referer %s in request to %s"
+ % (referer, url))
raise cherrypy.HTTPError(403)
return op(*args, **kwargs)
else:
def save_user_attrs(self, userattrs):
cherrypy.session['userattrs'] = userattrs
- self._debug('Saved user attrs')
+ self.debug('Saved user attrs')
self.userattrs = userattrs
def _get_provider_attr_name(self, provider):
def save_provider_data(self, provider, data):
attr = self._get_provider_attr_name(provider)
cherrypy.session[attr] = data
- self._debug('Saved %s provider data' % provider)
+ self.debug('Saved %s provider data' % provider)
def save_data(self, facility, name, data):
""" Save named data in the session so it can be retrieved later """
if facility not in cherrypy.session:
cherrypy.session[facility] = dict()
cherrypy.session[facility][name] = data
- self._debug('Saved session data named [%s:%s]' % (facility, name))
+ self.debug('Saved session data named [%s:%s]' % (facility, name))
def get_data(self, facility, name):
""" Get named data in the session if available """
return
cherrypy.session[facility][name] = None
del cherrypy.session[facility][name]
- self._debug('Nuked session data named [%s:%s]' % (facility, name))
+ self.debug('Nuked session data named [%s:%s]' % (facility, name))
else:
del cherrypy.session[facility]
- self._debug('Nuked session facility [%s]' % (facility,))
+ self.debug('Nuked session facility [%s]' % (facility,))