C'est le moment de remplacer les certificats SSL, et alors que je pourrais, pour mes serveurs Windows, faire cela de manière fastidieuse (certificats mmc, importation manuelle), je cherche quelque chose que je puisse automatiser via un script PowerShell.
Je suis au courant Importation du certificat PFX et pour importer un .pfx, je dois faire quelque chose comme.. :
$pwd = ConvertTo-SecureString -String "PrivateKeyPasswordGoesHere" -AsPlainText -Force
Import-PfxCertificate -Password $pwd -FilePath "\\path\to\pfxfile\pfxfile.pfx" -CertStoreLocation Cert:\LocalMachine\My -Exportable # optional if i want the private key to be exportable
C'est très bien, mais à la différence de la méthode manuelle fastidieuse, elle n'introduit que le certificat de l'entité elle-même ; elle n'introduit pas les autres certificats de la chaîne complète (racine, intermédiaires, etc.).
Il on dirait que Je peux peut-être faire quelque chose avec Get-PfxData qui " extrait le contenu d'un fichier d'échange d'informations personnelles (PFX) dans une structure qui contient le certificat de l'entité finale, tout certificat intermédiaire et racine ", mais Certificat d'importation a un paramètre FilePath obligatoire, je ne peux donc pas lui envoyer la sortie de Get-PfxData.
J'ai utilisé Get-PfxData pour vérifier que le PFX contient bien la chaîne complète. .
J'ai également essayé l'approche suivante :
- Importation manuelle dans les certificats mmc.
- Utilisez Export-PfxCertificate pour exporter la chaîne complète (qui, on doit le supposer, le fait dans un format consommable par Import-PfxCertificate).
- Utilisez Import-PfxCertificate pour importer le certificat exporté.
Mais là encore, Import-PfxCertificate n'apporte pas la chaîne complète.
D'autres options pour casser cette noix ?