Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 5e31b492

Přidáno uživatelem David Friesecký před téměř 4 roky(ů)

Re #8570 - Messages logging

Zobrazit rozdíly:

src/controllers/crl_ocsp_controller.py
1
from flask import Response
1
from flask import Response, request
2 2
from injector import inject
3 3
import base64
4 4

  
......
6 6
from src.exceptions.private_key_not_found_exception import PrivateKeyNotFoundException
7 7
from src.services.crl_ocsp.crl_ocsp_service import CrlOcspService
8 8
from src.controllers.return_codes import *
9
from src.utils.logger import Logger
9 10

  
10 11
E_WRONG_PARAMETERS = {"success": False, "data": "Invalid request, wrong parameters."}
11 12
E_NO_CERTIFICATES_FOUND = {"success": False, "data": "No such certificate found."}
......
23 24
        :param ca_id: certificate authority whose CRL is requested
24 25
        :return: download response / error
25 26
        """
27

  
28
        # TODO check log
29
        Logger.info(f"\n\t{request.referrer}"
30
                    f"\n\t{request.method}   {request.path}   {request.scheme}"
31
                    f"\n\tCertificate ID = {ca_id}")
32

  
26 33
        # convert id from string to int
27 34
        try:
28 35
            identifier = int(ca_id)
29 36
        except ValueError:
37
            Logger.error(f"Invalid request, wrong parameters 'id'[{ca_id}].")
30 38
            return E_WRONG_PARAMETERS, C_BAD_REQUEST
31 39

  
32 40
        # generate the CRL
33 41
        try:
34 42
            crl = self.crl_service.generate_crl_response(identifier)
35 43
        except CertificateNotFoundException:
44
            Logger.error(f"No such certificate found 'ID = {identifier}'.")
36 45
            return E_NO_CERTIFICATES_FOUND, C_NOT_FOUND
37 46

  
38 47
        return Response(crl, mimetype="application/x-x509-ca-cert",
......
45 54
        :param base64_der_ocsp_request: encoded request
46 55
        :return: DER OCSP response
47 56
        """
57

  
58
        Logger.info(f"\n\t{request.referrer}"
59
                    f"\n\t{request.method}   {request.path}   {request.scheme}"
60
                    f"\n\tCertificate ID = {ca_id}")
61

  
48 62
        return self.get_ocsp_from_der(ca_id, base64.b64decode(base64_der_ocsp_request))
49 63

  
50 64
    def get_ocsp_from_der(self, ca_id, der_ocsp_request):
......
54 68
        :param der_ocsp_request: encoded request
55 69
        :return: DER OCSP response
56 70
        """
71

  
72
        Logger.info(f"\n\t{request.referrer}"
73
                    f"\n\t{request.method}   {request.path}   {request.scheme}"
74
                    f"\n\tCertificate ID = {ca_id}")
75

  
57 76
        if len(der_ocsp_request) == 0:
77
            Logger.error(f"Invalid request, wrong parameters 'der_ocsp_request'.")
58 78
            return E_WRONG_PARAMETERS, C_BAD_REQUEST
59 79

  
60 80
        try:
61 81
            ca_id = int(ca_id)
62 82
        except ValueError:
83
            Logger.error(f"Invalid request, wrong parameters 'id'[{ca_id}].")
63 84
            return E_WRONG_PARAMETERS, C_BAD_REQUEST
64 85

  
65 86
        try:
66 87
            ocsp_response = self.crl_service.generate_ocsp_response(ca_id, der_ocsp_request)
67 88
        except CertificateNotFoundException:
89
            Logger.error(f"No such certificate found 'ID = {ca_id}'.")
68 90
            return E_NO_CERTIFICATES_FOUND, C_NOT_FOUND
69 91

  
70 92
        return Response(ocsp_response, mimetype="application/ocsp-response")

Také k dispozici: Unified diff