我正在尝试检索一堆 IIS 网站的证书并将指纹与我拥有的证书进行匹配。如果指纹匹配,那就完全没问题。但是,如果指纹不匹配,那么我想将该特定证书添加到该网站。我知道我可以使用以下方法验证所需的证书是否存在:
Get-ChildItem -Path Cert:\LocalMachine\My | Select-Object Thumbprint
Run Code Online (Sandbox Code Playgroud)
我可以使用以下命令获取 IIS 网站并查看绑定:
Get-ChildItem -Path IIS:Sites | Select-Object -ExpandProperty Bindings
Run Code Online (Sandbox Code Playgroud)
但是,我不知道如何检索这些网站的证书指纹。我将目标证书的指纹存储在变量中,如下所示:
$CertThumbprint = "###############################"
Run Code Online (Sandbox Code Playgroud)
如果我的方法不对,请告诉我。谢谢。
我已将两条路径组合在一起,但是,我需要将整个路径中的双斜杠替换为一个。
$path1 = 'C:\NewFolder\'
$path2 = '\Samplefolder\files'
$final = $path1 + $path2
Run Code Online (Sandbox Code Playgroud)
结果显示为:C:\NewFolder\\Samplefolder\files,使其成为无效路径。我想将这两个斜杠替换为一个,并且需要它,以便\\路径中只要有两个斜杠,它们就只替换为一个\。
我试过做
$final = [regex]::replace($final,"\\\\","\\")
Run Code Online (Sandbox Code Playgroud)
和
$final = $final.replace('\\\\+', '\\')
Run Code Online (Sandbox Code Playgroud)
但它不起作用。