无需输入密码即可从SMTP服务器发送电子邮件

Has*_*dad 3 .net c# asp.net winforms

我们有一个应用程序,提示用户使用他的ldap用户名和密码登录,从中我可以获得用户的电子邮件而不是电子邮件密码.我的目标是从该用户的邮件发送电子邮件,而无需提示用户他的电邮密码.

我使用以下代码发送电子邮件

NetworkCredential loginInfo = new NetworkCredential("fromemail@mydomain.com","mypassword");
MailMessage msg = new MailMessage();
sg.From = new MailAddress("fromemail.lb@mydomain.com");
msg.To.Add(new MailAddress("toemail.lb@mydomain.com"));
msg.Subject = "test";

SmtpClient client = new SmtpClient("smtp.mydomain.com");
client.EnableSsl = true;
client.UseDefaultCredentials = true;
client.Credentials = loginInfo;
client.Send(msg);
Run Code Online (Sandbox Code Playgroud)

IS是否可以发送没有密码的电子邮件?有些事情比如电子邮件欺骗,如果不是可能的话,是否有可能伪造它,比如从一封电子邮件发送所有电子邮件,但让电子邮件看起来好像来自登录用户的电子邮件?

谢谢

For*_*say 7

这一切都取决于SMTP服务器.配置SMTP服务器时,您可以决定它接受哪些凭据,以及它是否允许您伪装成您不是的人.许多Web服务器在localhost上都有内置的SMTP服务器,通常不需要任何凭据.某些ISP提供SMTP服务器,允许您从其他人发送电子邮件.如果您的SMTP服务器不需要身份验证,您只需删除为smtp客户端配置安全性的3行代码.