我正在尝试通过.net smtp发送电子邮件。我收到此消息: SMTP服务器需要安全连接或客户端未经过身份验证。服务器响应为:5.7.1客户端未经过身份验证
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("server", 587);
SmtpServer.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
SmtpServer.UseDefaultCredentials = false;
SmtpServer.EnableSsl = false;
SmtpServer.Credentials = new System.Net.NetworkCredential("username", "password");
mail.From = new MailAddress(FromMail);
mail.To.Add("emailaddress");
mail.Bcc.Add("emailaddress");
mail.Subject = subject;
mail.Body = body;
mail.IsBodyHtml = true;
SmtpServer.Send(mail);
我认为问题是服务器位于DMZ中......任何人都对如何解决这个问题有任何见解?如果我们为用户分配域管理员权限,则电子邮件可以正常工作......出于安全原因,我们不希望这样做。
答案 0 :(得分:0)
问题解决了...网络团队没有端口587可用...一旦他们添加了它,电子邮件开始为匿名发件人工作。我不再需要使用凭据。感谢所有回复的人。