Google хоронит расширение PHP IMAP
Google сообщил владельцам G Suite аккаунтов о том, что с 15 феврался 2021 года авторизация в Gmail и других продуктах будет работать только через OAuth.
Для IMAP-авторизации разработчикам предлагается использовать способ автризации под названием SASL XOAUTH2. Но дело в том, что стандартное расширение PHP IMAP (а именно функция imap_open) не способно авторизовываться по предлагаемому Google алгоритму.
Т.е. если в своих проектах вы используете стандартное расширение PHP IMAP, то скоро владельцы G Suite аккаунтов не смогут пользоваться вашим приложением. Также не исключено, что со временем не Google «позаботится» и о подключении к обычным Gmail-аккаунтам и не переведёт IMAP-авторизацию на OAuth.
Для справки, на одном только GitHub сейчас более 121 тысячи скриптов и проектов, использующих стандартное расширение PHP IMAP.
Какие могут быть варианты решения
- Сообщать в своём приложении, что оно несовместимо с Gmail-аккаунтами G Suite и предлагать завести почту на каком-нибудь другом сервисе.
- Передалать свои проекты на использование библиотеки Zend Mail, которая может авторизовываться по предлагаемому Google алгоритму, но не может похвастаться быстродействием по сравнению с нативным расширением PHP IMAP.
- Попробовать уговорить Google принимать OAuth-токен в пароле IMAP: github.com/google/gmail-oauth2-tools/issues/18. Вполне, простое и логичное решение. Тогда все имеющиеся IMAP-библиотеки, включая PHP IMAP, продолжат функционировать и будут способны получать почту из Gmail, передавая OAuth-токен в пароле IMAP.