java ftps 证书_.NET 使用FluentFTP连接用FTPS验证服务器证书的方法代码(FTP over SSL)

本文介绍了两种在使用FluentFTP库时验证SSL证书的方法。第一种方法适用于当SSL证书没有错误的情况,第二种方法则是在需要确保服务器证书与预定义的信任证书相匹配的情况下使用。

注意:FluentFTP不支持SFTP连接,因为它是通过SSH的FTP,一种完全不同的协议。使用SSH.NET。

1、第一种方法

如果SSL证书没有错误,请进行连接client.ValidateCertificate += new FtpSslValidation(delegate (FtpClient c, FtpSslValidationEventArgs e) {

if (e.PolicyErrors != System.Net.Security.SslPolicyErrors.None){

e.Accept = false;

}else{

e.Accept = true;

}

});

2、第二种方法

如果证书与白名单证书匹配,则进行连接。

首先,您必须发现有效证书的字符串。使用此代码将有效证书字符串保存到文件:client.ValidateCertificate += new FtpSslValidation(delegate (FtpClient c, FtpSslValidationEventArgs e) {

File.WriteAllText(@"C:\cert.txt", e.Certificate.GetRawCertDataString());

});

然后最后使用此代码检查收到的证书是否与您信任的证书匹配:string ValidCert = "";

client.ValidateCertificate += new FtpSslValidation(delegate (FtpClient c, FtpSslValidationEventArgs e) {

if (e.PolicyErrors == SslPolicyErrors.None || e.Certificate.GetRawCertDataString() == ValidCert) {

e.Accept = true;

}else{

throw new Exception("Invalid certificate : " + e.PolicyErrors);

}

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值