File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -591,15 +591,22 @@ def get_tpp_identity(self, username):
591591 }
592592 try :
593593 status , response = self ._post (URLS .POLICY_BROWSE_IDENTITY , data = data )
594- identities = response ['Identities' ][0 ]
595- if len (identities ) == 0 :
596- raise VenafiError (f"The username [{ username } ] was not found." )
597- except VenafiError as err :
594+ except VenafiError as err :
598595 log .debug (f"Error while getting contact [{ username } ]: { err .args [0 ]} " )
596+ if len (response ['Identities' ]) == 0 :
597+ raise VenafiError (f"The username [{ username } ] was not found." )
598+ identity = None
599599 if len (response ['Identities' ]) > 1 :
600- raise VenafiError ("Extraneous information returned in the identity response. "
601- "Expected size: 1, found more than 1 \n " )
602- identity = build_identity_entry (identities )
600+ for identy_entry in response ['Identities' ]:
601+ identy_user = build_identity_entry (identy_entry )
602+ if identy_user .name .casefold () == username :
603+ identity = identy_user
604+ break
605+ else :
606+ identities = response ['Identities' ][0 ]
607+ identity = build_identity_entry (identities )
608+ if not identity :
609+ raise VenafiError (f"The username [{ username } ] was not found." )
603610 return identity
604611
605612 def request_ssh_cert (self , request ):
You can’t perform that action at this time.
0 commit comments