Powershell New-SelfSignedCertificate在Windows 2012r2中缺less-NotBefore

我的2008 PowerShell脚本在2012r2中无法正常工作。 命令

New-SelfSignedCertificate -DnsName test.testdomain.com -NotBefore [datetime]::now.AddYears(10) 

回来了:

 New-SelfSignedCertificate : A parameter cannot be found that matches parameter name 'NotBefore' 

我在Windows 10中运行这个testing…

我不(不能)下载旧版本的selfssl来执行此操作(是的,我知道这个)。 它需要在PowerShell中完成,否则我将不得不看看在另一个盒子上openssl这些证书。

任何人都知道这是怎么回事?

正如Sam所说的,这个参数是在Windows 10中引入的,在以前的版本中是不可用的。

作为一个替代解决scheme,我会build议一个自定义PowerShell脚本,我写了几年前: https : //gallery.technet.microsoft.com/scriptcenter/Self-signed-certificate-5920a7c6该页面包含所有参数的说明和用法的例子。

HTH

NotBefore仅在Windows 10 / Server 2016技术预览版中可用。 如果您查看此页面并在下拉列表中更改操作系统,则会看到它不在2012 R2中。