Skip to content

Create scaffolding for configuring lints with issuers - #8923

Merged
aarongable merged 2 commits into
mainfrom
configurable-lints
Jul 29, 2026
Merged

Create scaffolding for configuring lints with issuers#8923
aarongable merged 2 commits into
mainfrom
configurable-lints

Conversation

@aarongable

Copy link
Copy Markdown
Contributor

Create the ability for lints to be configured with either an issuer certificate (useful for everything but self-signed roots), or an pre-existing certificate (useful for cross-signs), or both. Because zlint expects configs to be TOML strings, build some infrastructure that is capable of serializing and deserializing these configs, and augmenting them at runtime. This lets us combine the actual zlint config (which includes things like ignored lints and how to connect to PKIMetal) with the dynamic issuer or existing cert config.

Have the CA and Ceremony tool correctly configure zlint with the relevant additional certs. No lints use this yet, but our CP/CPS lints will soon.


This moves some of the refactoring out of #8485, so that PR can be more focused on the lints themselves.

@aarongable
aarongable requested a review from a team as a code owner July 29, 2026 00:07
@aarongable
aarongable requested review from beautifulentropy, ezekiel and jsha and removed request for jsha July 29, 2026 00:07
Base automatically changed from move-generate-skid to main July 29, 2026 21:13
@aarongable
aarongable force-pushed the configurable-lints branch from 3655bad to e19eb5a Compare July 29, 2026 21:13
@aarongable
aarongable merged commit af5bd96 into main Jul 29, 2026
18 checks passed
@aarongable
aarongable deleted the configurable-lints branch July 29, 2026 23:50
aarongable added a commit that referenced this pull request Jul 30, 2026
Add a new config field to cert-checker: `issuerCerts`, identical to the
config field of the same name in the RA. Use this field to look up the
intermediate CA certificate which issued each cert that cert-checker
checks, and to add that issuer to our custom linter config, just like
the CA and ceremony tool already do (as of
#8923). This will allow the
cert-checker to successfully run our upcoming custom CP/CPS lints, which
require that the issuer be configured.

To facilitate this new functionality, slightly refactor
`linter.NewRegistryWithConfig` so that it is usable by both the ceremony
tool and cert-checker.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants