2017-10-20 55 views
0

En utilisant makecert.exe je peux prendre un fichier pvk et de générer une liste de révocation en utilisant la commande suivante:Comment générer un fichier de certificat CRL dans Powershell?

makecert.exe -CrL -n "CN = Foobar" -r -sv "Foobar.pvk" « Foobar.crl "

Quelle est la commande Powershell équivalente?

Le code suivant utilise Powershell pour générer les fichiers PVK et CER, mais je ne peux pas comprendre comment générer la liste de révocation

$rootcert = New-SelfSignedCertificate -DnsName "CN=Foobar" -CertStoreLocation cert:\LocalMachine\My 
$PFXPass = ConvertTo-SecureString -String "my password" -Force -AsPlainText 
Export-PfxCertificate -Cert $('cert:\LocalMachine\My\' + $rootcert.Thumbprint) -Password $PFXPass -FilePath "Foobar.pvk" 
Export-Certificate -Cert $('cert:\LocalMachine\My\' + $rootcert.Thumbprint) -FilePath "Foobar.cer" 
+2

Je ne pense pas qu'il y ait cmdlets pour générer ou la signature CRLs, ma recommandation serait de continuer tout simplement en utilisant 'makecert.exe' ou essayer de trouver l'API sous-jacente et invoquer que via PowerShell –

+0

Pourquoi vous besoin d'une commande différente? 'makecert.exe' fonctionne dans PowerShell. –

Répondre

0

Trois choses à considérer:

  1. makecert.exe outil est obsolète et n'est plus recommandé pour utilisation: MakeCert.
  2. La génération CRL pour les certificats auto-signés est inutile et n'a aucun sens. La révocation pour les certificats auto-signés est indéfinie, car elle conduit à un problème d'œuf et de poulet. Et ils utilisent une confiance explicite.
  3. La génération CRL manuelle est une solution impossible à maintenir. Vous devez utiliser le logiciel CA pour exécuter votre propre autorité de certification et automatiser les routines spécifiques à cette dernière.