PowerShell
PowerShell
Client Certificate in REST
See more REST Examples
Demonstrates how to use a client certificate with a REST connection.Chilkat PowerShell Downloads
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"
$success = $false
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
# This example shows how to use the Chilkat socket object's connection.
$rest = New-Object Chilkat.Rest
$socket = New-Object Chilkat.Socket
# Set the certificate to be used for mutual TLS authentication
# (i.e. sets the client-side certificate for two-way TLS authentication)
# Note: There are other ways to set the client certificate using Chilkat.
# For example, on Windows systems, a Chilkat certificate object could be loaded with certificate
# pre-installed (with private key) in a Windows certificate store, and then socket.SetSslClientCert could be called.
$success = $socket.SetSslClientCertPfx("/home/bob/pfxFiles/myClientSideCertWithPrivateKey.pfx","pfxPassword")
if ($success -ne $true) {
$($socket.LastErrorText)
exit
}
# Note: The certificate used for the client-side of TLS mutual authentication
# must have the associated private key available. (.pfx/.p12 files typically store both
# the certificate and associated private key.)
# Establish the connection using the socket object (with client certificate authentication).
$bTls = $true
$port = 443
$maxWaitMs = 5000
$success = $socket.Connect("www.example.com",$port,$bTls,$maxWaitMs)
if ($success -ne $true) {
$("Connect Failure Error Code: " + $socket.ConnectFailReason)
$($socket.LastErrorText)
exit
}
$bAutoReconnect = $true
# Use the connection:
$success = $rest.UseConnection($socket,$bAutoReconnect)
if ($success -ne $true) {
$($rest.LastErrorText)
exit
}
# At this point we are connected and can make REST calls...
# For example..
$responseJson = $rest.FullRequestNoBody("GET","/someQuery")
if ($rest.LastMethodSuccess -ne $true) {
$($rest.LastErrorText)
exit
}