Files
shd-desktop-app/Windows/README.md
T
bulava92 9074b82c0c
Windows desktop build / publish (push) Canceled after 0s
Document desktop clients and align passkey client ID
2026-10-28 16:19:19 +03:00

3.2 KiB
Raw Blame History

SHD для Windows

Windows-клиент — отдельное WPF-приложение на .NET 10 с Microsoft Edge WebView2. Оно хранит профиль сайта локально, поддерживает DEV и PROD, вкладки и окна, загрузки, печать, масштаб, системные диалоги сайта, доступ к камере и микрофону для доменов SHD и инструменты разработчика.

Установка

  1. Скачайте SHD-Windows-x64.zip из артефактов успешной сборки Windows desktop build в GitHub Actions и распакуйте архив. Если успешной сборки ещё нет, соберите ZIP по инструкции ниже.
  2. Откройте PowerShell в распакованной папке и выполните powershell -ExecutionPolicy Bypass -File .\install.ps1. Скрипт установит приложение в %LOCALAPPDATA%\Programs\SHD, добавит ярлык в меню «Пуск» и зарегистрирует адрес возврата shd-auth://callback.
  3. Запустите SHD из меню «Пуск».

Нужен Microsoft Edge WebView2 Runtime. Обычно он уже установлен вместе с Microsoft Edge; если его нет, приложение откроет страницу установки Runtime.

Для удаления запустите uninstall.ps1 из распакованной папки или папки установки. Данные сайта и профиль WebView2 остаются в %LOCALAPPDATA%\SHDDesktop.

Вход по passkey

Вход начинается нажатием штатной кнопки passkey на странице SHD. Приложение перехватывает только #btnPasskeyLogin и #twoFactorPasskey на страницах входа, открывает авторизацию в системном браузере и принимает ответ через shd-auth://callback. Одноразовый код и PKCE verifier отправляются POST-запросом в WebView2, чтобы сессионная cookie осталась в профиле приложения.

Этот серверный поток сейчас подключён только на DEV. На PROD приложение сообщает об этом и не начинает отдельную авторизацию.

Для DEV сервер ожидает client_id=shd-desktop, callback URI — shd-auth://callback. Оба значения должны совпадать с настройками приложения и сервера.

Сборка

На Windows с установленным .NET 10 SDK запустите из PowerShell:

./Windows/Scripts/build.ps1

Скрипт публикует автономное приложение для win-x64 и создаёт Windows/dist/SHD-Windows-x64.zip. .NET не требуется устанавливать на компьютере пользователя; WebView2 Runtime нужен отдельно.