Отправка электронной почты из ASP.NET с использованием Office 365 Online Exchange - PullRequest
0 голосов
/ 29 декабря 2018

Попытка отправить письмо из приложения asp.net.Отправка по электронной почте на адрес сервера: Smtp.office365.com
Порт - 587
Безопасность соединения - STARTTLS
У меня есть имя пользователя SMTP и пароль SMTP.

Не удается отправить электронное письмо.

Код использует SmtpClient следующим образом:

String userName = "name@example.com";
String password = "Password";

MailAddress RecipientEmail = new MailAddress(EmailTo);
MailAddress SenderEmail = new MailAddress(cEmailFrom);
MailMessage msg = new MailMessage(SenderEmail, RecipientEmail);
msg.Subject = "Test";
msg.Body = "This is a test";
msg.IsBodyHtml = true;
SmtpClient client = new SmtpClient("smtp.office365.com:587");
client.Credentials = new System.Net.NetworkCredential(userName, password);
client.EnableSsl = true;
client.Send(msg);

Сообщение об ошибке: Ошибка отправки электронной почты.Никакой другой информации.

Но если я укажу порт: client.port = 587 вместо того, чтобы добавить его к имени хоста, я получу очень длинную ошибку:

Транзакция не удалась.Ответ сервера был: 5.2.0 STOREDRV.Submission.Exception: SendAsDeniedException.MapiExceptionSendAsDenied;Не удалось обработать сообщение из-за постоянного исключения с сообщением Невозможно отправить сообщение.16,55847: BC110000, 17,43559: 0000000094000000000000000100000000000000, 20,52176: 140FBF85130010100A00D231, 20,50032: 140FBF85831710100A00E231, 0,35180: 86260000, 255,23226: 0A00C931, 255,27962: 0A000000, 255,27962: 0E000000, 255,31418: 0A000000, 16,55847: DC000000, 17,43559: 0000000088010000000000001E00000000000000, 20,52176: 140FBF85130010109F260000, 20,50032:140FBF8583171010A4260000, 0,35180: 0A00D330, 255.23226: A9260000, 255.27962: 0A000000, 255.27962: 32000000, 255.17082: DC040000, 0.27745: B3260000, 4.21921: 0.200000: 0.200000: 0.200000: 0.20000000: 3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000620000000000 220000000000000000B 20-R000000000,34608: 04000100, 0,55056: 00000000, 0,42768: 302E3134, 0,56112: 31393A44, 0,52807: 30363031, 4,33016: DC040000, 7,40748: 010000000000010B2D343438, 7,57132: 000000000000000037323032, * 1018: * 1018:

1020 *

1 Ответ

0 голосов
/ 29 декабря 2018

Важной частью ошибки является фраза "SendAsDenied".

Office 365 не позволит вам использовать свою учетную запись на своих серверах smtp для отправки сообщений электронной почты с чужого адреса. Вы просто не можете этого сделать. Если вам нужно это сделать, вам нужно управлять своим собственным SMTP-сервером ... и позвольте мне сказать, что это целая другая банка червей, требующая способности понятьи настройте некоторые или все rDNS, SPF, DKIM, ключи домена и DMARC.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...