Example #1
0
 def openid_request(self, params=None):
     """Return openid request"""
     try:
         return self.consumer().begin(url_add_parameters(self.openid_url(),
                                      params))
     except DiscoveryFailure as err:
         raise AuthException(self, 'OpenID discovery error: %s' % err)
Example #2
0
 def openid_request(self, extra_params=None):
     """Return openid request"""
     if not hasattr(self, "_openid_request"):
         try:
             self._openid_request = self.consumer().begin(url_add_parameters(self.openid_url(), extra_params))
         except DiscoveryFailure, err:
             raise AuthException(self, "OpenID discovery error: %s" % err)
Example #3
0
    def handle_state(self, start_url, target_url):
        start_query = parse_qs(urlparse(start_url).query)
        redirect_uri = start_query.get('redirect_uri')

        if getattr(self.backend, 'STATE_PARAMETER', False):
            if start_query.get('state'):
                target_url = url_add_parameters(
                    target_url, {'state': start_query['state']})

        if redirect_uri and getattr(self.backend, 'REDIRECT_STATE', False):
            redirect_query = parse_qs(urlparse(redirect_uri).query)
            if redirect_query.get('redirect_state'):
                target_url = url_add_parameters(
                    target_url,
                    {'redirect_state': redirect_query['redirect_state']})
        return target_url
Example #4
0
 def openid_request(self, params=None):
     """Return openid request"""
     try:
         return self.consumer().begin(
             url_add_parameters(self.openid_url(), params))
     except DiscoveryFailure as err:
         raise AuthException(self, 'OpenID discovery error: %s' % err)
Example #5
0
    def handle_state(self, start_url, target_url):
        start_query = parse_qs(urlparse(start_url).query)
        redirect_uri = start_query.get('redirect_uri')

        if getattr(self.backend, 'STATE_PARAMETER', False):
            if start_query.get('state'):
                target_url = url_add_parameters(target_url, {
                    'state': start_query['state']
                })

        if redirect_uri and getattr(self.backend, 'REDIRECT_STATE', False):
            redirect_query = parse_qs(urlparse(redirect_uri).query)
            if redirect_query.get('redirect_state'):
                target_url = url_add_parameters(target_url, {
                    'redirect_state': redirect_query['redirect_state']
                })
        return target_url
Example #6
0
 def get_redirect_uri(self, state=None):
     """Build redirect with redirect_state parameter."""
     uri = self.redirect_uri
     if self.REDIRECT_STATE and state:
         uri = url_add_parameters(uri, {'redirect_state': state})
     return uri
Example #7
0
 def get_redirect_uri(self, state=None):
     """Build redirect with redirect_state parameter."""
     uri = self.redirect_uri
     if self.REDIRECT_STATE and state:
         uri = url_add_parameters(uri, {'redirect_state': state})
     return uri