O snap-in Certificados realmente não gosta de exportar certificados PFX, mas o PowerShell está satisfeito. Você pode usar o Export-PfxCertificate
cmdlet
- Vá para a pseudo-unidade de certificados digitando
cd cert:\
no prompt do PowerShell.
- Digite
cd CurrentUser
ou cd LocalMachine
conforme apropriado para onde está o certificado. Pode ser necessário iniciar o PowerShell como administrador para exportar um certificado de máquina.
cd
na loja apropriada (a dir
pode ajudar). A loja pessoal no MMC é chamada My
aqui.
- Use
dir
para identificar qual ID corresponde ao certificado que você deseja.
Digite este comando para exportá-lo como um PFX com uma senha:
Export-PfxCertificate -Cert .\LONGSTRINGOFHEX -FilePath 'C:\path\to\outfile.pfx' -Password (ConvertTo-SecureString -String 'password' -AsPlainText -Force)
LONGSTRINGOFHEX
deve ser substituído pelo ID do seu certificado. Felizmente, você pode usar a conclusão de guias nisso.
Depois que esse comando é executado, você tem um certificado PFX protegido com a senha que você forneceu. O PowerShell se recusa a exportar a chave privada do certificado sem uma senha, e a senha não pode ficar em branco. No entanto, seu PFX está fora.
cert:
PS, recebo "O termo 'cert:' não é reconhecido como o nome de um cmdlet, função, arquivo de script ou programa operável". Windows 10, é claro.cd cert:\
.Se você importar um certificado para a loja WebHosting, não poderá exportar a chave privada. Mova-o para a loja pessoal e você poderá exportar como PFX. Consegui fazer isso no Windows 2012R2 sem ter que ir para a linha de comando e usar Export-PfxCertificate (o que é uma dor, pois não consegui descobrir o ID do certificado para salvar minha vida).
fonte
cd cert:\LocalMachine\My
então 'dir'Exporte o arquivo .P7B uma vez. E, em seguida, volte e tente exportar o certificado novamente. A exportação .PFX é ativada na próxima vez.
fonte