Hoppa till innehåll

Lås ner kiosken för skrivbordet

Kioskappen för skrivbordet hanterar det den kan från sin egen process. För obemannade publika kiosker, lägg ett OS-nivå-lager under appen så att själva operativsystemet blockerar de utrymningsvägar appen fundamentalt inte kan stänga.

När den startas som kioskklienten gör skrivbordsappen följande:

  • Öppnas kantlöst och i helskärm, och täcker hela skärmens geometri inklusive menyradsremsan.
  • macOS, döljer menyraden och dockan via de nativa NSApplicationPresentationOptions (.hideMenuBar | .hideDock) och återställer dem varje gång appen får fokus igen.
  • Blockerar ⌘+Q (och appmenyns “Quit”) på macOS via AWT QuitHandler.
  • Försöker undertrycka andra vanliga kortkommandon — Alt+F4, ⌘+W, Alt+Tab, ⌘+Tab, Windows-/Super-tangenten, F11 och Escape — för de som operativsystemet levererar till appen innan det hanterar dem själv.
  • Spärrar avslut bakom ett hanterar-PIN. Hanterarmenyn öppnas med fem snabba tryck i övre högra hörnet (för pekskärmar) eller fem F12-tryck (för fysiska tangentbord), och PIN-inmatningen har skydd mot brute-force-attacker. En övervakande operatör anger PIN-koden vid första körning. Se Lämna kiosklåsning och återställ PIN-koden för hela operatörsflödet, inklusive PIN-återställning.

Kassaappen är inte låst ner — den är ett personalverktyg och behåller normala fönsterkontroller.

Windows — Assigned Access / Shell Launcher

Section titled “Windows — Assigned Access / Shell Launcher”

Windows erbjuder två kioskmekanismer. Kiosken för skrivbordet är en klassisk Win32-skrivbordsapplikation, så Shell Launcher är rätt val — Assigned Access (enapps-kiosk) accepterar bara UWP/MSIX-appar eller Microsoft Edge.

Shell Launcher v2 ersätter Windows standardskal (explorer.exe) med Jonot-kioskens körbara fil för ett angivet konto. Utan Explorer-skal finns inget skrivbord, ingen Start-meny och ingen aktivitetsfält; om appen avslutas startar Shell Launcher om den. Kräver Windows 10/11 Enterprise, Education eller IoT Enterprise.

  1. Aktivera den valfria funktionen Shell Launcher (Enable-WindowsOptionalFeature -Online -FeatureName Client-EmbeddedShellLauncher), eller skicka den från din EMM.
  2. Skapa ett dedikerat standard- (icke-administratör-) lokalt konto för kiosken.
  3. Konfigurera Shell Launcher att sätta det kontots anpassade skal till Jonot-kioskens startprogram, med åtgärden starta-om-vid-avslut — via Shell Launcher CSP från din EMM, eller lokalt med WMI-brygg-PowerShell-exemplet dokumenterat i Shell Launcher-guiden.
  4. Ställ in kioskkontot på automatisk inloggning och inaktivera låsskärmen, viloläget och snabb användarväxling.

För en snabb övervakad konfiguration utan Enterprise-licensiering kan “kioskwebbläsaren” i Assigned Access peka direkt på https://kiosk.jonot.io — men den kör SPA:n i Edge utan den nativa bryggan (ingen lokal utskrift, ingen offline-värdfailover), så det är en reservlösning, inte en ersättning för den nativa appen.

macOS — körhandbok för utrymningsskydd på OS-nivå

Section titled “macOS — körhandbok för utrymningsskydd på OS-nivå”

Appen döljer menyraden och dockan och blockerar ⌘+Q på appsidan. OS-nivå-profilen täcker vägarna appen inte kan stänga: Force Quit, Mission Control, Spaces-växling, hot corners, Spotlight och appväxling.

Använd ett dedikerat hanterat eller begränsat konto med autoinloggning. Driftsätt från en EMM (Jamf Pro, Kandji, Mosyle eller Intune):

  1. Dedikerat standardkonto + autoinloggning. Skapa ett lokalt icke-administratörskonto som bara används för kiosken. Aktivera autoinloggning för det kontot och inaktivera systemets viloläge med en energiprofil. En Managed Login Items-nyttolast säkerställer att kioskappen startar vid sessionsstart.

  2. Inaktivera Force Quit (⌘+⌥+Esc). Force Quit är den primära utrymningsvägen som appen inte kan blockera. Inaktivera den med en anpassad managed-preferences-nyttolast för com.apple.loginwindow:

    DisableForceQuitCombinedKey = true
  3. Inaktivera Mission Control och Spaces-växling. Använd com.apple.symbolichotkeys för att inaktivera genvägen för Mission Control (tangent 32) och genvägarna för Spaces-växling (tangenterna 79–81, 118–123).

  4. Inaktivera hot corners. Skicka en com.apple.dock-nyttolast med alla fyra wvous-*-corner-nycklar satta till 0 (inaktiverat).

  5. Inaktivera Spotlight. Inaktivera Spotlights tangentbordsgenväg via com.apple.symbolichotkeys (tangent 64 för Spotlight-sökning). Obs: den vanliga Restrictions-nyttolastens Spotlight-nyckel dämpar bara Internet-resultat, inte Spotlight självt — använd i stället symbolichotkeys-metoden.

  6. Inaktivera appväxling (⌘+Tab). Inaktivera genvägen för Application Switcher via com.apple.symbolichotkeys (tangent 27).

På Linux är den renaste låsningen en dedikerad GNOME Kiosk-session som kör Jonot-kioskappen som sessionens enda fönster — ingen panel, ingen aktivitetsöversikt och ingen appväxlare.

  1. Installera paketet gnome-kiosk (tillgängligt i senare Fedora- och Debian/Ubuntu-utgåvor). Det tillhandahåller en minimal Wayland-kompositör som kör en app i helskärm.
  2. Skapa en anpassad session som startar Jonot-kioskens körbara fil som sitt skalkommando, så att kioskappen är sessionen.
  3. Konfigurera GDM-autoinloggning för en dedikerad standardanvändare till den kiosksessionen.
  4. Härda det omgivande systemet: inaktivera VT-växling och Ctrl+Alt+Backspace, blockera TTY-åtkomst i logind, och inaktivera automatisk skärmavstängning och strömhantering.

Eftersom GNOME Kiosk-kompositören aldrig exponerar en växlare eller översikt finns det ingen väg inom sessionen till en annan applikation — operativsystemet upprätthåller det som appens processinterna undertryckning av kortkommandon bara kan försöka.

LagerSkyddar mot
Låsning inuti appenMenyrad/docka (macOS), ⌘+Q, oavsiktliga avslut, kortkommandon som kan fångas processinternt
OS-nivå-kioskprofilForce Quit, Mission Control, Spaces, hot corners, Spotlight, appväxling på OS-nivå
Fysisk inneslutningÅtkomst till hårdvara — USB-portar, strömknapp, tangentbordet

Kör alltid låsningen inuti appen och en OS-nivå-profil tillsammans för obemannade publika placeringar. En fysisk inneslutning är det tredje lagret för helt manipuleringssäkra installationer.