Для всех, кто борется с этим.
Убедитесь, что Powershell работает от имени администратора (это очень важно).
Помните, что это работает только в Windows 10, если вы пытаетесь использовать команду New_SelfSignedCertificate в старых ОС, вы обнаружите, что она устарела и не поддерживает некоторые расширенные параметры, некоторые из которых очень необходимы, например, несколько значения для -DnsName с поддержкой SAN. Лично я даже не мог заставить его работать на Server 2012 R2, когда я хотел создать сертификат с подстановочными знаками SAN (* .mydomain.com). Просто придерживайтесь версии на Windows 10, и все будет в порядке;)
Присвойте Root CA, который вы уже создали (я полагаю, вы сделали это) переменной:
$rootcert = ( Get-ChildItem -Path cert:\LocalMachine\My\6980327922B448834C67547B20DB8F054326F140
Теперь передайте эту переменную в команду New-SelfSignedCertificate:
New-SelfSignedCertificate -DnsName MyDnsName,MyOtherDnsName -CertStoreLocation cert:\LocalMachine\My -Signer $rootcert -KeyUsage CertSign,CRLSign,DataEncipherment,DigitalSignature,KeyAgreement,KeyEncipherment -Type SSLServerAuthentication
В приведенном выше примере создается сертификат SSL, но вы можете создать любой из доступных типов, установив другое значение для переменной -Type. Вы также можете изменить значения -KeyUsage на соответствующие значения. Смотрите документацию дополнительных параметров здесь:
https://docs.microsoft.com/en-us/powershell/module/pkiclient/new-selfsignedcertificate?view=win10-ps