我正在尝试通过HTTPS使用BITS(Microsoft的后台智能传输服务)上传带有客户端应用程序的文件。我上传到/测试的开发服务器没有正确签名的SSL证书(它是自签名的)。这意味着传输总是出错,因为BITS认识到证书是自签名的并且拒绝完成作业。
有没有办法以编程方式告诉BITS忽略证书颁发机构并完成上传?我知道有很多方法可以使用C#中的HttpWebRequest类来实现这一点,但我不知道如何使用BITS专门做到这一点。
谢谢!
答案 0 :(得分:1)
使用/ SETSECURITYFLAGS。
答案 1 :(得分:1)
我认为BITS抛出异常不是因为它认为证书是自签名的,而是它认识到证书不受客户端PC的信任。您可以尝试在客户端上的受信任存储中安装证书 - 我相信BITS将通过HTTPS工作。
答案 2 :(得分:1)
这真的让我的大脑震惊了很长一段时间。我终于想通了你需要以十进制形式输入数字。 (不像它在technet中显示为0x0001)
C:> bitsadmin / SetSecurityFlags myDownloadJob 8
8将生成“忽略服务器证书中的无效证书颁发机构:true”
30将使所有Ignores成立。