Powershell 的 AddSslCertificate() 不适用于 IIS 10(非服务器)绑定

Seb*_*uch 3 iis powershell ssl binding

情况 - 我正在尝试设置网站以与带有 SSL 的 IIS 10(开发计算机,Windows 10)一起使用。非常常见的东西 - 证书(带根)已经在WebHosting分支中注册,创建了站点。然后,我尝试为 HTTPS 创建绑定:

$hostname="mysite.domain.com"
$iisSite="mysite"

$cert = (Get-ChildItem "cert:\LocalMachine\WebHosting" `
| where-object { $_.Subject -like "*domain.com*" } `
| Select-Object -First 1).Thumbprint

# ...

$binding = New-WebBinding -name $iisSite -Protocol https -HostHeader $hostname -Port 443 -SslFlags 1
$binding.AddSslCertificate($cert, "WebHosting")
Run Code Online (Sandbox Code Playgroud)

绑定已正确创建,所有属性看起来都符合预期,除了 SSL 证书 - 没有选择任何属性,而我可以清楚地看到我一直在列表中寻找的属性...

我已经在谷歌上搜索过这个问题,每个人都说它可以在 Win 服务器上运行。但在我/我们的开发机器上有点不行……我目前无法访问 win 服务器来查看它在那里的行为方式。

(注意 - $cert 已正确找到,它是为“*domain.com”创建的)。

有什么建议么?或者这只是一个普通的错误?还有什么有效的吗?还是我做错了什么?

Seb*_*uch 6

好的,这有效:

New-WebBinding -name $iisSite -Protocol https -HostHeader $hostname -Port 443 -SslFlags 1
$binding = Get-WebBinding -Name $iisSite -Protocol https  
if ($binding) {
    $binding.AddSslCertificate($cert, "WebHosting")
}
Run Code Online (Sandbox Code Playgroud)

呃。