Недоступна отправка почты из django сервисами google
Моя проблема заключается в том, что google вдруг решил убрать такую функцию как: Менее безопасный доступ к аккаунту. Это произошло кажется 30 мая этого года. Мое приложение отправляло письма пользователям, но после усиления безопасности google приложение стало выводить данную ошибку:
Имя пользователя и пароль не принимаются. Подробнее в\n5.7.8 https://support.google.com/mail/?p=BadCredentials m24-20020a2e9118000000b0025099660220sm3586251ljg.137 - gsmtp'
Разбираясь с этим вопросом я попробовал создать новую личную и почту для бизнеса, но оба варианта не предоставляют доступа к упрощению входа в аккаунт.
Исходя из этого следует вопрос - есть ли возможность на данный момент обойти данную проблему и продолжить пользоваться данными функциями и если же нет, то какой альтернативный вариант был бы самым подходящим на замену сервисов почты google. Заранее спасибо за помощь!
На всякий случай код (полностью работоспособный):
Settings.py:
EMAIL_USE_TLS = True
EMAIL_USE_SSL = False
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = '**my_gmail**@gmail.com'
EMAIL_HOST_PASSWORD = '**my_password**'
Views.py:
try:
if usr.token and usr.url:
massage=user.first_name+", ваш логин: "+user.username+". \nМы приняли заявку на восстановление учетных данных. Если заявку подали вы и вы хотите сбросить свой пароль, то перейдите по данной ссылке (Ссылка действует 3 часа): \n"+usr.url+"\nС уважением"
else:
usr.token = ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(50))
usr.url = "http://127.0.0.1:8000/accounts/reset/MQ/"+usr.token
usr.save()
massage=user.first_name+", ваш логин: "+user.username+". \nМы приняли заявку на восстановление учетных данных. Если заявку подали вы и вы хотите сбросить свой пароль, то перейдите по данной ссылке (Ссылка действует 3 часа): \n"+usr.url+"\nС уважением"
send_mail("Восстановление учетных данных.", massage, "**my_gmail**@gmail.com", [email], fail_silently=False)
except BadHeaderError:
return HttpResponse('Ошибка в теме письма.')
return render(request, 'registration/reset_complete.html')
какой альтернативный вариант был бы самым подходящим на замену сервисов почты google
Попробуй SMTP от Yandex. Там выдается отдельный ключ-пароль для приложения. Я все время ему предпочтение отдавал.
Кстати, я понял, что такая функция присутствует и в google и находится по ссылке https://myaccount.google.com/apppasswords Стоит всего лишь настроить двухэтапную аутентификацию для аккаунта.