The Import-PfxCertificate only allows importing PKCS12-encoded certificates (often with its private key). Windows however allows certificates to be exported in several formats: PKCS12, PKCS7 and X509 (DER and Base64 encoded).
I have added an additional parameter Format to the resource to allow the user to specify which format the certificate is in, and some additional logic to use the Import-Certificate method for all formats except PKCS12. Available formats are PKCS12, PKCS7 and X509. The resource will default to the PKCS12 format for backwards compatibility.
I first considered basing the logic solely on the file extension of the FilePath, but reconsidered since in my experience there are a lot of variations on certificate file extensions: .cer, .cert, .crt, .pfx, .p12.
The Import-PfxCertificate only allows importing PKCS12-encoded certificates (often with its private key). Windows however allows certificates to be exported in several formats: PKCS12, PKCS7 and X509 (DER and Base64 encoded).
I have added an additional parameter
Format
to the resource to allow the user to specify which format the certificate is in, and some additional logic to use the Import-Certificate method for all formats except PKCS12. Available formats arePKCS12
,PKCS7
andX509
. The resource will default to thePKCS12
format for backwards compatibility.I first considered basing the logic solely on the file extension of the FilePath, but reconsidered since in my experience there are a lot of variations on certificate file extensions: .cer, .cert, .crt, .pfx, .p12.