Skip to main content
Ayakaleaf Pro работает в вашей инфраструктуре. Вы контролируете его данные, доступ и сетевые границы. На этой странице описана модель безопасности по умолчанию, а также перечислены ваши эксплуатационные обязанности.

Надёжен ли и безопасен ли Ayakaleaf Pro?

Ayakaleaf Pro — это самостоятельно размещаемое расширение Overleaf Pro, его исходный код доступен в репозитории ayaka-notes/ayakaleaf-pro. Ваше развертывание определяет, где работают сервисы и где хранятся данные. Безопасность зависит от вашей конфигурации и эксплуатации. Защитите доступ администратора, включите HTTPS и регулярно создавайте резервные копии. Благодарим OpenAI за любезную поддержку. Мы будем регулярно использовать Codex Security для проверки нашего репозитория на наличие проблем безопасности и публично делиться результатами исправления уязвимостей.

Куда попадают мои данные?

По умолчанию данные приложения остаются в пределах вашего развертывания:
  • MongoDB хранит данные пользователей и проектов.
  • Redis хранит кеш и данные совместной работы в реальном времени.
  • Локальные тома или S3-совместимое хранилище содержат файлы проектов.
По умолчанию наружу открыт только веб-сервис. Внутренние сервисы взаимодействуют через сеть Docker.

Будут ли мои данные отправляться третьим сторонам или получаться от них?

Ничто не покидает ваше развертывание, если только вы не включите функцию, которой это требуется. Ayakaleaf Pro не отправляет телеметрию, аналитику использования и отчёты о сбоях. В конфигурации по умолчанию отправка отчётов об ошибках и аналитика отключены. Некоторые функции вообще никогда не выполняют внешних запросов. Шаблоны хранятся и отдаются вашим собственным развертыванием. Python Script Runner выполняется в браузере пользователя через WebAssembly, а его среда выполнения отдаётся вашим собственным веб-сервисом, а не публичным CDN, поэтому код скриптов и их вывод никогда не попадают в сеть. Git Bridge доступен только во внутренней сети Docker. Полнотекстовый поиск по проекту, палитра символов, отслеживание изменений, история проекта и панель администратора полностью локальны. Контейнеры изолированной компиляции создаются с отключённой сетью. Запросы остальных функций направляются к следующим адресатам. Каждый запрос исходит от веб-сервиса:
Функции ИИ по умолчанию отключены. Если они включены, чат и подсказки по ошибкам LaTeX отправляют промпты и соответствующий контекст проекта на конечную точку модели, заданную в AI_BASE_URL. Необязательный веб-поиск отправляет запросы в настроенный Tavily-совместимый сервис, а поиск по документации отправляет запросы на DOCS_MCP_URL (по умолчанию: https://docs.overleaf.com/~gitbook/mcp). Результаты поиска могут включаться в запросы к поставщику модели. Сведения о настройке и пользовательских параметрах см. в разделе Интеграция с ИИ.
Интеграция с GitHub обращается к github.com и api.github.com. Она включается для каждого пользователя отдельно путём привязки учётной записи GitHub, а при авторизации запрашиваются области read:org, repo и workflow. При отправке (push) полное содержимое файлов проекта загружается в виде Git-blob-объектов, которые затем собираются в деревья и коммиты. Также выполняются операции с ветками, ссылками, сравнением и слиянием, считываются профиль привязанной учётной записи, членство в организациях и список репозиториев. Содержимое проектов покидает ваше развертывание в обоих направлениях — рассматривайте привязанную учётную запись GitHub как канал экспорта для каждого подключённого к ней проекта.
Интеграция с Zotero обращается к www.zotero.org для авторизации и к api.zotero.org для получения данных библиотеки. Она включается для каждого пользователя отдельно путём привязки учётной записи Zotero. Передаются данные OAuth-рукопожатия и API-ключ пользователя. Чтение происходит в одном направлении: библиотеки ссылок загружаются в формате BibTeX, а содержимое проектов не выгружается.
Интеграция с Mendeley обращается к api.mendeley.com как для авторизации, так и для получения данных библиотеки. Она включается для каждого пользователя отдельно путём привязки учётной записи Mendeley. При OAuth-рукопожатии запрашивается область all — единственная, которую предлагает API Mendeley, — однако Ayakaleaf выполняет только операции чтения: личные и групповые библиотеки ссылок загружаются в формате BibTeX, а содержимое проектов не выгружается. Токены доступа обновляются автоматически; если Mendeley отзывает разрешение, сохранённые учётные данные удаляются, и пользователю предлагается привязать учётную запись заново.
Страницы документации загружаются с https://learnwiki.overleaf.com; адрес настраивается в WIKI_URL. Запросы выполняет веб-сервис, а не браузер пользователя, поэтому вышестоящая вики видит адрес вашего сервера и никогда — адреса ваших пользователей. Передаётся только название запрашиваемой страницы, а ответы кешируются на диске. Если исходящий трафик документации недопустим, укажите в WIKI_URL собственное зеркало или заблокируйте этот адрес.
Доставка электронной почты обращается к тому SMTP-серверу или почтовому API, который вы настроите; значения по умолчанию нет. Адреса получателей и содержимое писем покидают ваше развертывание, включая ссылки для сброса пароля и приглашения.
Две необязательные проверки по умолчанию отключены. Проверка скомпрометированных паролей неактивна, если не задана HAVE_I_BEEN_PWNED_ENABLED; при включении она отправляет на api.pwnedpasswords.com первые символы SHA-1-хеша пароля, но никогда не сам пароль. Проверка CAPTCHA неактивна, если не настроен ключ сайта reCAPTCHA, а при активации обращается к www.google.com.
Единый вход обращается только к указанному вами поставщику удостоверений, а передаваемые данные зависят от протокола. При использовании LDAP веб-сервис подключается к вашему каталогу напрямую: выполняет привязку (bind) с настроенной вами служебной учётной записью, выполняет поиск в пределах заданных вами базы, фильтра и списка атрибутов и проверяет пароль, введённый в форме входа, по вашему каталогу, так что имя пользователя и пароль попадают на сервер каталога. Включение контактов на основе каталога приводит к дополнительному поиску для заполнения списка контактов. При использовании OIDC веб-сервис обменивает код авторизации на вашей конечной точке токенов, а затем вызывает вашу конечную точку user-info, по умолчанию запрашивая области openid profile email; это настраивается с помощью OVERLEAF_OIDC_SCOPE. При использовании SAML запрос аутентификации передаётся поставщику удостоверений через браузер пользователя, а не по прямому соединению с сервером. Во всех трёх случаях имя и адрес электронной почты пользователя приходят от поставщика, а не отправляются ему, и затем сохраняются в локальной записи пользователя.
Учётные данные сторонних сервисов — токены OAuth и API-ключи — хранятся в MongoDB в записи пользователя и зашифрованы алгоритмом AES-256-CTR с отдельными для каждой записи солью и вектором инициализации. Они никогда не хранятся в открытом виде и никогда не записываются в журналы. Ключ шифрования берётся из ${PROVIDER}_CIPHER_PASSWORD, если эта переменная задана (как для Zotero и Mendeley); в противном случае он генерируется при первом использовании и сохраняется в вашем томе данных с правами доступа только для владельца. Создавайте резервную копию этого ключа вместе с томом данных: если он будет утерян, сохранённые учётные данные невозможно будет расшифровать, и всем пользователям придётся заново привязать свои учётные записи.
Файлы, связанные по URL, загружаются вашим развертыванием от имени пользователя, поэтому адресатом является любой адрес, указанный пользователем. Связанные по URL файлы отключены, если вы не добавите url в ENABLED_LINKED_FILE_TYPES, а конфигурация по умолчанию его не содержит. Внешний импорт ZIP и TeX через API Open in Overleaf также использует тот же компонент linked-url-proxy. Прямые запросы разрешают целевое имя хоста и отклоняют запрещённые сетевые диапазоны с учётом настроенных исключений для разрешённых ресурсов. Если настроен OVERLEAF_LINKED_URL_OUTBOUND_PROXY, имена хостов разрешает исходящий прокси, поэтому он сам должен применять ограничения на доступ к внутренней сети; сетевые проверки приложения применяются только к URL, содержащим IP-адреса. Подробнее см. в разделе Внешние URL — исходящий прокси. Эти запросы загружают указанный URL, а не выгружают файлы проекта.
Если ваша политика требует списка разрешённых исходящих адресов, разрешите только хосты тех функций, которые вы включили: github.com и api.github.com для GitHub, www.zotero.org и api.zotero.org для Zotero, api.mendeley.com для Mendeley, learnwiki.overleaf.com или ваш собственный WIKI_URL для документации, api.pwnedpasswords.com для проверки паролей, www.google.com для CAPTCHA, а также ваш собственный почтовый сервер и поставщик удостоверений. Если включены функции ИИ или поиск, также разрешите настроенные конечные точки модели, веб-поиска и MCP документации. Запретите адреса, которые не требуются включёнными функциями. Если исходящий трафик необходимо централизованно проверять или журналировать, интеграции с GitHub, Zotero и Mendeley можно направить через HTTP-прокси, задав GITHUB_SYNC_PROXY_URL, MENDELEY_PROXY_URL и ZOTERO_PROXY_URL. Загрузка связанных URL и удалённый импорт могут использовать OVERLEAF_LINKED_URL_OUTBOUND_PROXY. Файлы, связанные по URL, невозможно ограничить списком хостов, поскольку адрес выбирает пользователь в момент запроса; ограничьте эту функцию с помощью собственной настройки разрешённых ресурсов в компоненте прокси или оставьте её отключённой.
Если вы развертываете Ayakaleaf Pro с включённым хранилищем s3.md, шифруются ли данные, хранящиеся в S3?Нет. Данные не шифруются. Все фрагменты истории, файлы шаблонов, PDF и прочие файлы хранятся в открытом виде. Если вы используете стороннее внешнее хранилище S3, уделите особое внимание безопасности и конфиденциальности данных.

Изолирована ли компиляция проектов?

Ayakaleaf Pro поддерживает изолированную компиляцию. Каждая компиляция выполняется в отдельном контейнере. По умолчанию у изолированных контейнеров нет доступа к сети. Это снижает риск обращения к ресурсам внутренней сети. Изолированной компиляции требуется доступ к Docker-сокету хоста. Ограничьте администрирование хоста кругом доверенных операторов.

Можно ли доверять сборкам CI и образам контейнеров?

Контейнерные образы Ayakaleaf Pro собираются и публикуются с помощью GitHub Actions. Образы доступны в публичном GitHub Container Registry. Образы поддерживают amd64 и arm64. При загрузке образа Docker выбирает подходящую архитектуру. Не используйте тег latest в рабочей среде. Закрепляйте явную версию, а лучше — дайджест образа. Тестируйте каждое обновление в нерабочей среде. Перед развертыванием проверяйте образ, конфигурацию и интеграции.

Открыт ли исходный код?

Ayakaleaf Pro и связанные с ним репозитории функций находятся в открытом доступе. Это позволяет пользователям просматривать изменения и отслеживать исходные источники. Открытый исходный код делает возможной независимую проверку. Однако сам по себе он не гарантирует воспроизводимость сборок выпусков. Перед обновлением проверьте:
  • Тег выпуска или коммит.
  • Версию или дайджест образа.
  • Сторонние зависимости и лицензионные требования.
Последнее изменение 5 октября 2026 г.