我注意到Mailkit.SMTPCLient
可以连接各种TLS选项并包含ServerCertificateValidationCallback
-此回调是否意味着还需要采取其他步骤来验证TLS证书?还是SecureSocketOptions.StartTls
和SecureSocketOptions.StartTlsWhenAvailable
在没有回调的情况下处理证书工作,如果我将其中一个作为最后一个arg传递给.Connect
的话?
答案 0 :(得分:1)
ServerCertificateValidationCallback
传递给基础SslStream
,并且如果SslStream
启动SSL握手时将被调用。
所有SecureSocketOptions
枚举值都将触发SSL握手,但None
和可能的StartTlsWhenAvailable
除外。
StartTlsWhenAvailable
检测SMTP,IMAP或POP3服务器是否支持STARTTLS扩展,如果支持,则将连接升级为TLS连接。