code: def get_token_issuer(token):
      
      try:
          unverified = decode_token(token)
  
          if 'iss' not in unverified:
              raise TokenIssuerError
  
          return unverified.get('iss')
      except jwt.DecodeError:
          raise TokenDecodeError
docs: Issuer of a token is the identifier used to recover the secret
      Need to extract this from token to ensure we can proceed to the signature validation stage
      Does not check validity of the token
      :param token: signed JWT token
      :return issuer: iss field of the JWT token
      :raises TokenIssuerError: if iss field not present
      :raises TokenDecodeError: if token does not conform to JWT spec