Была настроена проверка письма на гугл почте через АПИ. Для авторизации на почту использовались почта и пароль.
Но недавно проверка перестала проходить с вот такой ошибкой javax.mail.AuthenticationFailedException: [AUTHENTICATIONFAILED] Invalid credentials (Failure)
Думал что что-то не так с кредами.Попробовал вручную залогиниться - всё ок
После вычитал что гугл запретило авторизацию непроверенным приложениям и скорей всего из-за этого ошибка. Вычитал что можно включать двухэтапную аутентификацию и потом использовать пароль для приложений.И это должно помочь.
Но,в ходе возникло пару вопросов:
1)Что нужно выбирать в названии приложения при создании пароля для приложения в гугл аккаунте
2)И что тогда должно прописываться в коде если мы убираем авторизацию через логин и пароль,а делаем через пароль
Библиотека,которая используется для входа на почту - javax.mail
Код,где идет коннект к почтовику:
Store store = session.getStore(“imaps”);
store.connect(
props.getProperty(“mail.smtp.host”),
props.getProperty(“mail.smpt.user”),
props.getProperty(“mail.smpt.password1”));
Решил вопрос:
1)в названии выбираешь почта, и в устройстве выбираешь с какого устр-ва будет производится вход
Но, у меня была проблема что вход выполнялся с линукс.Поэтому просто выбирал другое устройство и прописывал Linux
2)В методе connect всё так и остаётся. В пропертис там где указан mail.smpt.password1 вместо пароля,когда авторизируешся через почту+пароль, пишешь 16 значный пароль,который был сгенерирован на гугл аккаунте
Там токен выдается на полчаса (или час), потом нужно заново перегенерить. Оставили этот момент мануальщикам.
Сами перешли на mailosaur
Не знаю, всё ок.
Может раньше токен давался на полчаса(час). А может он даётся на это время чтобы успели им воспользоваться первый раз, а потом будет всё ок
Ну у меня тесты на след день прошли, так что…