diff --git a/backend/src/server/routes/sanitizedSchemas.ts b/backend/src/server/routes/sanitizedSchemas.ts index 260d6220e..b7ae8302a 100644 --- a/backend/src/server/routes/sanitizedSchemas.ts +++ b/backend/src/server/routes/sanitizedSchemas.ts @@ -276,4 +276,6 @@ export const SanitizedTagSchema = SecretTagsSchema.pick({ export const InternalCertificateAuthorityResponseSchema = CertificateAuthoritiesSchema.merge( InternalCertificateAuthoritiesSchema -); +).extend({ + requireTemplateForIssuance: z.boolean().optional() +}); diff --git a/backend/src/services/certificate-authority/certificate-authority-fns.ts b/backend/src/services/certificate-authority/certificate-authority-fns.ts index f6f6cee66..5ceec28fa 100644 --- a/backend/src/services/certificate-authority/certificate-authority-fns.ts +++ b/backend/src/services/certificate-authority/certificate-authority-fns.ts @@ -328,6 +328,7 @@ export const expandInternalCa = ( } return { ...ca.internalCa, - ...ca + ...ca, + requireTemplateForIssuance: ca.disableDirectIssuance } as const; }; diff --git a/backend/src/services/certificate-authority/internal-certificate-authority-service.ts b/backend/src/services/certificate-authority/internal-certificate-authority-service.ts index b44508e4a..60aace487 100644 --- a/backend/src/services/certificate-authority/internal-certificate-authority-service.ts +++ b/backend/src/services/certificate-authority/internal-certificate-authority-service.ts @@ -384,7 +384,7 @@ export const internalCertificateAuthorityServiceFactory = ({ ); const updatedCa = await certificateAuthorityDAL.transaction(async (tx) => { - if (status) { + if (status !== undefined) { await internalCertificateAuthorityDAL.update( { certificateAuthorityId: ca.id @@ -394,7 +394,7 @@ export const internalCertificateAuthorityServiceFactory = ({ ); } - if (requireTemplateForIssuance) { + if (requireTemplateForIssuance !== undefined) { await certificateAuthorityDAL.updateById(ca.id, { disableDirectIssuance: requireTemplateForIssuance }, tx); }