Разделы документации
Gmail
Индексация почты Gmail в Charo — сервис-аккаунт с делегированием и синхронизация прав.
Что индексируется
- Почтовые переписки (треды) пользователей домена Google Workspace.
Предварительные требования
- Google Workspace и права супер-администратора для настройки сервис-аккаунта с делегированием (domain-wide delegation).
Получение учётных данных
Настройка аналогична Google Drive, но со scope’ами Gmail:
-
В консоли Google Cloud создайте проект, включите Gmail API и Admin SDK API, создайте сервис-аккаунт и JSON-ключ.
-
В админ-консоли Workspace добавьте делегирование для client ID сервис-аккаунта со scope’ами:
https://www.googleapis.com/auth/gmail.readonly https://www.googleapis.com/auth/admin.directory.user.readonly https://www.googleapis.com/auth/admin.directory.group.readonly -
В Charo загрузите «Ключ сервисного аккаунта Google» и укажите «Email основного администратора».
Альтернатива — OAuth от имени одного пользователя («OAuth-токены Google»): индексируется только его ящик.
Настройка в Charo
Дополнительных полей нет: ящики определяются автоматически по пользователям домена. Задайте название коннектора и расписание в расширенной конфигурации.
Синхронизация прав
Поддерживается и включена по смыслу источника: каждый пользователь находит в поиске только свои письма. Требуется активная лицензия.
Почта — чувствительный источник: подключайте Gmail только с синхронизацией прав, иначе письма станут доступны всем, кому виден коннектор.
Ограничения и частота обновления
- Скорость ограничена квотами Gmail API на пользователя; большие домены индексируются постепенно.
- Обновления забираются инкрементально по расписанию коннектора.
Устранение неполадок
«client not authorized for any of the scopes requested»
Делегирование не настроено или scope’ы отличаются от списка выше — сверьте настройку в админ-консоли (см. разбор на странице прав Google Drive — механика та же).
Пустая индексация
Проверьте «Email основного администратора» и что Gmail API включён в проекте Google Cloud.