def _is_proxy_valid(self): if not os.path.isfile(self.proxy_file_path): return False voms_client = gridproxy.voms.VOMS() with open(self.proxy_file_path, 'r') as proxy_file: try: _, chain = gridproxy.load_proxy(proxy_file.read()) except Exception: return False try: voms_client.from_x509_stack(chain) except Exception: return False current_time = datetime.datetime.now() cert_not_after = voms_client.not_after.replace(tzinfo=None) return cert_not_after >= current_time
#!/usr/bin/env python import gridproxy import gridproxy.voms v = gridproxy.voms.VOMS() k, p = gridproxy.load_proxy(open(gridproxy.get_proxy_filename(), "r").read()) v.from_x509_stack(p) if gridproxy.is_legacy_proxy(p[0]): t = "globus legacy proxy" else: t = "RFC compliant proxy" print "subject :", p[0].get_subject() print "identity :", v.user print "CA :", v.userca print "type :", t print "FQANs :", ", ".join(v.fqans) print "VOMS URI :", v.uri print "VOMS Srv :", v.server print "VOMS CA :", v.serverca print "Validity :", v.not_before.strftime("%c %Z"), "-", v.not_after.strftime("%c %Z")