def request_sign_out(self, session=requests): """ Send a POST request to the ``ServiceTicket``s logout URL to request sign-out. """ if logout_allowed(self.service): request = SingleSignOutRequest(context={'ticket': self}) url = get_logout_url(self.service) or self.service session.post(url, data={'logoutRequest': request.render_content()}) logger.info("Single sign-out request sent to %s" % url)
def request_sign_out(self): """ Send a POST request to the ``ServiceTicket``s service URL to request sign-out. The remote session is identified by the service ticket string that instantiated the session. """ request = SingleSignOutRequest(context={'ticket': self}) try: resp = requests.post(self.service, data={'logoutRequest': request.render_content()}) resp.raise_for_status() except requests.exceptions.RequestException as e: logger.warning("Single sign-out request to %s returned %s" % (self.service, e)) else: logger.debug("Single sign-out request sent to %s" % self.service)
def request_sign_out(self): """ Send a POST request to the ``ServiceTicket``s logout URL to request sign-out. """ if not get_config(self.service, 'LOGOUT_ALLOW'): return request = SingleSignOutRequest(context={'ticket': self}) url = get_config(self.service, 'LOGOUT_URL') or self.service try: resp = requests.post(url, data={'logoutRequest': request.render_content()}) resp.raise_for_status() except requests.exceptions.RequestException as e: logger.warning("Single sign-out request to %s returned %s" % (url, e)) else: logger.debug("Single sign-out request sent to %s" % url)
def request_sign_out(self): """ Send a POST request to the ``ServiceTicket``s service URL to request sign-out. The remote session is identified by the service ticket string that instantiated the session. """ request = SingleSignOutRequest(context={'ticket': self}) try: resp = requests.post( self.service, data={'logoutRequest': request.render_content()}) resp.raise_for_status() except requests.exceptions.RequestException as e: logger.warning("Single sign-out request to %s returned %s" % (self.service, e)) else: logger.debug("Single sign-out request sent to %s" % self.service)
def test_sso_request_content_type(self): """ A ``SingleSignOutRequest`` should return headers containing the appropriate content type. """ headers = SingleSignOutRequest(context={}).headers() self.assertIn('content-type', headers) self.assertEqual(headers['content-type'], 'text/xml')
def request_sign_out(self): """ Send a POST request to the ``ServiceTicket``s logout URL to request sign-out. """ if not logout_allowed(self.service): return request = SingleSignOutRequest(context={'ticket': self}) url = get_logout_url(self.service) or self.service try: resp = requests.post( url, data={'logoutRequest': request.render_content()}) resp.raise_for_status() except requests.exceptions.RequestException as e: logger.warning("Single sign-out request to %s returned %s" % (url, e)) else: logger.debug("Single sign-out request sent to %s" % url)
def test_sso_request(self): """ A ``SingleSignOutRequest`` should contain the ticket string from the provided context. """ content = SingleSignOutRequest(context={'ticket': self.st}).render_content() session_index = parse(content).find('./SessionIndex') self.assertIsNotNone(session_index) self.assertEqual(session_index.text, self.st.ticket)