Added code to retrieve certificate.
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -147,3 +147,5 @@ example/sp/sp_nocert.xml
|
||||
example/sp/sp_nocert2.xml
|
||||
|
||||
example/sp/test.py
|
||||
|
||||
example/sp/sp_conf.py
|
||||
|
@@ -136,7 +136,7 @@ class AuthnBroker(object):
|
||||
res = []
|
||||
|
||||
for ref in _refs[1:]:
|
||||
item = self.db[ref]
|
||||
item = self.db["info"][ref]
|
||||
res.append((item["method"], ref))
|
||||
if func(_level, item["level"]):
|
||||
_level = item["level"]
|
||||
|
@@ -83,6 +83,11 @@ class Server(Entity):
|
||||
self.iv = os.urandom(16)
|
||||
self.lock = threading.Lock()
|
||||
|
||||
def getvalid_certificate_str(self):
|
||||
if self.sec.cert_handler is not None:
|
||||
return self.sec.cert_handler._last_validated_cert
|
||||
return None
|
||||
|
||||
def support_AssertionIDRequest(self):
|
||||
return True
|
||||
|
||||
|
@@ -964,6 +964,7 @@ class CertHandler(object):
|
||||
"""
|
||||
self._verify_cert = False
|
||||
self._generate_cert = False
|
||||
self._last_cert_verified = None #This cert do not have to be valid, it is just the last cert to be validated.
|
||||
if cert_type == "pem" and key_type == "pem":
|
||||
self._verify_cert = verify_cert is True
|
||||
self._security_context = security_context
|
||||
@@ -993,6 +994,7 @@ class CertHandler(object):
|
||||
def verify_cert(self, cert_file):
|
||||
if self._verify_cert:
|
||||
cert_str = self._osw.read_str_from_file(cert_file, "pem")
|
||||
self._last_validated_cert = cert_str
|
||||
if self._cert_handler_extra_class is not None and self._cert_handler_extra_class.use_validate_cert_func():
|
||||
self._cert_handler_extra_class.validate_cert(cert_str, self._cert_str, self._key_str)
|
||||
else:
|
||||
|
Reference in New Issue
Block a user