Powershell-使用共享证书添加SSL绑定

Powershell-使用共享证书添加SSL绑定,powershell,iis-7,powershell-2.0,Powershell,Iis 7,Powershell 2.0,我使用以下代码将证书链接到我添加的SSL绑定 $thumb = (Get-ChildItem cert:\LocalMachine\My | where-object { $_.Subject -like $wildCardSubject } | Select-Object -First 1).Thumbprint Push-Location IIS:\SslBindings Get-Item cert:\LocalMachine\My\$thumb | New-Item $ipAddr

我使用以下代码将证书链接到我添加的SSL绑定

$thumb = (Get-ChildItem cert:\LocalMachine\My | where-object { $_.Subject -like $wildCardSubject }     | Select-Object -First 1).Thumbprint
Push-Location IIS:\SslBindings
Get-Item cert:\LocalMachine\My\$thumb | New-Item $ipAddress!$port
Pop-Location
这工作正常,没有任何错误。运行此操作后,如果从IIS管理器打开该网站的绑定UI,则不会看到任何附加到绑定的证书。我有什么遗漏吗

关于一个类似的主题,如果我在两个网站之间使用共享证书,我需要注意什么才能确保添加/删除ssl绑定有效?从IIS管理器UI执行此操作时,我可以看到以下问题

  • 当添加第二个绑定时,它会发出警告,表示证书已被其他网站使用。我仍然继续前进,一切正常,不知道幕后发生了什么
  • 在删除绑定时,它会发出警告,指出证书已用于其他绑定,删除此绑定将使其他绑定无法使用。即使在这种情况下,我继续和其他网站似乎工作良好

  • Get项要求字符串值为指纹。希望这有帮助

    $Cert = dir cert:\localmachine\my | Where-Object {$_.Subject -like $CertSubject }
    $Thumb = $Cert.Thumbprint.ToString()
    Push-Location IIS:\SslBindings
    New-WebBinding -Name $WebSiteName -IP $IP -Port 443 -Protocol https
    Get-Item cert:\LocalMachine\MY\$strThumb | new-item $IP!443
    Pop-Location
    
    对于另外两个问题,HTTPS绑定是IP+SSLCertificate。因此,如果您想使用共享证书,请尝试为每个绑定使用唯一的IP,这样做不会给您任何警告