Перейти к основному содержимому
Версия: 7.0

Приложение Пассворк

Приложение Пассворк — для работы с Пассворком без браузера. Подходит для сотрудников, которые предпочитают отдельное окно приложения или работают в средах, где запрещено или невозможно использовать браузер. Подключается к вашему серверу Пассворка по URL бэкенда. Функциональность аналогична веб-версии.


Описание и возможности

Приложение даёт доступ ко всем возможностям Пассворка так же, как веб-интерфейс, но в отдельном окне. Вся бизнес‑логика и права доступа определяются сервером Пассворка.

Как это работает:

  • Вход через браузер. Первый вход (или вход после смены сервера/учётной записи) выполняется на странице Пассворка в браузере. После успешной авторизации браузер возвращает одноразовый токен в приложение, и там создаётся сессия. Таким образом поддерживаются все способы входа, настроенные на сервере: логин/пароль, LDAP, SSO, 2FA, Passkeys.
  • Клиентское шифрование. Если на сервере включено клиентское шифрование, приложение также запрашивает мастер‑пароль. Мастер‑ключ хранится локально в зашифрованном виде; для шифрования используются средства операционной системы.
  • Локальное хранение данных. Адрес сервера, токены и состояние сессии сохраняются на рабочей станции.

Платформы: Windows (x64), macOS, Linux (AppImage, .deb, .rpm).

Локальное хранилище приложения

Служебные данные приложения Пассворк (URL сервера, access/refresh‑токены, информация о сессии, флаги сценариев, при включённом клиентском шифровании — мастер‑ключ) хранятся на стороне пользователя.

  • Файл БД. Все записи лежат в одном локальном файле БД app-data.db (NeDB) в каталоге данных приложения (userData):
    • Windows: %APPDATA%\Passwork\app-data.db;
    • macOS: ~/Library/Application Support/Passwork/app-data.db;
    • Linux: ~/.config/Passwork/app-data.db (или путь из XDG_CONFIG_HOME).
  • Что хранится открыто, а что шифруется.
    • В открытом виде — технические настройки (например, URL сервера, размеры окна).
    • В зашифрованном виде — токены, мастер‑ключ и другие чувствительные поля.
  • Как шифруются данные.
    • Для чувствительных полей используется safeStorage — обёртка над встроенным хранилищем секретов ОС:
      • Windows: DPAPI/хранилище учётных данных, привязанное к аккаунту пользователя;
      • macOS: Связка ключей (Keychain);
      • Linux: совместимый Secret Service (GNOME Keyring, KWallet и т.п.).
    • Ключи шифрования не хранятся в файлах приложения: они управляются операционной системой. В app-data.db сохраняются только зашифрованные значения (base64‑строки).

Подключение к серверу

Подключение состоит из двух этапов: указание адреса сервера и авторизация. Сессия в приложении создаётся за счёт одноразового токена, который пользователь получает после входа в веб-интерфейсе.

Выбор хоста

На экране входа пользователь вводит URL сервера Пассворка (например, passwork.company.com). Приложение проверяет, что сервер доступен и отвечает. После успешной проверки происходит переход в браузер для входа.

При смене сервера или учётной записи тот же экран используется снова: можно ввести новый URL и пройти авторизацию заново. Один и тот же экземпляр Десктопа можно последовательно подключать к разным серверам (например, тестовому и боевому), но одновременно приложение работает только с одним сервером.

Вход через браузер

  1. В приложении пользователь нажимает действие Войти через браузер. Открывается веб-интерфейс Пассворка с адресом <URL_сервера>/desktop.
  2. В браузере пользователь входит в Пассворк так же, как в веб-интерфейс: логин и пароль, LDAP, SSO, 2FA или Passkey — в зависимости от настроек сервера.
  3. После успешного входа веб-интерфейс создаёт одноразовый токен для Десктопа и перенаправляет браузер на ссылку вида passwork://login?desktopToken=<токен>.
  4. Операционная система передаёт эту ссылку приложению Пассворк. Приложение получает токен, обменивает его на сессию и сохраняет сессию локально.
  5. Если на сервере включено клиентское шифрование, в приложении будет запрошен мастер-пароль.

Если после редиректа приложение не открылось или не подхватило токен, стоит проверить, что приложение установлено и схема passwork:// не блокируется.

Схема подключения

    [Десктоп] → ввод хоста → проверка доступа → браузер <хост>/desktop
→ [Браузер] вход (логин, 2FA, SSO…) → passwork://login?desktopToken=...
→ [Десктоп] обмен токена на сессию → (при необходимости) мастер-пароль → главный экран

Требования к окружению

  • Сервер Пассворка должен быть доступен по HTTPS с компьютера, где установлено приложение.
  • Страница <URL_сервера>/desktop и запросы к API не должны блокироваться файрволом, прокси или корпоративными правилами.
  • На компьютере должно быть установлено приложение Пассворк; при установке регистрируется обработчик схемы passwork://.

Схема passwork://

passwork:// — пользовательская схема URL (custom URL scheme), которую обрабатывает приложение Пассворк, а не браузер. В документации и настройках это часто называют deep link (глубокой ссылкой).

Где используется: для возврата из браузера в Десктоп после входа на странице /desktop (браузер перенаправляет на passwork://login?desktopToken=..., ОС передаёт ссылку приложению, и оно завершает вход по токену).

При установке Пассворка регистрируется обработчик схемы passwork в ОС. Если приложение уже запущено, новая ссылка passwork:// передаётся в то же окно, а не открывает второе.

Для администраторов: если в организации блокируются или перехватываются пользовательские схемы URL, переход по passwork:// не сработает, и пользователь не вернётся из браузера в приложение после входа. Нужно разрешить открытие ссылок passwork:// в приложении Пассворк или исключить его из блокировки.

Обновление и совместимость версий

Приложение Пассворк всегда обновляется до версии, совместимой с вашим сервером Пассворка. Сервер сам подбирает подходящую ветку Десктопа и предлагает пользователю установить или обновить приложение.

  • В сетях с доступом в интернет установщик Десктопа доступен прямо из веб‑интерфейса Пассворка.
  • В закрытых сетях инсталлеры и обновления раздаются через отдельный сервер обновлений или корпоративные средства развёртывания.