аутентификация или дешифрование не удалось при отправке почты в GMail с использованием SSL

Я имею в виду это руководство по SMTP-почте C # .

Вот мой код:

MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
mail.From = new MailAddress("dave.stockinger@gmail.com");
mail.To.Add("dave.stockinger@gmail.com");
mail.Subject = "Test Mail";
mail.Body = "This is for testing SMTP mail from GMAIL";
SmtpServer.Port = 587;
SmtpServer.Credentials = new System.Net.NetworkCredential("MyUserNameInGmail", "MyGmailPassWord");
SmtpServer.EnableSsl = true;

SmtpServer.Send(mail);

К сожалению, есть исключение относительно SSL, и я не могу это исправить:

Необработанное исключение: System.Net.Mail.SmtpException: сообщение не удалось отправить. ---> System.IO.IOException: аутентификация или дешифрование не смогли. ---> System.InvalidOperationException: SSL ошибка аутентификации: RemoteCertificateNotAvailable, RemoteCertificateChainErrors в System.Net.Mail.SmtpClient.m__4 (System.Object sender, System.Security.Cryptography.X509Certificates.X509Certificate сертификат System.Security.Cryptography.X509Certificates.X509Chain цепочка, SslPolicyErrors sslPolicyErrors) [0x00000] в : 0 в System.Net.Security.SslStream + c__AnonStorey7. M__A (System.Security.Cryptography.X509Certificates.X509Certificate cert, System.Int32 [] certErrors) [0x00000] в: 0
в Mono.Security.Protocol.Tls.SslClientStream.OnRemoteCertificateValidation (System.Security.Cryptography.X509Certificates.X509Certificate сертификат, ошибки System.Int32 []) [0x00000] в: 0
в Mono.Security.Protocol.Tls.SslStreamBase.RaiseRemoteCertificateValidation (System.Security.Cryptography.X509Certificates.X509Certificate сертификат, ошибки System.Int32 []) [0x00000] в: 0
в Mono.Security.Protocol.Tls.SslClientStream.RaiseServerCertificateValidation (System.Security.Cryptography.X509Certificates.X509Certificate сертификат, System.Int32 [] certificateErrors) [0x00000] в : 0 в Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.validateCertificates (Mono.Security.X509.X509CertificateCollection сертификаты) [0x00000] в: 0 в Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.ProcessAsTls1 () [0x00000] в: 0
в Mono.Security.Protocol.Tls.Handshake.HandshakeMessage.Process () [0x00000] в: 0
в (обертка удаленный вызов с проверкой) Mono.Security.Protocol.Tls.Handshake.HandshakeMessage: процесс () в Mono.Security.Protocol.Tls.ClientRecordProtocol.ProcessHandshakeMessage (Моно.Security.Protocol.Tls.TlsStream handMsg) [0x00000] в: 0 в Mono.Security.Protocol.Tls.RecordProtocol.InternalReceiveRecordCallback (IAsyncResult asyncResult) [0x00000] in: 0 --- конец внутренняя трассировка стека исключений --- в Mono.Security.Protocol.Tls.SslStreamBase.AsyncHandshakeCallback (IAsyncResult asyncResult) [0x00000] in: 0 --- конец внутренняя трассировка стека исключений --- в System.Net.Mail.SmtpClient.Send (Сообщение System.Net.Mail.MailMessage) [0x00000] в: 0
в csharpdungeon.MainClass.Main () [0x00000] в: 0

10
задан p.campbell 10 November 2010 в 19:28
поделиться