Мой сценарий для отправки писем с использованием Office365 с учетными данными администратора. Скрипт работал около 6 месяцев назад, но в последнее время не работает, хотя и не менялся.
Я пытался удалить UseSsl, но это не помогло.
try {
Send-MailMessage -To "myemail@domain.com" -Subject "test" `
-From "support@domain.com" `
-SmtpServer 'smtp.office365.com' -Port 587 -UseSsl:$true `
-Credential $Cred -Body "testbody"
Write-Host "Message sent to me." -BackgroundColor Black -ForegroundColor Green
}
catch [System.Exception] {
throw $_
}
Вот исключение, которое я получаю:
Send-MailMessage: транзакция не удалась. Ответ сервера был: 5.2.0 STOREDRV.Submission.Exception: SendAsDeniedException.MapiExceptionSendAsDenied; Не удалось обработать сообщение из-за постоянного исключения с сообщением Невозможно отправить сообщение.
Нашел решение. Используемые учетные данные не имеют разрешений на отправку электронной почты как support@domain.com
в -From "support@domain.com"