虽然这个问题是由多个成员发布的,并且提供了解决方案,但它们都没有在Powershell 4.0上运行。以下是错误
SMTP服务器需要安全连接,否则客户端不需要 认证。服务器响应是:5.7.57 SMTP;客户不是 经过身份验证以在MAIL FROM期间发送匿名邮件
我正在使用通过谷歌找到的以下代码段:
$EmailTo = "abc@email.com"
$EmailFrom = "ced@email.com"
$Subject = "Test"
$Body = "Test Body"
$SMTPServer = "smtp.office365.com"
$filenameAndPath = "C:\Users\ABC\DEsktop\Text_file.txt"
$SMTPMessage = New-Object System.Net.Mail.MailMessage($EmailFrom,$EmailTo,$Subject,$Body)
$attachment = New-Object System.Net.Mail.Attachment($filenameAndPath)
$SMTPMessage.Attachments.Add($attachment)
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("ced@email.com", "abcsd1234");
$SMTPClient.Send($SMTPMessage)
如果有替代方法,请告诉我。 Anuj
答案 0 :(得分:0)
由于Office 365处理direct sends的方式,这种情况正在发生。您不能使用smtp.office365.com
作为SMTP服务器。根据文件...
这表示您正在连接到SMTP客户端提交 端点(smtp.office365.com),不能用于直接发送。 对于直接发送,请使用适用于Office 365租户的MX端点 以“mail.protection.outlook.com”结尾。所以,请让你的管理员 检查MX记录。此外,请检查SMTP端口是否是 25 / TLS。