> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Доверие и безопасность

> Сведения об обработке данных, доставке сборок и распределении ответственности за безопасность.

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

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

Ayakaleaf Pro — это самостоятельно размещаемое расширение Overleaf Pro, его исходный код доступен в репозитории [ayaka-notes/ayakaleaf-pro](https://github.com/ayaka-notes/ayakaleaf-pro). Ваше развертывание определяет, где работают сервисы и где хранятся данные.

Безопасность зависит от вашей конфигурации и эксплуатации. Защитите доступ администратора, включите HTTPS и регулярно создавайте резервные копии.

Благодарим OpenAI за любезную поддержку. Мы будем регулярно использовать [Codex Security](https://chatgpt.com/codex/cloud/security/findings) для проверки нашего репозитория на наличие проблем безопасности и публично делиться результатами исправления уязвимостей.

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

По умолчанию данные приложения остаются в пределах вашего развертывания:

* MongoDB хранит данные пользователей и проектов.
* Redis хранит кеш и данные совместной работы в реальном времени.
* Локальные тома или S3-совместимое хранилище содержат файлы проектов.

По умолчанию наружу открыт только веб-сервис. Внутренние сервисы взаимодействуют через сеть Docker.

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

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

Некоторые функции вообще никогда не выполняют внешних запросов. Шаблоны хранятся и отдаются вашим собственным развертыванием. Python Script Runner выполняется в браузере пользователя через WebAssembly, а его среда выполнения отдаётся вашим собственным веб-сервисом, а не публичным CDN, поэтому код скриптов и их вывод никогда не попадают в сеть. Git Bridge доступен только во внутренней сети Docker. Полнотекстовый поиск по проекту, палитра символов, отслеживание изменений, история проекта и панель администратора полностью локальны. Контейнеры изолированной компиляции создаются с отключённой сетью.

Запросы остальных функций направляются к следующим адресатам. Каждый запрос исходит от веб-сервиса:

<Accordion title="ИИ-ассистенты и поиск">
  Функции ИИ по умолчанию отключены. Если они включены, чат и подсказки по ошибкам LaTeX отправляют промпты и соответствующий контекст проекта на конечную точку модели, заданную в `AI_BASE_URL`. Необязательный веб-поиск отправляет запросы в настроенный Tavily-совместимый сервис, а поиск по документации отправляет запросы на `DOCS_MCP_URL` (по умолчанию: `https://docs.overleaf.com/~gitbook/mcp`). Результаты поиска могут включаться в запросы к поставщику модели. Сведения о настройке и пользовательских параметрах см. в разделе [Интеграция с ИИ](/ru/on-premises/configuration/overleaf-toolkit/ai-integration "mention").
</Accordion>

<Accordion title="Интеграция с GitHub">
  **Интеграция с GitHub** обращается к `github.com` и `api.github.com`. Она включается для каждого пользователя отдельно путём привязки учётной записи GitHub, а при авторизации запрашиваются области `read:org`, `repo` и `workflow`. При отправке (push) полное содержимое файлов проекта загружается в виде Git-blob-объектов, которые затем собираются в деревья и коммиты. Также выполняются операции с ветками, ссылками, сравнением и слиянием, считываются профиль привязанной учётной записи, членство в организациях и список репозиториев. Содержимое проектов покидает ваше развертывание в обоих направлениях — рассматривайте привязанную учётную запись GitHub как канал экспорта для каждого подключённого к ней проекта.
</Accordion>

<Accordion title="Интеграция с Zotero">
  **Интеграция с Zotero** обращается к `www.zotero.org` для авторизации и к `api.zotero.org` для получения данных библиотеки. Она включается для каждого пользователя отдельно путём привязки учётной записи Zotero. Передаются данные OAuth-рукопожатия и API-ключ пользователя. Чтение происходит в одном направлении: библиотеки ссылок загружаются в формате BibTeX, а содержимое проектов не выгружается.
</Accordion>

<Accordion title="Интеграция с Mendeley">
  **Интеграция с Mendeley** обращается к `api.mendeley.com` как для авторизации, так и для получения данных библиотеки. Она включается для каждого пользователя отдельно путём привязки учётной записи Mendeley. При OAuth-рукопожатии запрашивается область `all` — единственная, которую предлагает API Mendeley, — однако Ayakaleaf выполняет только операции чтения: личные и групповые библиотеки ссылок загружаются в формате BibTeX, а содержимое проектов не выгружается. Токены доступа обновляются автоматически; если Mendeley отзывает разрешение, сохранённые учётные данные удаляются, и пользователю предлагается привязать учётную запись заново.
</Accordion>

<Accordion title="Страницы документации">
  **Страницы документации** загружаются с `https://learnwiki.overleaf.com`; адрес настраивается в `WIKI_URL`. Запросы выполняет веб-сервис, а не браузер пользователя, поэтому вышестоящая вики видит адрес вашего сервера и никогда — адреса ваших пользователей. Передаётся только название запрашиваемой страницы, а ответы кешируются на диске. Если исходящий трафик документации недопустим, укажите в `WIKI_URL` собственное зеркало или заблокируйте этот адрес.
</Accordion>

<Accordion title="Доставка электронной почты">
  **Доставка электронной почты** обращается к тому SMTP-серверу или почтовому API, который вы настроите; значения по умолчанию нет. Адреса получателей и содержимое писем покидают ваше развертывание, включая ссылки для сброса пароля и приглашения.
</Accordion>

<Accordion title="Две необязательные проверки (PWD/reCAPTCHA)">
  <strong>Две необязательные проверки по умолчанию отключены.</strong> Проверка скомпрометированных паролей неактивна, если не задана `HAVE_I_BEEN_PWNED_ENABLED`; при включении она отправляет на `api.pwnedpasswords.com` первые символы SHA-1-хеша пароля, но никогда не сам пароль. Проверка CAPTCHA неактивна, если не настроен ключ сайта reCAPTCHA, а при активации обращается к `www.google.com`.
</Accordion>

<Accordion title="Единый вход (OAuth/LDAP/SAML)">
  **Единый вход** обращается только к указанному вами поставщику удостоверений, а передаваемые данные зависят от протокола. При использовании LDAP веб-сервис подключается к вашему каталогу напрямую: выполняет привязку (bind) с настроенной вами служебной учётной записью, выполняет поиск в пределах заданных вами базы, фильтра и списка атрибутов и проверяет пароль, введённый в форме входа, по вашему каталогу, так что имя пользователя и пароль попадают на сервер каталога. Включение контактов на основе каталога приводит к дополнительному поиску для заполнения списка контактов. При использовании OIDC веб-сервис обменивает код авторизации на вашей конечной точке токенов, а затем вызывает вашу конечную точку user-info, по умолчанию запрашивая области `openid profile email`; это настраивается с помощью `OVERLEAF_OIDC_SCOPE`. При использовании SAML запрос аутентификации передаётся поставщику удостоверений через браузер пользователя, а не по прямому соединению с сервером. Во всех трёх случаях имя и адрес электронной почты пользователя приходят от поставщика, а не отправляются ему, и затем сохраняются в локальной записи пользователя.
</Accordion>

<Accordion title="Учётные данные сторонних сервисов">
  **Учётные данные сторонних сервисов** — токены OAuth и API-ключи — хранятся в MongoDB в записи пользователя и зашифрованы алгоритмом AES-256-CTR с отдельными для каждой записи солью и вектором инициализации. Они никогда не хранятся в открытом виде и никогда не записываются в журналы. Ключ шифрования берётся из `${PROVIDER}_CIPHER_PASSWORD`, если эта переменная задана (как для Zotero и Mendeley); в противном случае он генерируется при первом использовании и сохраняется в вашем томе данных с правами доступа только для владельца. Создавайте резервную копию этого ключа вместе с томом данных: если он будет утерян, сохранённые учётные данные невозможно будет расшифровать, и всем пользователям придётся заново привязать свои учётные записи.
</Accordion>

<Accordion title="Файлы, связанные по URL">
  **Файлы, связанные по URL**, загружаются вашим развертыванием от имени пользователя, поэтому адресатом является любой адрес, указанный пользователем. Связанные по URL файлы отключены, если вы не добавите `url` в `ENABLED_LINKED_FILE_TYPES`, а конфигурация по умолчанию его не содержит. Внешний импорт ZIP и TeX через API Open in Overleaf также использует тот же компонент `linked-url-proxy`. Прямые запросы разрешают целевое имя хоста и отклоняют запрещённые сетевые диапазоны с учётом настроенных исключений для разрешённых ресурсов. Если настроен `OVERLEAF_LINKED_URL_OUTBOUND_PROXY`, имена хостов разрешает исходящий прокси, поэтому он сам должен применять ограничения на доступ к внутренней сети; сетевые проверки приложения применяются только к URL, содержащим IP-адреса. Подробнее см. в разделе [Внешние URL — исходящий прокси](/ru/on-premises/configuration/overleaf-toolkit/external-url#outbound-proxy "mention"). Эти запросы загружают указанный URL, а не выгружают файлы проекта.
</Accordion>

Если ваша политика требует списка разрешённых исходящих адресов, разрешите только хосты тех функций, которые вы включили: `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, невозможно ограничить списком хостов, поскольку адрес выбирает пользователь в момент запроса; ограничьте эту функцию с помощью собственной настройки разрешённых ресурсов в компоненте прокси или оставьте её отключённой.

<Warning>
  Если вы развертываете Ayakaleaf Pro с включённым хранилищем [s3.md](/ru/on-premises/configuration/overleaf-toolkit/s3 "mention"), шифруются ли данные, хранящиеся в S3?

  *<strong>Нет.</strong>* Данные не шифруются. Все фрагменты истории, файлы шаблонов, PDF и прочие файлы хранятся в открытом виде. Если вы используете стороннее внешнее хранилище S3, уделите особое внимание безопасности и конфиденциальности данных.
</Warning>

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

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

Изолированной компиляции требуется доступ к Docker-сокету хоста. Ограничьте администрирование хоста кругом доверенных операторов.

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

Контейнерные образы Ayakaleaf Pro собираются и публикуются с помощью GitHub Actions. Образы доступны в публичном GitHub Container Registry.

Образы поддерживают `amd64` и `arm64`. При загрузке образа Docker выбирает подходящую архитектуру.

Не используйте тег `latest` в рабочей среде. Закрепляйте явную версию, а лучше — дайджест образа.

Тестируйте каждое обновление в нерабочей среде. Перед развертыванием проверяйте образ, конфигурацию и интеграции.

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

Ayakaleaf Pro и связанные с ним репозитории функций находятся в открытом доступе. Это позволяет пользователям просматривать изменения и отслеживать исходные источники.

Открытый исходный код делает возможной независимую проверку. Однако сам по себе он не гарантирует воспроизводимость сборок выпусков.

Перед обновлением проверьте:

* Тег выпуска или коммит.
* Версию или дайджест образа.
* Сторонние зависимости и лицензионные требования.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.