Start-BitsTransfer:在 BITS 作业上设置代理凭据
使用 Start-BitsTransfer 的代理参数,为传输指定路由、身份验证方法和凭据。
Start-BitsTransfer 直接在传输本身暴露代理配置。只要 Windows BitsTransfer 模块可用,就可以按下面的方式提供一条显式通过身份验证的路由:
$transfer = @{
Source = 'https://downloads.example.net/file.zip'
Destination = 'C:\Downloads\file.zip'
ProxyUsage = 'Override'
ProxyList = 'proxy.example.net:8080'
ProxyAuthentication = 'Negotiate'
ProxyCredential = (Get-Credential)
ErrorAction = 'Stop'
}
Start-BitsTransfer @transfer
其中的地址和本地路径只是示例。请选择代理支持的身份验证方法;本片段选用的是 Negotiate。Override 让作业改用传入的代理列表,而不是它默认的发现策略。
凭据提示为这个作业提供代理账户。从 WebClient 得到的绕过结论,并不能说明 BITS 是否需要身份验证。BITS 有各自的作业配置和身份验证交换过程。
-ErrorAction Stop 让调用方可以用 PowerShell 的 try/catch 流程处理 cmdlet 错误。报告传输失败时,保留原始错误记录。只匹配 “Proxy authentication is required” 这类英文提示,会把错误处理绑到渲染出来的消息上,而不是作业真正的错误信息。