Private/Disable-SSLCertificationVerification.ps1

<#
    .DESCRIPTION
    Wrapper for Nutanix API version 0.3.
 
    .NOTES
    Author: Timothy Rasiah
#>


function Disable-SSLCertificationVerification {
    [CmdletBinding()]
    param ()
    
# https://www.nutanix.dev/reference/prism_central/v3/authentication
# disable SSL certification verification
# you probably shouldn't do this in production ...
if (-not (
[System.Management.Automation.PSTypeName] `
'ServerCertificateValidationCallback').Type)
{$certCallback = @"
using System;
using System.Net;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
public class ServerCertificateValidationCallback
{
public static void Ignore()
{
if(ServicePointManager.ServerCertificateValidationCallback ==null)
{
ServicePointManager.ServerCertificateValidationCallback +=
delegate
(
Object obj,
X509Certificate certificate,
X509Chain chain,
SslPolicyErrors errors
)
{
return true;
};
}
}
}
"@

Add-Type $certCallback
}
[ServerCertificateValidationCallback]::Ignore()
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
}