我正在尝试通过 HTTPS 使用 BITS(Microsoft 的后台智能传输服务)使用客户端应用程序上传文件。我正在上传/测试的开发服务器没有正确签名的 SSL 证书(它是自签名的)。这意味着传输总是出错,因为 BITS 认识到证书是自签名的并拒绝完成工作。
有没有办法以编程方式告诉 BITS 忽略证书颁发机构并完成上传?我知道有办法用 C# 中的 HttpWebRequest 类来做到这一点,但我不知道如何专门用 BITS 来做到这一点。
谢谢!
我正在尝试通过 HTTPS 使用 BITS(Microsoft 的后台智能传输服务)使用客户端应用程序上传文件。我正在上传/测试的开发服务器没有正确签名的 SSL 证书(它是自签名的)。这意味着传输总是出错,因为 BITS 认识到证书是自签名的并拒绝完成工作。
有没有办法以编程方式告诉 BITS 忽略证书颁发机构并完成上传?我知道有办法用 C# 中的 HttpWebRequest 类来做到这一点,但我不知道如何专门用 BITS 来做到这一点。
谢谢!
使用 /SETSECURITYFLAGS。
资料来源: http: //www.howtogeek.com/wiki/Bitsadmin
我认为 BITS 抛出异常不是因为它识别证书是自签名的,而是它识别出客户端 PC 不信任该证书。您可以尝试在客户端的 Trusted Store 中安装证书 - 我相信 BITS 将通过 HTTPS 工作。
这真的让我绞尽脑汁很久了。我终于发现你需要以十进制形式输入数字。(不像它在technet中显示为0x0001)
C:>bitsadmin /SetSecurityFlags myDownloadJob 8
8 将使“忽略服务器证书中的无效证书颁发机构:true”
30 将使所有 Ignores 为真。