Loo*_*fer 1 security deployment msbuild iis-7 msbuildextensionpack
我有这个目标
<Target Name = "AddLocalCertificate">
<MSBuild.ExtensionPack.Security.Certificate TaskAction="Add" FileName="$(CertificateLocation)" CertPassword="$(CertificatePassword)">
<Output TaskParameter="Thumbprint" PropertyName="CertificateHash"/>
</MSBuild.ExtensionPack.Security.Certificate>
</Target>
Run Code Online (Sandbox Code Playgroud)
在另一个目标中这个绑定声明
<MSBuild.ExtensionPack.Web.Iis7Binding
CertificateHash="$(CertificateHash)"
TaskAction="Add" MachineName="$(MachineName)" Name="$(SiteName)" BindingInformation="*:$(HttpsPort):$(SiteName)" BindingProtocol="https"/>
Run Code Online (Sandbox Code Playgroud)
但是,当我运行目标时,我得到了错误
使用证书创建绑定:拇指打印'DBE4964B4C4D0F185E8B1D421D736390AE586EBF'存储在'MY'C:\ Projects\RC19_Release2\ExternalBinaries\MSBuildGlobalFiles\ManageWebsite.targets(154,3)中:错误:COMException:指定的登录会话不存在.它可能已经被终止了.(来自HRESULT的异常:0x80070520)\ r C:\ Projects\RC19_Release2\ExternalBinaries\MSBuildGlobalFiles\ManageWebsite.targets(154,3):错误:
当我查看IIS时,它创建了网站并且绑定就在那里,但它似乎无法找到证书,如果我查看IIS上的"服务器证书",那么我看不到我的证书.
如果我执行MMC - >证书管理并转到当前用户,那么我可以在那里看到我的证书.
如何从IIS/msbuild中访问该证书或让msbuild在正确的位置创建它以使IIS满意?
msbuild扩展帮助页面是http://www.msbuildextensionpack.com/help/4.0.5.0/html/45763eac-8f14-417d-9b27-425161982ffe.htm,但它对我帮助不大!
谢谢
好吧,我让它工作......显然没有人关心,但我:D
实质性的改变是将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>
Run Code Online (Sandbox Code Playgroud)
一切都在世界上是美好的.
| 归档时间: |
|
| 查看次数: |
1131 次 |
| 最近记录: |