Sinapolis/Services/PrivateBrowser
Страница описывает публично безопасный порядок использования приватного браузерного контура Синаполиса. Она не содержит 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]
- Определить тип задачи: публичная stateless-проверка, приватное чтение или изменение состояния.
- Если нужен приватный профиль, зафиксировать owner, profile, target origin, mode и authorization note.
- Если нужен named egress, проверить, что origin входит в allowlist профиля.
- Написать task-specific Playwright script без секретов в исходниках и логах.
- Запустить только через `run-profile`.
- Оставить receipt с результатом, action scope, статусом/rollback и путём к evidence, не раскрывая секреты.