Fehlerbehebung des Fehlers „Das Remote-Zertifikat ist ungültig“ bei Verwendung des SMTP-Servers von Gmail in C#
C#-Entwickler, die den SMTP-Server von Gmail zum E-Mail-Versand verwenden, können auf den Fehler stoßen: "The remote certificate is invalid according to the validation procedure."
Dies tritt auf, weil die Validierung des Sicherheitszertifikats fehlschlägt. Die folgende Lösung sollte nur zum Debuggen verwendet werden; Stellen Sie dies niemals in einer Produktionsumgebung bereit.
Zertifikatsvalidierung vorübergehend deaktivieren (NUR zum Debuggen)
Kritische Sicherheitswarnung: Durch die Deaktivierung der Zertifikatsvalidierung wird Ihre Anwendung ernsthaften Sicherheitsrisiken ausgesetzt, einschließlich Man-in-the-Middle-Angriffen, bei denen Ihre verschlüsselten E-Mails abgefangen werden könnten. Dies sollte ausschließlich zur Eingrenzung des Problems und nicht als dauerhafte Lösung verwendet werden.
Schritt 1: Implementieren Sie eine vorübergehende Deaktivierungsfunktion
Bevor Sie smtpclient.Send()
aufrufen, führen Sie diese Funktion aus:
<code class="language-csharp">[Obsolete("Do not use this in production code!!!", true)] static void DisableCertificateValidationForDebugging() { // Disabling certificate validation is extremely risky and should only be used for troubleshooting. // It exposes your application to man-in-the-middle attacks. ServicePointManager.ServerCertificateValidationCallback = (_, certificate, chain, sslPolicyErrors) => true; }</code>
Dadurch wird der Zertifikatsvalidierungsprozess vorübergehend außer Kraft gesetzt. Nachdem Sie bestätigt haben, dass das Zertifikat die Fehlerquelle ist, machen Sie diese Änderung sofort rückgängig und beheben Sie die Grundursache.
Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „Das Remote-Zertifikat ist ungültig' bei Verwendung des SMTP-Servers von Gmail in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!