Getting SmtpClient to work with a self signed SSL certificate
我正在尝试使用System.Net.Mail.SmtpClient类通过我公司的电子邮件服务器中继电子邮件。 与邮件服务器的所有SMTP连接都必须是SSL,并且它使用自签名证书。 这对于Outlook来说很好,你可以在警告对话框上单击确定,但是有没有人知道让SmtpClient接受自签名证书的方法?
我打算在Windows Azure平台上使用此应用程序,因此我无法将自签名证书安装为受信任的根。
您可以查看ServerCertificateValidationCallback属性:
1 2 | ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => true; |
它表示运行时在尝试验证SSL证书时调用的回调。 通过返回
我的问题最终是.Net SmtpClient类显然不支持使用端口465进行SMTP SSL连接。 使用带有自签名SSL证书的端口25可以正常工作。
MSDN System.Net论坛问题可以将SmtpClient配置为使用自签名证书吗?