Не удалось установить доверительные отношения для безопасного канала SSL/TLS при загрузке файла через Powershell DSC
Я пытаюсь загрузить файл, вызвав веб-запрос внутри Powershell DSC.
Когда я выполняю скрипт, я получаю ошибку
PowerShell DSC resource MSFT_ScriptResource failed to execute Set-
TargetResource functionality
with error message: The underlying connection was closed: Could not
establish trust relationship for the SSL/TLS secure channel.
Если я вызываю веб-запрос с теми же заголовками и прокси за пределами DSC, запрос завершается успешно. Что я могу сделать, чтобы запрос работал внутри DSC?
Script DownloadArtifact{
GetScript =
{
Result = ('True' -in (Test-Path -Path "C:\Temp\BuildPackage\MyAPI.zip"))
}
SetScript = {
$outfile = "C:\Temp\BuildPackage\MyAPI.zip"
$headers = @{"Authorization"="Basic <redacted>"}
$uri = "https://mycompany.visualstudio.com/_apis/build/builds/10374/artifacts/?artifactName=MyAPI&%24format=zip"
Invoke-WebRequest -Uri $uri -OutFile $outfile -Headers $headers -Proxy "http://proxy:8080"
Unblock-File -Path $outfile;
}
TestScript =
{
Test-Path -Path "C:\Temp\BuildPackage\MyAPI.zip"
}
}
Кстати я получаю ту же ошибку при использовании [xRemoteFile]
тоже.
1 ответ
Попробуйте добавить это перед Invoke-WebRequest
[Net.ServicePointManager]::SecurityProtocol = "tls12, tls11, tls"