HTTP-Call (ignore SSL)

Aus Wiki-WebPerfect
Version vom 11. Februar 2021, 08:57 Uhr von Admin (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Invoke-WebRequest with HTTP Basic Authentication

$URL = "https://your-url.ch:port"
$CredPair = "<username>:<password>"
$EncodedCredentials = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($CredPair))
$Headers = @{Authorization = "Basic $encodedCredentials"}
 
Invoke-WebRequest -Uri $URL -Method Get -Headers $Headers


Force PowerShell to use TLS 1.2

[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12

Allow the use of self-signed SSL certificates

[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$True}


Ignore SSL Certificate

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
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Ssl3, [System.Net.SecurityProtocolType]::Tls, [System.Net.SecurityProtocolType]::Tls11, [System.Net.SecurityProtocolType]::Tls12