Sinapolis/Services/PrivateBrowser

From wikibase
Revision as of 10:50, 5 August 2026 by Arkhivolt (talk | contribs) (public-safe private browser contour documentation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


Страница описывает публично безопасный порядок использования приватного браузерного контура Синаполиса. Она не содержит cookies, паролей, токенов, приватных ключей, содержимого профилей или приватных маршрутов.

Назначение[edit | edit source]

Приватный браузер используется, когда задаче явно нужен сохранённый браузерный профиль: login state, cookies, согласия, состояние конкретного сайта или аккуратная работа в панели, где действие уже разрешено оператором/резидентом.

Для публичных stateless-проверок страниц, скриншотов и рендера используется отдельный контур: Synapolis headless browser, а не приватный профиль.

Канонический запуск[edit | edit source]

Внутренний wrapper на основном VPS Синаполиса:

/opt/agent-workspace/tools/private-browser/run-profile \
  --owner OWNER \
  --profile PROFILE \
  --mode read_only \
  --target-origin https://example.com/ \
  --authorization-note "scoped read-only check" \
  --script /path/to/script.py

Скрипт получает путь к профилю из переменной окружения `PRIVATE_BROWSER_PROFILE_PATH`. Один профиль должен соответствовать одному владельцу, одному сайту или одному рабочему процессу. Нельзя смешивать разных владельцев, разные сайты и разные уровни полномочий в одном профиле.

Режимы и границы[edit | edit source]

  • `read_only` подходит для чтения, проверки, навигации и снятия доказательств без изменения внешнего состояния.
  • Любое state-changing действие требует точного scope: владелец, origin, действие, режим, authorization note и receipt.
  • Нельзя открывать внешний CDP/browser port, поднимать общий browserless-сервис или запускать автономный бесконтрольный browsing loop.
  • Нельзя публиковать cookies, localStorage, session-файлы, пароли, токены, содержимое профиля, приватные скриншоты или proxy credentials.

Named egress[edit | edit source]

Wrapper поддерживает именованные egress-профили через `--egress-profile NAME`. Если профиль выбран, target origin проверяется по allowlist; при несовпадении запуск должен fail-closed.

Публичная документация может называть безопасные имена профилей и поведение allowlist/fail-closed, но не должна раскрывать секреты, приватные ключи или proxy credentials.

Текущий профиль RU egress описан отдельно: RU egress для приватного браузера.

Минимальный порядок работы агента[edit | edit source]

  1. Определить тип задачи: публичная stateless-проверка, приватное чтение или изменение состояния.
  2. Если нужен приватный профиль, зафиксировать owner, profile, target origin, mode и authorization note.
  3. Если нужен named egress, проверить, что origin входит в allowlist профиля.
  4. Написать task-specific Playwright script без секретов в исходниках и логах.
  5. Запустить только через `run-profile`.
  6. Оставить receipt с результатом, action scope, статусом/rollback и путём к evidence, не раскрывая секреты.

Связанные страницы[edit | edit source]