Closed
Description
Currently, set_ca_cert
allows to store single named certs, which are used for the JWT auto-refresh feature.
It makes sense to generalize this to allow storing named lists of CA certs. This supports scenarios where a trusted/curated Root CA list is imported wholesale, e.g. from the Microsoft Trust Root Program or the Mozilla CA Cert Program. Note that the existing use case of a single cert will be supported as before (as that is just a special case).
The following changes are necessary:
set_ca_cert
proposal: Store PEM as-is (multiple certs are a concatenation, no change to payload) instead of converting to DER (there is no such thing as concatenated DER certs, see also docs onmbedtls_x509_crt_parse
)- Rename proposal
{set|remove}_ca_cert
to{set|remove}_ca_cert_bundle
- Rename kv table from
public:ccf.gov.jwt.ca_certs_der
topublic:ccf.gov.tls.ca_cert_bundles
- Rename
ca_cert_name
in JWT Issuer metadata toca_cert_bundle_name
Note that there won't be a performance impact from this change since JWT key auto-refresh is not on the critical path.