Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi ActiveX) FTPS with Mutual TLS Authentication (TLS Client Certificate)Demonstrates how to do mutual TLS authentication (using a client certificate from a .pfx/.p12).
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var ftp: TChilkatFtp2; cert: TChilkatCert; success: Integer; begin // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. ftp := TChilkatFtp2.Create(Self); ftp.Hostname := 'ftp.example.com'; ftp.Port := 21; // If using implicit TLS, you probably want port 990.. ftp.Port := 990; // Set this to 0 for implicit TLS, otherwise set to 1 for explicit TLS (where port is typically 21). ftp.AuthTls := 0; // Set this to 1 for implicit TLS, otherwise set to 0. ftp.Ssl := 1; cert := TChilkatCert.Create(Self); success := cert.LoadPfxFile('qa_data/pfx/example.pfx','pfx_password'); if (success = 0) then begin Memo1.Lines.Add(cert.LastErrorText); Exit; end; // Use this certificate for our TLS mutually authenticated connection: success := ftp.SetSslClientCert(cert.ControlInterface); if (success = 0) then begin Memo1.Lines.Add(cert.LastErrorText); Exit; end; // Establish the TLS connection with the FTP server. success := ftp.ConnectOnly(); if (success = 0) then begin Memo1.Lines.Add(ftp.LastErrorText); Exit; end; // If a login is required, then login with the FTP account login/password. ftp.Username := 'myLogin'; ftp.Password := 'myPassword'; success := ftp.LoginAfterConnectOnly(); if (success = 0) then begin Memo1.Lines.Add(ftp.LastErrorText); Exit; end; // Do whatever you're doing to do ... // upload files, download files, etc... // ..... // ..... success := ftp.Disconnect(); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.