Closed mregen closed 2 months ago
Attention: Patch coverage is 82.57840%
with 50 lines
in your changes missing coverage. Please review.
Project coverage is 55.17%. Comparing base (
6dcee7e
) to head (aadd89a
). Report is 1 commits behind head on master.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
does this make #2693 obsolete?
does this make #2693 obsolete?
yep, similar, but kind of trying to make it only work in a simple way for directory store. X509Store and others would not save rejected certs, as we already discussed.
Hi, sorry for the extra effort, but I reconsidered the previous approach to write to the rejected folder and fixed the caching instead to take advantage of it with an implementation that caches the rejected certificates.
The root cause for the caching fix was the implementation only supported it for CertificateTrustList
but not for the CertificateStoreIdentifier
which is used in the CertificateValidator
. To support the caching all OpenStore
calls should use CertificateStoreIdentifier
to which the cached store instance was moved. Some other OpenStore
calls that do not support caching were marked deprecated and references fixed across the board. Only own certificates yet not use the caching.
Proposed changes
ICertificateStore
to ensure rejected cert history remains small and doesn't have a lot of overhead.MaxRejectedCertificates
entry.CertificateValidator
and flag someÒpenStore
methods deprecated which do not support the caching. Fixes across the board to support the methodology. Basicallystore.Close
keeps the cache,store.Dispose
clears the cache, so recommendation is to usevar store = certStoreIdentifier.OpenStore(); try { ... }-- finally { store.Close }
Related Issues
Types of changes
What types of changes does your code introduce? Put an
x
in the boxes that apply. You can also fill these out after creating the PR.Checklist
Put an
x
in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.Further comments
If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered, etc...