发送电子邮件,而不必在谷歌中启用不太安全的应用程序



我用C#制作了一个电子邮件程序,但你必须在谷歌中启用不太安全的应用程序。有办法绕过这个吗?如果没有,其他应用程序如何在不被归类为不太安全的应用程序的情况下安全地发送电子邮件?

private void SendButton_Click(object sender, EventArgs e) {
try {
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
mail.From = new MailAddress(myUsername);
mail.To.Add(RecipientEmailBox.Text);
mail.Subject = SubjectField.Text;
mail.Body = MessageField.Text;
SmtpServer.Port = 587;
SmtpServer.Credentials = new 
System.Net.NetworkCredential(myUsername, Login.password);
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);
MessageBox.Show("Message Sent!");
} catch (Exception ex) {
MessageBox.Show(ex.ToString());
}
}

我试着研究绕过这个问题的方法,但什么也找不到。

由于谷歌从2022年5月30日起禁用了该选项,因此您不能再将您的谷歌帐户配置为允许来自不太安全的应用程序的连接。你必须为你的谷歌帐户生成一个应用程序密码。

首先转到https://myaccount.google.com/security并启用2步验证。完成后,转到"应用程序密码"并为邮件应用程序生成应用程序密码,以便在windows计算机上使用。它会在一个黄色框上显示你的新应用程序密码,将其用作你的Login.password

我认为这是问题的答案。

您可以将Google OAuth API与C#一起使用。有关如何操作,请阅读指南。

最新更新