Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add custom root cert pinning support #1194

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

ganimireddyg
Copy link

This changes adds support to custom trusted root certificate pinning support for HTTP Wininet library. Consumers will be able to ping root CA certificate based on certificate thumbprint and leaf and intermediate certificate can be validated based on subject metadata.

Following 6APIs are added to HttpClient_WinInet.
SetCustomRootCheck ==> SDK consumers need to set call this api to set or un set custom root certificate validation.
IsCustomRootCheckRequired ==> Return current state of custom root check validation.
AddCustomRootCertSHA256Thumbprint ==> Adds one trusted root certificate SHA256 thumbprint. Consumers can add multiple trusted root certificates.
AddCustomTrustedSubjectOrg == > Adds one trusted subject organization. This is only used to validate leaf and intermediary CA certificates. As these can rotate often consumers can leverage subject metadata based pinning.

IsTrustedSubjectOrg ==> Used internally by WinInetRequestWrapper to validate the ongoing http request certificate chain.
IsTrustedRootCert==> Used internally by WinInetRequestWrapper to validate the ongoing http request certificate chain.

@ganimireddyg ganimireddyg requested a review from a team as a code owner October 12, 2023 22:45
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