Кейс

Inco Browser Manager

Windows-приложение изолированных Chromium-профилей

Кейс Inco Browser Manager: desktop-продукт для изоляции браузерных профилей — безопасность и контроль сессий без хаоса вкладок.

Пакет под этот кейс →

Desktop Security .NET
Кейс Inco Browser Manager: Windows-приложение изолированных Chromium-профилей
  • Изолированные Chromium-профили
  • HTTP/HTTPS/SOCKS5 прокси
  • AES-256-GCM + DPAPI
  • Готовый установщик под Windows

О проекте

Inco Browser Manager

Inco Browser Manager — это Windows-приложение для управления изолированными браузерными профилями на базе Chromium. Проект предназначен для работы с разными веб-кабинетами, банками, маркетплейсами, CRM и другими сервисами, где важно разделять сессии, cookies, кэш, прокси и учетные данные между профилями.

Главная идея проекта: пользователь создает отдельный профиль под конкретного клиента, компанию или задачу, после чего приложение запускает отдельное окно Chromium с собственным user-data-dir, отдельным кэшем, своей сессией и индивидуальными настройками прокси. Это позволяет безопасно работать с несколькими аккаунтами и веб-кабинетами без смешивания cookies, авторизаций и локальных данных.

Что делает проект

Приложение позволяет:

  • создавать и редактировать браузерные профили
  • хранить для каждого профиля название, клиента, тип рабочего пространства, стартовый URL, заметки и учетные данные
  • запускать каждый профиль в отдельном изолированном Chromium-процессе
  • использовать отдельные cookies, cache, localStorage и sessionStorage для каждого профиля
  • назначать отдельный прокси на каждый профиль
  • поддерживать HTTP, HTTPS и SOCKS5 прокси, включая прокси с логином и паролем
  • задавать bypass-правила для сайтов, которые должны открываться напрямую
  • защищенно хранить логины, пароли и другие секреты
  • блокировать повторный запуск одного и того же профиля, если он уже открыт
  • вести аудит действий
  • делать backup и recovery данных
  • запускаться как self-contained Windows-приложение с bundled Chromium

проверять при старте наличие нужного runtime и окружения.

Как работает

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

При запуске профиля приложение формирует команду запуска Chromium с отдельными параметрами:

  • отдельная папка пользовательских данных
  • отдельная папка кэша
  • стартовый URL
  • уникальный идентификатор профиля
  • startup-token для проверки сессии
  • настройки прокси

remote debugging port для контроля запуска. После запуска создается session.json, где фиксируется информация о процессе браузера: PID, профиль, startup-token, путь к user-data-dir и состояние сессии. При повторном открытии приложение проверяет, жив ли процесс, совпадает ли командная строка Chromium с нужным профилем, и не дает случайно открыть один и тот же профиль дважды.

Если профиль использует прокси с авторизацией, приложение поднимает локальный proxy-auth bridge. Chromium подключается к локальному адресу, а bridge уже проксирует трафик во внешний HTTP/SOCKS5 прокси с нужным логином и паролем. Это позволяет не передавать чувствительные данные напрямую в командную строку браузера.

Безопасность

В проекте реализовано локальное шифрование чувствительных данных. Секреты профиля, логины, пароли и данные прокси не хранятся в открытом виде.

Используется комбинированный подход:

  • DPAPI для защиты мастер-ключа на машине пользователя
  • AES-256-GCM для шифрования полей
  • SQLCipher для защищенного локального хранения данных

recovery package для восстановления доступа через passphrase. Также предусмотрена логика резервного копирования, восстановления и обработки поврежденной базы данных.

Архитектура

Проект построен по слоистой архитектуре:

  • UI — WPF-интерфейс, окна, страницы, ViewModel
  • Application — сценарии приложения, сервисы, DTO, валидация
  • Domain — сущности профилей, учетных данных, прокси, сессий
  • Infrastructure — база данных, шифрование, запуск Chromium, proxy bridge, backup, логирование

Shared — общие исключения и утилиты. Такое разделение упрощает поддержку, тестирование и дальнейшее развитие приложения.

Технологии

Основной стек:

  • C#
  • .NET 8
  • WPF
  • MVVM
  • Entity Framework Core
  • SQLite / SQLCipher
  • DPAPI
  • AES-256-GCM
  • Serilog
  • Chromium runtime
  • PowerShell scripts
  • Inno Setup

xUnit / unit tests.

Интерфейс

В приложении реализован WPF-интерфейс с собственной дизайн-системой:

  • токены цветов
  • типографика
  • общие стили контролов
  • переключаемая плотность интерфейса
  • виртуализированный список профилей
  • страницы профилей, деталей, backup, аудита

окна создания и редактирования профиля. Все стили вынесены в XAML resource dictionaries, без inline-оформления в окнах.

Инсталлятор и поставка

Для проекта подготовлена self-contained поставка под Windows. Приложение может запускаться на чистом компьютере без ручной установки зависимостей.

В поставку входят:

  • опубликованное .NET-приложение
  • bundled Chromium runtime
  • Inno Setup installer
  • установка в Program Files
  • настройка прав доступа
  • импорт необходимых сертификатов

preflight-проверка окружения при запуске. Практическая польза Проект решает реальную задачу: безопасная работа с большим количеством веб-кабинетов и аккаунтов без смешивания данных между ними.

Примеры использования:

  • бухгалтерия и работа с банковскими кабинетами
  • агентства, которые ведут несколько клиентов
  • работа с маркетплейсами
  • тестирование веб-сервисов в разных окружениях
  • разделение рабочих сессий по компаниям

запуск профилей через разные прокси.

Стек

C# · .NET 8 · WPF · SQLite · Chromium

Хочу так же

Оставить заявку → Диагностика 90 сек
Telegram Позвонить