powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MVC Core Identity - механизм подтверждения по Email
2 сообщений из 2, страница 1 из 1
MVC Core Identity - механизм подтверждения по Email
    #40031623
ValGer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Metanit ( https://metanit.com/sharp/aspnet5/16.5.php ) вся подробно расписано, но не работает. Вот код:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
    public class EmailService
    {
        public async Task SendEmailAsync(string email, string subject, string message)
        {
            // Формирование письма регистрируемому пользователю
            var emailMessage = new MimeMessage();

            emailMessage.From.Add(new MailboxAddress("Администрация сайта", "login@yandex.ru"));
            emailMessage.To.Add(new MailboxAddress("", email));
            emailMessage.Subject = subject;
            emailMessage.Body = new TextPart(MimeKit.Text.TextFormat.Html)
            {
                Text = message
            };
            
            // Отправка сформированного выше письма с обратным адресом
            using (var client = new SmtpClient())   // Исходящие сообщения
            {
                await client.ConnectAsync("smtp.yandex.ru", 25, false);
                await client.AuthenticateAsync("ger-valerij@yandex.ru", "Пароль-моей-почты");   // Здесь затык!!!
                //await client.AuthenticateAsync("login@yandex.ru", "password");
                await client.SendAsync(emailMessage);

                await client.DisconnectAsync(true);
            }
        }
    }



При попытке аутентификации пишет, что не понимает меня (см. рисунок) Где "собака зарыта" - не пойму. Сама почта на Яндексе работает нормально. Может в режиме отладки (Debug) это и работать не должно?
С уважением ВВГ
...
Рейтинг: 0 / 0
MVC Core Identity - механизм подтверждения по Email
    #40033353
ValGer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValGer,
Проблема решилась! Всё дело оказалось в Яндексе. Как просветил Metanit, они изменил политику доступа к smtp-серверу. Тепель со своим почтовым паролем можно лишь обмениваться письмами для зарегистрированного аккаунта. А вот если письмо посылает внешняя программа/сайт, то нужен специальный пароль приложения, который нетрудно сгенерировать в самом Яндексе (см. рисунок, или набери в строке поиска слова "Пароль приложения").
Теперь строка отправки письма пользователю будет выглядеть следующим образом:
Код: c#
1.
2.
3.
  
await client.ConnectAsync("smtp.yandex.ru", 25, false);
await client.AuthenticateAsync("ger-valerij@yandex.ru", "Пароль-приложения");


Теперь всё работает как надо - почта пользователя верифицируется.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MVC Core Identity - механизм подтверждения по Email
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]