Skip to content

Commit 138edca

Browse files
author
rohe
committed
Having a NameID is not mandatory.
1 parent 75ae22e commit 138edca

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

src/saml2/response.py

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -743,19 +743,16 @@ def get_subject(self):
743743

744744
subject.subject_confirmation = subjconf
745745

746-
# The subject must contain a name_id
747-
try:
748-
assert subject.name_id
746+
# The subject may contain a name_id
747+
748+
if subject.name_id:
749749
self.name_id = subject.name_id
750-
except AssertionError:
751-
if subject.encrypted_id:
752-
# decrypt encrypted ID
753-
_name_id_str = self.sec.decrypt(
754-
subject.encrypted_id.encrypted_data.to_string())
755-
_name_id = saml.name_id_from_string(_name_id_str)
756-
self.name_id = _name_id
757-
else:
758-
raise VerificationError("Missing NameID")
750+
elif subject.encrypted_id:
751+
# decrypt encrypted ID
752+
_name_id_str = self.sec.decrypt(
753+
subject.encrypted_id.encrypted_data.to_string())
754+
_name_id = saml.name_id_from_string(_name_id_str)
755+
self.name_id = _name_id
759756

760757
logger.info("Subject NameID: %s", self.name_id)
761758
return self.name_id

0 commit comments

Comments
 (0)