Connexion FTPS avec FtpWebRequest
Bonjour,
Voilà je tente de me connecter comme le ferait FileZilla (version 3.3.4.1) en "FTPS - FTp plus implicite (TLS/SSL)" (les versions supérieures ne proposant plus FTPS...
Avec le code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| public static bool AcceptAllCertifications(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certification, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors)
{
return true;
}
static void Main(string[] args)
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftps://adresseIp:3501");
request.UsePassive = false;
request.EnableSsl = true;
request.Credentials = new NetworkCredential("login", "mdp");
request.Method = WebRequestMethods.Ftp.ListDirectory;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
Console.WriteLine(reader.ReadToEnd());
reader.Close();
response.Close();
Console.Read();
}
} |
Malheureusement, la méthode WebRequest.Create() ne supporte pas les adresses commençant par ftps:// du coup je me trouve bien embêté car avec le protocole ftp:// mon serveur (enfin, celui de mon client) n'est pas accessible enfin du moins j'ai un timeout après 30sec...
Quelqu'un aurait-t-il une idée ?
Est-ce qu'il existe une class FtpsWebRequest au lieu de FtpWebRequest ??