Skip to content

Commit fb1b8e5

Browse files
committed
Fixes #733: add setting to sign logout responses
1 parent db417d8 commit fb1b8e5

File tree

3 files changed

+7
-1
lines changed

3 files changed

+7
-1
lines changed

src/saml2/client.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -487,7 +487,7 @@ def do_attribute_query(self, entityid, subject_id,
487487
else:
488488
raise SAMLError("Unsupported binding")
489489

490-
def handle_logout_request(self, request, name_id, binding, sign=False,
490+
def handle_logout_request(self, request, name_id, binding, sign=None,
491491
sign_alg=None, relay_state=""):
492492
"""
493493
Deal with a LogoutRequest
@@ -534,6 +534,9 @@ def handle_logout_request(self, request, name_id, binding, sign=False,
534534
response_bindings = self.config.preferred_binding[
535535
"single_logout_service"]
536536

537+
if sign is None:
538+
sign = self.logout_responses_signed
539+
537540
response = self.create_logout_response(_req.message, response_bindings,
538541
status, sign, sign_alg=sign_alg)
539542
rinfo = self.response_args(_req.message, response_bindings)

src/saml2/client_base.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,7 @@ def __init__(self, config=None, identity_cache=None, state_cache=None,
162162

163163
attribute_defaults = {
164164
"logout_requests_signed": False,
165+
"logout_responses_signed": False,
165166
"allow_unsolicited": False,
166167
"authn_requests_signed": False,
167168
"want_assertions_signed": False,

src/saml2/config.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@
9595
"name_id_policy_format",
9696
"name_id_format_allow_create",
9797
"logout_requests_signed",
98+
"logout_responses_signed",
9899
"requested_attribute_name_format",
99100
"hide_assertion_consumer_service",
100101
"force_authn",
@@ -201,6 +202,7 @@ def __init__(self, homedir="."):
201202
self.virtual_organization = None
202203
self.only_use_keys_in_metadata = True
203204
self.logout_requests_signed = None
205+
self.logout_responses_signed = None
204206
self.disable_ssl_certificate_validation = None
205207
self.context = ""
206208
self.attribute_converters = None

0 commit comments

Comments
 (0)