ProtonMail SMTP 桥验证失败

ProtonMail SMTP Bridge Authentication Failed

正在尝试通过 ProtonMail Bridge (https://protonmail.com/bridge) 使用 SMTP 发送电子邮件。它基本上充当发送安全电子邮件的本地 SMTP 服务器。

尝试通过我的 .Net 应用程序发送时,我得到:

System.Net.Mail.SmtpException: Authentication failed. at System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint) at System.Net.Mail.SmtpClient.GetConnection() at System.Net.Mail.SmtpClient.Send(MailMessage message) at EmailTest.Form1.sendButton_Click(Object sender, EventArgs e) in D:\VisualStudio\EmailTest\EmailTest\Form1.cs:line 68

这是我的测试代码:

SmtpClient smtp = new SmtpClient();
smtp.UseDefaultCredentials = false;
smtp.Credentials = new NetworkCredential("<my username>", "<ProtonMail bridge password>");
smtp.Host = "127.0.0.1";
smtp.Port = 1025;
smtp.Send("me@FakeEmail.com", "them@FakeEmail.com", "Test Message Subject", "Test Message Body");

我在尝试时也会得到同样的异常

smtp.EnableSsl=true

当我获取确切的 credentials/configuration 并将它们放入电子邮件客户端(Outlook 或类似软件)时,它工作正常。

有人遇到过这个问题吗?是否有任何类型的解决方法?

我在网上搜索时唯一能找到的是确保在设置凭据之前设置 UseDefaultCredentials=false 属性。但我已经在这么做了。

根据 ProtonMail 支持,这是一个已知的兼容性问题,目前没有直接的解决方案。

我最终从 System.Net.Mail.SmtpClient 切换到 MailKit。它具有所有相同的功能,并且可以与 ProtonMail Smtp 服务一起使用