Skip to content
Snippets Groups Projects
Commit 91a7f3ee authored by Pavel Kácha's avatar Pavel Kácha
Browse files

Refactored RA for nonglobal logging# Please enter the commit message for your...

Refactored RA for nonglobal logging# Please enter the commit message for your changes. Lines starting
parent 8ab847e0
No related branches found
No related tags found
No related merge requests found
......@@ -21,7 +21,7 @@ import ejbcaws
# usual path to warden server
sys.path.append(os.path.join(os.path.dirname(__file__), "..", "..", "warden_server"))
from warden_server import Request, ObjectReq, StreamLogger, FileLogger, Server, expose
from warden_server import Request, ObjectBase, StreamLogger, FileLogger, Server, expose
class EjbcaClient(object):
......@@ -165,10 +165,10 @@ def format_cert(cert):
# Server side
class NullAuthenticator(ObjectReq):
class NullAuthenticator(ObjectBase):
def __init__(self, req):
ObjectReq.__init__(self, req)
def __init__(self, req, log):
ObjectBase.__init__(self, req, log)
def __str__(self):
......@@ -183,23 +183,25 @@ class NullAuthenticator(ObjectReq):
return True
class CertHandler(ObjectReq):
class CertHandler(ObjectBase):
def __init__(self, req, registry):
ObjectReq.__init__(self, req)
def __init__(self, req, log, registry):
ObjectBase.__init__(self, req, log)
self.registry = registry
@expose(read=1, debug=1)
def getCert(self, csr_data=None, name=None, password=None):
if not (name and password and csr_data):
raise self.req.error(message="Wrong or missing arguments", error=400)
raise self.req.error(message="Wrong or missing arguments", error=400, client=name[0], password=password[0])
client = self.registry.get_client(name[0])
if not client:
raise self.req.error(message="Unknown client", error=403)
raise self.req.error(message="Unknown client", error=403, client=name[0], password=password[0])
self.log.info("Client: %s" % client.name)
try:
newcert = client.new_cert(csr_data, password)
except Exception as e:
raise self.req.error(message="Processing error", error=403, cause=e)
raise self.req.error(message="Processing error", error=403, exc=sys.exc_info())
self.log.info("Generated.")
return [("Content-Type", "application/x-x509-user-cert")], newcert.as_pem()
......@@ -210,10 +212,10 @@ def build_server(conf):
req,
filename=os.path.join(os.path.dirname(__file__), os.path.splitext(os.path.split(__file__)[1])[0] + ".log"),
level=logging.DEBUG)
auth = NullAuthenticator(req)
auth = NullAuthenticator(req, log)
registry = EjbcaRegistry(**conf)
handler = CertHandler(req, registry)
server = Server(req, auth, handler)
handler = CertHandler(req, log, registry)
server = Server(req, log, auth, handler)
return server
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment