Security 如何使用msbuild添加可以在IIS中使用的安全证书
我有这个目标Security 如何使用msbuild添加可以在IIS中使用的安全证书,security,deployment,iis-7,msbuild,msbuildextensionpack,Security,Deployment,Iis 7,Msbuild,Msbuildextensionpack,我有这个目标 <Target Name = "AddLocalCertificate"> <MSBuild.ExtensionPack.Security.Certificate TaskAction="Add" FileName="$(CertificateLocation)" CertPassword="$(CertificatePassword)"> <Output TaskParameter="Thu
<Target Name = "AddLocalCertificate">
<MSBuild.ExtensionPack.Security.Certificate TaskAction="Add" FileName="$(CertificateLocation)" CertPassword="$(CertificatePassword)">
<Output TaskParameter="Thumbprint" PropertyName="CertificateHash"/>
</MSBuild.ExtensionPack.Security.Certificate>
</Target>
在另一个目标中,这个绑定语句
<MSBuild.ExtensionPack.Web.Iis7Binding
CertificateHash="$(CertificateHash)"
TaskAction="Add" MachineName="$(MachineName)" Name="$(SiteName)" BindingInformation="*:$(HttpsPort):$(SiteName)" BindingProtocol="https"/>
然而,当我运行目标时,我得到了错误
使用证书创建绑定:指纹
“我的”存储器中的“DBE4964B4C4D0F185E8B1D421D736390AE586EBF”
C:\Projects\RC19\u Release2\ExternalBinaries\MSBuildGlobalFiles\ManageWebsite.targets154,3:
错误:COMException:指定的登录会话不存在。信息技术
可能已经被终止。HRESULT的例外情况:
0x80070520\r\n
C:\Projects\RC19\u Release2\ExternalBinaries\MSBuildGlobalFiles\ManageWebsite.targets154,3:
错误:
当我在IIS中查找时,它已经创建了站点并且绑定在那里,但是它似乎无法找到证书,如果我在IIS上查找服务器证书,那么我就看不到我的证书
如果我执行MMC->证书管理单元并转到当前用户,那么我可以在那里看到我的证书
如何从IIS/msbuild中访问该证书,或让msbuild在正确的位置创建该证书,以使IIS满意
msbuild扩展帮助页是这样的,但它对我帮助不大
谢谢好吧,我让它工作了。。。很明显,除了我,没人在乎 实质性的更改是向证书添加任务添加Exportable=True MachineStore=True,如下所示
<MSBuild.ExtensionPack.Security.Certificate TaskAction="Add" Exportable="True" MachineStore="True" FileName="$(CertificateLocation)" CertPassword="$(CertificatePassword)">
<Output TaskParameter="Thumbprint" PropertyName="CertificateHash"/>
</MSBuild.ExtensionPack.Security.Certificate>
世界上的一切又一次好起来了。我让它工作起来了。。。很明显,除了我,没人在乎 实质性的更改是向证书添加任务添加Exportable=True MachineStore=True,如下所示
<MSBuild.ExtensionPack.Security.Certificate TaskAction="Add" Exportable="True" MachineStore="True" FileName="$(CertificateLocation)" CertPassword="$(CertificatePassword)">
<Output TaskParameter="Thumbprint" PropertyName="CertificateHash"/>
</MSBuild.ExtensionPack.Security.Certificate>
世界上的一切都再次变得美好