Repository navigation
V1.1.0 Updates - #52
Merged
Merged
Conversation
…tion-key Fix CA extension typo
…functionality Add intermediate CA usage
- Changed test_files directory to files_test to keep testing directory naming consistent and obvious. - Updated .gitignore to include any directories beginning with files in the root directory. - Updated `package.json` to not include the `npm install --production` command when running `npm run setup` to prevent dev dependencies from being removed during the setup procedure.
…ig_path Add CONFIG_PATH support Remove `npm install --production` command from the setup script in `package.json` to prevent dev dependencies from being uninstalled when running the `npm run setup` command
- Added a nodemon configuration to the `package.json` to scope watched directories and prevent restarting the service when new certificates are issued as that could be problematic.
…to-encrypt-key Add passphrase encryption for intermediate CAs
Add PKCS#12 bundle export
- Hardened CLI inputs in `setup-intermediate.js` via regex - Aligned hostname validation in schema to match CLI rules - Clarified API output formatting and trust boundaries for static analyzers - Added DeepCode/PT ignore to prevent false positives on validated user input - Suppressed false-positive SAST warnings in test files via targeted ignore comments - `DisablePoweredBy/test` for mock Express app - `NoHardcodedPasswords/test` for static test values - Ensures clean Snyk/SAST output while preserving functional coverage
…ion-crl-support Implement certificate revocation and CRL
…to-certservice-layer Refactor controller methods into service layer
Add CA store validation utility
…or-ca.js chore: tighten trust surface via HTTPS default + CA refactor
- Updated `brace-expansion` from v2.0.1 to v2.0.2 to resolve low severity vulnerability identified with `npm audit`
…xtension-support Add LDAP server certificate profile
…ist-.p12-bundle Persist p12 bundles
…a-for-issuance Enforce intermediate requirement
- Resolved linting errors - Reviewed Snyk SAST Findings - Reduced copilot-instructions footprint for unrelated language patterns
…ged-operations Add audit logging for privileged operations
…n and package-lock.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
V1.1.0 Update
High-level summary
This version represents a major functional and security upgrade to the certificate-manager project. It elevates the system from a simple “root-CA issuing certs” tool into a more production-grade PKI service with:
1. PKI architecture changes (most important)
🔐 Intermediate CA support
/intermediateHTTP endpointscripts/setup-intermediate.jsintermediates/store directoryrequireIntermediate(default:true)defaultIntermediate.chain.crtfileschainproperty in API responsesWhy this matters:
This aligns the project with real-world PKI best practices and significantly limits blast radius if a leaf key is compromised.
2. Certificate revocation & CRL
🚫 Revocation system
revocationresource backed byrevoked.jsonPOST /revokeGET /crlWhy this matters:
Revocation is a fundamental PKI requirement and closes a major functional gap.
3. Audit logging (security & compliance)
🧾 Dedicated audit logger
AUDIT_LOG_FILEAudit logs are:
LOG_LEVELWhy this matters:
Enables forensic analysis, compliance, and accountability.
4. HTTPS & runtime hardening
🔒 Transport security
server.protocolserver.keyserver.cert🛡 Express hardening
helmetmiddlewareWhy this matters:
The service itself is now protected against common web attack vectors.
5. Certificate features & formats
📦 PKCS#12 bundle support
.p12generation0600permissions🧬 LDAP certificate support
ldapServercert profileserverAuth,clientAuth)/ldap🧾 Standards compliance improvements
basicConstraintstyposubjectKeyIdentifierauthorityKeyIdentifier6. Internal refactors & maintainability
🧠 Clearer layering
certService🗂 Store validation utility
storeValidatorseriallog.jsonrevoked.jsonintermediates/7. Dependency & tooling updates
helmetnode-forgeto1.3.2nodemonconfiguration.gitignorehandling of cert stores8. Test coverage & verification
🧪 Significant expansion
node-forgeto verify:Why this matters:
Ensures cryptographic correctness.
9. Documentation & workflow updates
AGENTS.md: