發問發問
 

已答覆reqFTP.EnableSsl = true;

  • 2007年6月2日 下午 06:03myNameIsRon 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     

    Hi,

    I'm using a hosting company that offers FTPS, but because the certificate is self signed it's coming up with an error.

    Is it possible to bypass the certificate error (exception) and still login? I notice that with other FTP programs (FileZilla), you can choose to trust the certificate if it doesn't pass inspection.

     

    thanks,

    Ron

解答

  • 2007年6月3日 下午 09:40timvw 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     已答覆
    And which library are you using?

    (If installing your certificate as a trusted one isn't an option, for .Net libs you would use the  ServicePointManager.ServerCertificateValidationCallback to plugin your own validator...)
  • 2007年6月3日 下午 10:29myNameIsRon 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     已答覆

     

    Hi timvw,

    Ops, yes that would have been a good thing to include Surprise)

    The certificate error is "Self Signed Certificate". I'm just trying to use FTP over SSL to protect my FTP login ID and Password.

     

    I'm using FtpWebRequest

    I kept looking, and as you said... ServicePointManager, I did find this code on the web... and it does seem to work.

    Is this the best way to go about it?

    ----------------------------------------------------------------------------------------------------------------------------

    ServicePointManager.ServerCertificateValidationCallback = AcceptAllCertificatePolicy;

     

    //Code to Accept All Certificates

    public static bool AcceptAllCertificatePolicy(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)

    {

    return true;

    }

     

    Thanks,

    Ron

  • 2007年6月4日 上午 05:26timvw 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     已答覆
    As long as you're not doing anything else your code would be enough... But I would probably only return true if the certificate is your own self-signed certificate and in all other cases rely on default validation...

所有回覆

  • 2007年6月3日 下午 09:40timvw 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     已答覆
    And which library are you using?

    (If installing your certificate as a trusted one isn't an option, for .Net libs you would use the  ServicePointManager.ServerCertificateValidationCallback to plugin your own validator...)
  • 2007年6月3日 下午 10:29myNameIsRon 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     已答覆

     

    Hi timvw,

    Ops, yes that would have been a good thing to include Surprise)

    The certificate error is "Self Signed Certificate". I'm just trying to use FTP over SSL to protect my FTP login ID and Password.

     

    I'm using FtpWebRequest

    I kept looking, and as you said... ServicePointManager, I did find this code on the web... and it does seem to work.

    Is this the best way to go about it?

    ----------------------------------------------------------------------------------------------------------------------------

    ServicePointManager.ServerCertificateValidationCallback = AcceptAllCertificatePolicy;

     

    //Code to Accept All Certificates

    public static bool AcceptAllCertificatePolicy(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)

    {

    return true;

    }

     

    Thanks,

    Ron

  • 2007年6月4日 上午 05:26timvw 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     已答覆
    As long as you're not doing anything else your code would be enough... But I would probably only return true if the certificate is your own self-signed certificate and in all other cases rely on default validation...
  • 2007年8月3日 上午 01:19just.a.nerd 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     
     myNameIsRon wrote:

     

    I'm just trying to use FTP over SSL to protect my FTP login ID and Password.

     

     

    I wish, more people would do just that.

    And, in that case a self-signed certificate is just as good as one, that makes rich people richer !