Pular para o conteúdo

Bloqueie o quiosque de ambiente de trabalho

A aplicação de quiosque de ambiente de trabalho trata do que consegue a partir do seu próprio processo. Para quiosques públicos sem supervisão, acrescente um perfil ao nível do sistema operativo por baixo da aplicação, para que o próprio sistema operativo bloqueie as vias de saída que a aplicação, por natureza, não consegue fechar.

Quando é iniciada como cliente de quiosque, a aplicação de ambiente de trabalho:

  • Abre sem contornos e em ecrã inteiro, cobrindo toda a geometria do ecrã, incluindo a faixa da barra de menus.
  • No macOS, oculta a barra de menus e o dock via NSApplicationPresentationOptions nativo (.hideMenuBar | .hideDock) e reafirma-os sempre que a aplicação recupera o foco.
  • Bloqueia ⌘+Q (e o “Sair” do menu de aplicação) no macOS via o AWT QuitHandler.
  • Tenta suprimir outros atalhos comuns — Alt+F4, ⌘+W, Alt+Tab, ⌘+Tab, a tecla Windows/Super, F11 e Escape — para aqueles que o sistema operativo entrega à aplicação antes de atuar sobre eles.
  • Protege a saída com um PIN de gestor. O menu de gestor abre-se com cinco toques rápidos no canto superior direito (para ecrãs táteis) ou cinco pressões de F12 (para teclados físicos), e a introdução do PIN tem bloqueio de força bruta. Um operador supervisor define o PIN na primeira execução. Consulte Saia do bloqueio do quiosque e recupere o PIN para o fluxo completo do operador, incluindo a recuperação do PIN.

A aplicação de balcão não é bloqueada — é uma ferramenta do pessoal e mantém os controlos de janela normais.

O Windows oferece dois mecanismos de quiosque. O quiosque de ambiente de trabalho é uma aplicação Win32 clássica, pelo que o Shell Launcher é a opção certa — o Assigned Access (quiosque de aplicação única) só aceita aplicações UWP/MSIX ou o Microsoft Edge.

O Shell Launcher v2 substitui a shell predefinida do Windows (explorer.exe) pelo executável do quiosque Jonot para uma conta designada. Sem a shell do Explorer não há ambiente de trabalho, menu Iniciar nem barra de tarefas; se a aplicação sair, o Shell Launcher reinicia-a. Requer Windows 10/11 Enterprise, Education ou IoT Enterprise.

  1. Ative a funcionalidade opcional Shell Launcher (Enable-WindowsOptionalFeature -Online -FeatureName Client-EmbeddedShellLauncher), ou envie-a a partir do seu MDM.
  2. Crie uma conta local padrão (sem privilégios de administrador) dedicada ao quiosque.
  3. Configure o Shell Launcher para definir a shell personalizada dessa conta como o lançador do quiosque Jonot, com a ação de reiniciar ao sair — via o CSP do Shell Launcher a partir do seu MDM, ou localmente com o exemplo de PowerShell da ponte WMI documentado no guia do Shell Launcher.
  4. Defina a conta do quiosque para início de sessão automático e desative o ecrã de bloqueio, a suspensão e a mudança rápida de utilizador.

Para uma configuração rápida e supervisionada sem licenciamento Enterprise, o Assigned Access “kiosk browser” pode apontar diretamente para https://kiosk.jonot.io — mas executa a SPA no Edge sem a ponte nativa (sem impressão local, sem failover para anfitrião offline), pelo que é uma alternativa de recurso, não um substituto para a aplicação nativa.

macOS — guia de prevenção de saída ao nível do sistema operativo

Seção intitulada “macOS — guia de prevenção de saída ao nível do sistema operativo”

A aplicação oculta a barra de menus e o dock e bloqueia ⌘+Q do lado da aplicação. O perfil ao nível do sistema operativo cobre as vias que a aplicação não consegue fechar: Force Quit, Mission Control, mudança do Spaces, cantos ativos, Spotlight e mudança de aplicação.

Use uma conta gerida ou restrita dedicada com início de sessão automático. Implemente a partir de um MDM (Jamf Pro, Kandji, Mosyle, ou Intune):

  1. Conta padrão dedicada + início de sessão automático. Crie uma conta local sem privilégios de administrador, usada apenas para o quiosque. Ative o início de sessão automático para essa conta e desative a suspensão do sistema com um perfil de energia. Um payload de Managed Login Items garante que a aplicação de quiosque arranca no início da sessão.

  2. Desative o Force Quit (⌘+⌥+Esc). O Force Quit é a principal via de saída que a aplicação não consegue bloquear. Desative-o com um payload personalizado de preferências geridas para com.apple.loginwindow:

    DisableForceQuitCombinedKey = true
  3. Desative o Mission Control e a mudança do Spaces. Use com.apple.symbolichotkeys para desativar o atalho do Mission Control (tecla 32) e os atalhos de mudança do Spaces (teclas 79–81, 118–123).

  4. Desative os cantos ativos. Envie um payload de preferências com.apple.dock com as quatro chaves wvous-*-corner definidas como 0 (desativado).

  5. Desative o Spotlight. Desative o atalho de teclado do Spotlight via com.apple.symbolichotkeys (tecla 64 para a pesquisa do Spotlight). Nota: a chave do Spotlight do payload de Restrições padrão suprime apenas os resultados da Internet, não o próprio Spotlight — use a abordagem de symbolichotkeys em alternativa.

  6. Desative a mudança de aplicação (⌘+Tab). Desative o atalho do Application Switcher via com.apple.symbolichotkeys (tecla 27).

No Linux, o bloqueio mais limpo é uma sessão dedicada de GNOME Kiosk que executa a aplicação de quiosque Jonot como a única janela da sessão — sem painel, sem vista geral de Atividades e sem alternador de aplicações.

  1. Instale o pacote gnome-kiosk (disponível em versões recentes do Fedora e Debian/Ubuntu). Fornece um compositor Wayland mínimo que executa uma única aplicação em ecrã inteiro.
  2. Crie uma sessão personalizada que inicia o executável do quiosque Jonot como o seu comando de shell, para que a aplicação de quiosque seja a sessão.
  3. Configure o início de sessão automático do GDM para um utilizador padrão dedicado nessa sessão de quiosque.
  4. Reforce o sistema envolvente: desative a mudança de VT e o Ctrl+Alt+Backspace, bloqueie o acesso a TTY no logind, e desative o escurecimento automático do ecrã e a gestão de energia.

Como o compositor GNOME Kiosk nunca expõe um alternador ou uma vista geral, não há nenhuma via dentro da sessão para outra aplicação — o sistema operativo impõe o que a supressão de atalhos dentro do processo da aplicação apenas pode tentar.

CamadaProtege contra
Bloqueio na aplicaçãoBarra de menus/dock (macOS), ⌘+Q, saídas acidentais, atalhos capturáveis no processo
Perfil de quiosque do SOForce Quit, Mission Control, Spaces, cantos ativos, Spotlight, mudança de aplicação ao nível do SO
Invólucro físicoAcesso a hardware — portas USB, botão de energia, o teclado

Execute sempre o bloqueio na aplicação e um perfil ao nível do sistema operativo em conjunto, para instalações públicas sem supervisão. Um invólucro físico é a terceira camada para implementações totalmente resistentes a adulteração.