diff options
-rw-r--r-- | src/saml2/client.py | 5 | ||||
-rw-r--r-- | src/saml2/client_base.py | 1 | ||||
-rw-r--r-- | src/saml2/config.py | 2 |
3 files changed, 7 insertions, 1 deletions
diff --git a/src/saml2/client.py b/src/saml2/client.py index e283420a..599a78b2 100644 --- a/src/saml2/client.py +++ b/src/saml2/client.py @@ -487,7 +487,7 @@ class Saml2Client(Base): else: raise SAMLError("Unsupported binding") - def handle_logout_request(self, request, name_id, binding, sign=False, + def handle_logout_request(self, request, name_id, binding, sign=None, sign_alg=None, relay_state=""): """ Deal with a LogoutRequest @@ -534,6 +534,9 @@ class Saml2Client(Base): response_bindings = self.config.preferred_binding[ "single_logout_service"] + if sign is None: + sign = self.logout_responses_signed + response = self.create_logout_response(_req.message, response_bindings, status, sign, sign_alg=sign_alg) rinfo = self.response_args(_req.message, response_bindings) diff --git a/src/saml2/client_base.py b/src/saml2/client_base.py index 871f3f2c..59a3a995 100644 --- a/src/saml2/client_base.py +++ b/src/saml2/client_base.py @@ -162,6 +162,7 @@ class Base(Entity): attribute_defaults = { "logout_requests_signed": False, + "logout_responses_signed": False, "allow_unsolicited": False, "authn_requests_signed": False, "want_assertions_signed": False, diff --git a/src/saml2/config.py b/src/saml2/config.py index eb00c7cf..2f6e13b0 100644 --- a/src/saml2/config.py +++ b/src/saml2/config.py @@ -95,6 +95,7 @@ SP_ARGS = [ "name_id_policy_format", "name_id_format_allow_create", "logout_requests_signed", + "logout_responses_signed", "requested_attribute_name_format", "hide_assertion_consumer_service", "force_authn", @@ -201,6 +202,7 @@ class Config(object): self.virtual_organization = None self.only_use_keys_in_metadata = True self.logout_requests_signed = None + self.logout_responses_signed = None self.disable_ssl_certificate_validation = None self.context = "" self.attribute_converters = None |