Skip to content

Instantly share code, notes, and snippets.

@jmassardo
Created February 26, 2019 15:19
Show Gist options
  • Save jmassardo/2e0dd7cce292f16ff8f6945b8b3752b5 to your computer and use it in GitHub Desktop.
Save jmassardo/2e0dd7cce292f16ff8f6945b8b3752b5 to your computer and use it in GitHub Desktop.
PowerShell hack to ignore ssl certificates when using Invoke-WebRequest
add-type @"
using System.Net;
using System.Security.Cryptography.X509Certificates;
public class TrustAllCertsPolicy : ICertificatePolicy {
public bool CheckValidationResult(
ServicePoint srvPoint, X509Certificate certificate,
WebRequest request, int certificateProblem) {
return true;
}
}
"@
[System.Net.ServicePointManager]::CertificatePolicy = New-Object TrustAllCertsPolicy
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Ssl3, [Net.SecurityProtocolType]::Tls, [Net.SecurityProtocolType]::Tls11, [Net.SecurityProtocolType]::Tls12
$Header = @{"api-token"="1234567890"}
$Request = Invoke-WebRequest -Uri "https://api.example.com" -Headers $Header -Method Get -ContentType "Application/Json"
@FixRM
Copy link

FixRM commented Apr 9, 2024

[System.Net.ServicePointManager]::ServerCertificateValidationCallback = { $true } works on Windows + PS 5.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment