summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlex Bublichenko <alex.bublichenko@oracle.com>2019-05-28 11:33:31 -0700
committerAlex Bublichenko <alex.bublichenko@oracle.com>2019-05-28 11:33:31 -0700
commita9037d21144d8d1659c1996c4bd237222301995b (patch)
tree7d3cb7811cc2c39daef028e4a5ef3b256c8875a7 /src
parent281d2e165b674b315529b60d145f1b57a7bdb08e (diff)
downloadpysaml2-a9037d21144d8d1659c1996c4bd237222301995b.tar.gz
Use `extension_elements` to extract `KeyInfo`
Instead of explicitly declaring `KeyInfo` as child of `SubjectConfirmationData`, use `extension_elements` to extract `KeyInfo` element(s).
Diffstat (limited to 'src')
-rw-r--r--src/saml2/response.py5
-rw-r--r--src/saml2/saml.py5
2 files changed, 2 insertions, 8 deletions
diff --git a/src/saml2/response.py b/src/saml2/response.py
index 118f7fe0..4c884c30 100644
--- a/src/saml2/response.py
+++ b/src/saml2/response.py
@@ -722,12 +722,11 @@ class AuthnResponse(StatusResponse):
return True
def _holder_of_key_confirmed(self, data):
- if not data or not data.key_info:
+ if not data or not data.extension_elements:
return False
has_keyinfo = False
- key_info = data.key_info or ()
- for element in extension_elements_to_elements(key_info,
+ for element in extension_elements_to_elements(data.extension_elements,
[samlp, saml, xenc, ds]):
if isinstance(element, ds.KeyInfo):
has_keyinfo = True
diff --git a/src/saml2/saml.py b/src/saml2/saml.py
index 0d6728e5..bdb1ec60 100644
--- a/src/saml2/saml.py
+++ b/src/saml2/saml.py
@@ -482,12 +482,8 @@ class SubjectConfirmationDataType_(SamlBase):
c_any = {"namespace": "##any", "processContents": "lax", "minOccurs": "0",
"maxOccurs": "unbounded"}
c_any_attribute = {"namespace": "##other", "processContents": "lax"}
- c_children['{http://www.w3.org/2000/09/xmldsig#}KeyInfo'] = ('key_info',
- [ds.KeyInfo])
- c_cardinality['key_info'] = {"min": 0, "max": 1}
def __init__(self,
- key_info=None,
not_before=None,
not_on_or_after=None,
recipient=None,
@@ -500,7 +496,6 @@ class SubjectConfirmationDataType_(SamlBase):
text=text,
extension_elements=extension_elements,
extension_attributes=extension_attributes)
- self.key_info = key_info
self.not_before = not_before
self.not_on_or_after = not_on_or_after
self.recipient = recipient