Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Как отправить письма через Gmail после изменения политики безопасности Google: использование специального пароля для приложения

Delphi , Интернет и Сети , E-mail

С 30 мая 2022 года Google изменил политику безопасности, которая затронула использование сторонних приложений и устройств для отправки электронной почты через Gmail. Если ранее вы использовали свои обычные учетные данные для входа, то теперь вам необходимо использовать специальный пароль для приложения (app-specific password). В этой статье мы рассмотрим, как адаптировать вашу программу на языке Object Pascal (Delphi) для работы с новыми требованиями Google.

Проблема

Разработчики и пользователи программ, которые отправляют письма через Gmail, столкнулись с проблемой неверных учетных данных после изменения политики безопасности Google. Ранее используемые учетные данные (логин и пароль) перестали работать, и для продолжения работы необходимо использовать специальный пароль для приложения.

Решение

Для решения проблемы необходимо создать специальный пароль для приложения в настройках безопасности вашего аккаунта Gmail. После создания такого пароля, его следует использовать в вашем приложении вместо обычного пароля.

Пример кода

Ниже представлен пример кода на Object Pascal, который демонстрирует, как использовать специальный пароль для отправки писем через Gmail:

email:= TIdMessage.Create (nil);
try
  email.LoadFromFile (FFileName);
  email.OnInitializeISO:= DoInitializeISO;

  smtp:= TIdSMTP.Create (nil);
  try
    smtp.OnFailedRecipient:= FailedRecipient;
    ssl:= TIdSSLIOHandlerSocketOpenSSL.Create (smtp);
    ssl.SSLOptions.SSLVersions:= [sslvTLSv1_2];

    smtp.OnStatus := DoStatus;
    smtp.IOHandler:= ssl;
    smtp.Host:= 'smtp.gmail.com';
    smtp.Password:= FAppPassword;   // Сюда вставляется специальный пароль для приложения
    smtp.Username:= FUsername;
    smtp.UseTLS:= utUseExplicitTLS;
    smtp.Port:= 587;

    smtp.Connect;
    try
      smtp.Send (email);
    finally
      smtp.Disconnect;
    end;
  finally
    ssl.Free;
    smtp.Free;
  end;
finally
  email.Free;
end;

Важные замечания

  • Убедитесь, что двухфакторная аутентификация включена в вашем аккаунте Gmail, чтобы иметь возможность создавать специальные пароли для приложений.
  • Используйте порт 587 и явный TLS для отправки писем через Gmail.
  • Обратите внимание на документацию Gmail по работе с App Passwords: Sign in with App Passwords.

Альтернативный ответ

В качестве альтернативного решения можно использовать Xoauth2, но это более сложный процесс, и его реализация выходит за рамки данной статьи.

Заключение

Использование специального пароля для приложения — это ключ к продолжению работы с Gmail после изменения политики безопасности Google. Следуя инструкциям и примерам кода, вы сможете адаптировать ваше приложение на Object Pascal для отправки электронных писем через Gmail.

Создано по материалам из источника по ссылке.

После изменения политики безопасности Google, для отправки писем через Gmail с использованием сторонних приложений необходимо создать и использовать специальный пароль для приложения.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: E-mail ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-02-05 16:55:24/0.0036640167236328/0