DataFlex
DataFlex
Set an IMAP TLS Client Certificate from a PFX File
See more IMAP Examples
Demonstrates the Chilkat Imap.SetSslClientCertPfx method, which supplies a TLS client certificate and private key from a PKCS #12/PFX file. The first argument is the .pfx or .p12 file path and the second is its password. Call it before connecting.
Note: The certificate path is relative to the application's current working directory. Supply the path to your own certificate file.
Background: A PFX (PKCS #12) file bundles a certificate together with its private key in a single password-protected file — the format Windows and many corporate PKI tools export. This is the counterpart to
SetSslClientCertPem: use it when your credentials are packaged as one .pfx rather than as separate PEM files.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoImap
String sPfxPassword
String sTemp1
Move False To iSuccess
// Demonstrates the Imap.SetSslClientCertPfx method, which supplies a TLS client certificate
// and private key from a PKCS #12/PFX file. The 1st argument is the .pfx/.p12 file path and
// the 2nd is its password. It must be called before connecting.
Get Create (RefClass(cComChilkatImap)) To hoImap
If (Not(IsComObjectCreated(hoImap))) Begin
Send CreateComObject of hoImap
End
Set ComSsl Of hoImap To True
Set ComPort Of hoImap To 993
// The PFX password is not hard-coded in source. Insert code here to obtain it from an
// interactive prompt, environment variable, or a secrets vault.
// Provide the PFX client certificate BEFORE connecting.
Get ComSetSslClientCertPfx Of hoImap "qa_data/client.pfx" sPfxPassword To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoImap To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComConnect Of hoImap "imap.example.com" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoImap To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComLogin Of hoImap "user@example.com" "myPassword" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoImap To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComDisconnect Of hoImap To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoImap To sTemp1
Showln sTemp1
Procedure_Return
End
End_Procedure