Does Azure Key Vault support storing Client Certificates for mTLS authentication?
Example:
- I have an HTTP-triggered Azure Function (Python)
- Has
HTTPS: YesandClient Certificates: Requiredenabled in the Function App - When user sends a request to the endpoint and passes their Client Certificate, I can read in the cert via the
X-ARR-ClientCertheader - I then want to create a
KeyVaultCertificateclient which will pull the client cert we have on file for said requestor and validate its propertiesnot_valid_before/afterissuercommon_nameocsp_responder_url- etc.
Problem:
- Key Vault seems to only allow the upload of server certificates, not client certs.
- It only allows
.pfxor.pemfile extensions - If I'm not mistaken, a client cert would never be in
.pfxformat because it contains the private key - I tried to split the
.pfxfile into both.pem(actual certificate) and.keythen upload only the.pem, but Key Vault didn't like the format.
Does Key Vault handle client certs in this manner or should I just save them as KV Secrets and avoid KV Certificates altogether?

You are mistaken and all your assumptions are incorrect. Mutual TLS requires two sets of certificate and private key, one set for server and another for client. You cannot setup a mutual TLS with two certificates and one private key (like you describe).
Azure Key Vault perfectly supports any kind of certificate, including client and server authentication.