Przejdź do treści

Etap 22 — Kiosk Helper + generator instalatora + hasła userów

Trzy wątki: nowy nadzorca kiosku (Helper), generator instalatora per-maszyna oraz ustawianie haseł userów z panelu.

Kiosk Helper

Jeden proces-nadzorca (C#/.NET 8) zastępujący 4 taski PowerShell wokół kiosku. Pełny opis, architektura, instalacja i audyt → Kiosk Helper. Wdrożony na LockerBox + DynaBox.

Generator instalatora per-maszyna

  • Backend: InstallerService.generateHelperInstaller()rotuje klucz API (bramka jak legacy: 409 dla kiosku ONLINE, ?force=true) i zwraca mały .cmd z zaszytym kluczem. GET :id/helper-installer (admin) → .cmd; GET installer/helper-setup.exe (klucz maszyny) → generic exe z /data/releases/helper/.
  • Web: DownloadInstallerButton kind="helper" (niebieski) w panelu maszyny obok starego.
  • Przebieg: .cmd self-elevate (UAC) → bierze generic setup.exe/VERYSILENT /APIBASE /APIKEY → Helper startuje skonfigurowany. Wariant uniwersalny (bez klucza) → config-gate + tray-nag.

Hasła userów z panelu

  • Backend: fix — resetPassword ustawiał temporary=true (blokuje login direct-grant); nowy ResetPasswordDto: własne hasło (min 8) lub generowane (14 znaków), temporary domyślnie false; clearRequiredActions. Poprawiony klient weryfikacji na smartbox-web (było web-panel).
  • Web: modal „Ustaw hasło" → „Wygeneruj losowe" / „Ustaw własne" (podgląd, walidacja); wynik pokazany raz (kopiuj). i18n PL+EN.

Pliki / endpointy

  • backend/src/machines/installer.service.ts, machines.controller.ts, users/users.service.ts.
  • Web: components/download-installer-button.tsx, _actions/installer.ts.
  • GET /machines/:id/helper-installer, GET /machines/installer/helper-setup.exe, POST /users/:id/reset-password.

Status

Wdrożone (backend/web). Generic setup.exe hostowany w /data/releases/helper/ na VM. Do zrobienia: czysty WS w kiosku, rollout IKEA, podpis instalatora — roadmapa.

Powiązane