From 260679b01ddf2dcfa7c7cacd9a5d4569943f7e65 Mon Sep 17 00:00:00 2001 From: Sheen Capadngan Date: Sat, 17 May 2025 22:39:43 +0800 Subject: [PATCH] misc: addressed type --- .../certificate-authority-endpoints.ts | 14 +++++++--- .../routes/v2/certificate-authority-router.ts | 21 +++++++------- .../internal-certificate-authority-schemas.ts | 28 ++++--------------- 3 files changed, 25 insertions(+), 38 deletions(-) diff --git a/backend/src/server/routes/v1/certificate-authority-routers/certificate-authority-endpoints.ts b/backend/src/server/routes/v1/certificate-authority-routers/certificate-authority-endpoints.ts index ddbbaee46..d5907bf12 100644 --- a/backend/src/server/routes/v1/certificate-authority-routers/certificate-authority-endpoints.ts +++ b/backend/src/server/routes/v1/certificate-authority-routers/certificate-authority-endpoints.ts @@ -6,9 +6,15 @@ import { readLimit, writeLimit } from "@app/server/config/rateLimiter"; import { verifyAuth } from "@app/server/plugins/auth/verify-auth"; import { AuthMode } from "@app/services/auth/auth-type"; import { CaStatus, CaType } from "@app/services/certificate-authority/certificate-authority-enums"; -import { TCertificateAuthority } from "@app/services/certificate-authority/certificate-authority-types"; +import { + TCertificateAuthority, + TCertificateAuthorityInput +} from "@app/services/certificate-authority/certificate-authority-types"; -export const registerCertificateAuthorityEndpoints = ({ +export const registerCertificateAuthorityEndpoints = < + T extends TCertificateAuthority, + I extends TCertificateAuthorityInput +>({ server, caType, createSchema, @@ -21,13 +27,13 @@ export const registerCertificateAuthorityEndpoints = ; updateSchema: z.ZodType<{ name?: string; status?: CaStatus; - configuration?: T["configuration"]; + configuration?: I["configuration"]; disableDirectIssuance?: boolean; }>; responseSchema: z.ZodTypeAny; diff --git a/backend/src/server/routes/v2/certificate-authority-router.ts b/backend/src/server/routes/v2/certificate-authority-router.ts index ccc93f565..0002de608 100644 --- a/backend/src/server/routes/v2/certificate-authority-router.ts +++ b/backend/src/server/routes/v2/certificate-authority-router.ts @@ -53,17 +53,16 @@ export const registerCaRouter = async (server: FastifyZodProvider) => { req.permission ); - // await server.services.auditLog.createAuditLog({ - // ...req.auditLogInfo, - // projectId: ca.projectId, - // event: { - // type: EventType.GET_CA, - // metadata: { - // caId: ca.id, - // dn: ca.dn - // } - // } - // }); + await server.services.auditLog.createAuditLog({ + ...req.auditLogInfo, + projectId: req.query.projectId, + event: { + type: EventType.GET_CAS, + metadata: { + caIds: [...(internalCas ?? []).map((ca) => ca.id), ...(acmeCas ?? []).map((ca) => ca.id)] + } + } + }); return { certificateAuthorities: [...(internalCas ?? []), ...(acmeCas ?? [])] diff --git a/backend/src/services/certificate-authority/internal/internal-certificate-authority-schemas.ts b/backend/src/services/certificate-authority/internal/internal-certificate-authority-schemas.ts index 303f7fed0..5114acebe 100644 --- a/backend/src/services/certificate-authority/internal/internal-certificate-authority-schemas.ts +++ b/backend/src/services/certificate-authority/internal/internal-certificate-authority-schemas.ts @@ -10,26 +10,7 @@ import { } from "../certificate-authority-schemas"; import { validateCaDateField } from "../certificate-authority-validators"; -const InternalCertificateAuthorityConfigurationSchema = z.object({ - type: z.nativeEnum(InternalCaType), - friendlyName: z.string().optional(), - commonName: z.string().trim(), - organization: z.string().trim(), - ou: z.string().trim(), - dn: z.string().trim(), - parentCaId: z.string().uuid().nullable(), - serialNumber: z.string().trim(), - activeCaCertId: z.string().uuid().nullable(), - country: z.string().trim(), - province: z.string().trim(), - locality: z.string().trim(), - notBefore: z.date().optional(), - notAfter: z.date().optional(), - maxPathLength: z.number().min(-1), - keyAlgorithm: z.nativeEnum(CertKeyAlgorithm) -}); - -const CreateInternalCertificateAuthorityConfigurationSchema = z +const InternalCertificateAuthorityConfigurationSchema = z .object({ type: z.nativeEnum(InternalCaType), friendlyName: z.string().optional(), @@ -38,10 +19,11 @@ const CreateInternalCertificateAuthorityConfigurationSchema = z ou: z.string().trim(), dn: z.string().trim(), parentCaId: z.string().uuid().optional(), + serialNumber: z.string().trim().optional(), + activeCaCertId: z.string().uuid().optional(), country: z.string().trim(), province: z.string().trim(), locality: z.string().trim(), - // format: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format notBefore: validateCaDateField.optional(), notAfter: validateCaDateField.optional(), maxPathLength: z.number().min(-1), @@ -69,11 +51,11 @@ export const InternalCertificateAuthoritySchema = BaseCertificateAuthoritySchema export const CreateInternalCertificateAuthoritySchema = GenericCreateCertificateAuthorityFieldsSchema( CaType.INTERNAL ).extend({ - configuration: CreateInternalCertificateAuthorityConfigurationSchema + configuration: InternalCertificateAuthorityConfigurationSchema }); export const UpdateInternalCertificateAuthoritySchema = GenericUpdateCertificateAuthorityFieldsSchema( CaType.INTERNAL ).extend({ - configuration: CreateInternalCertificateAuthorityConfigurationSchema.optional() + configuration: InternalCertificateAuthorityConfigurationSchema.optional() });