Fehlerbehebung für den Fehler „Remote-Zertifikat ist ungültig“ in Gmail SMTP
Ihre C#-Anwendung kann möglicherweise keine E-Mails über den SMTP-Server von Gmail senden und zeigt den Fehler an: „Das Remote-Zertifikat ist gemäß dem Validierungsverfahren ungültig.“ Dies geschieht, wenn die sichere Verbindung Ihrer Anwendung (TLS/SSL) das Gmail-Zertifikat nicht überprüfen kann.
Vorübergehende Korrektur (nicht für die Produktion empfohlen):
Eine schnelle, aber äußerst unsichere Lösung besteht darin, die Zertifikatsvalidierung vorübergehend zu deaktivieren. Verwenden Sie dies NUR zum Testen und Debuggen.Stellen Sie dies niemals in einer Produktionsumgebung bereit.
<code class="language-csharp">[Obsolete("Do not use this in Production code!!!", true)] static void DisableCertificateValidation() //Renamed for clarity { // Disabling certificate validation exposes your application to man-in-the-middle attacks. // Your encrypted messages could be intercepted and read. // See: https://stackoverflow.com/a/14907718/740639 ServicePointManager.ServerCertificateValidationCallback = (s, certificate, chain, sslPolicyErrors) => true; }</code>
Sichere Lösung:
Der richtige Ansatz besteht darin, das SMTP-Zertifikat von Gmail zu überprüfen. Stellen Sie sicher, dass das Zertifikat ist:
smtp.gmail.com
).Stack Trace verstehen:
Der Stack-Trace (in dieser überarbeiteten Antwort nicht enthalten, da er nicht in der Ausgabe der Eingabeaufforderung enthalten war) beschreibt die Methodenaufrufe, die zu dem Fehler geführt haben. Ein Fehler bei CheckCompletionBeforeNextReceive
weist normalerweise auf ein Problem mit der Zertifikatsvalidierung oder -verschlüsselung während des SSL/TLS-Handshakes hin. Durch die Analyse des Stack-Trace können Sie den genauen Ort des Fehlers in Ihrem Code ermitteln.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Senden von E-Mails über den SMTP-Server von Gmail in C# die Fehlermeldung „Das Remote-Zertifikat ist ungültig'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!