WebAgent (topo)O WebAgent permitirá utilizar o Smartclient HTML, através dos Navegadores homologados, disponibilizando os mesmos acessos à estação de trabalho hoje só possiveis através do SmartClient Desktop, dentre eles: - Acesso nativo ao dispositivo, para:
- Leitura e gravação de arquivos
- Leitura de diretórios
- Integração com o pacote Microsoft Office
- Consumo de DLLs (Windows), SOs (Linux) e Dylibs (MacOS), para por exemplo, integrações com dispositivos, veja mais em ExecInDllOpen.
Em sua primeira liberação o WebAgent estará disponível para os Sistemas Operacionais: - Window 64 bits:
- Windows 10 Pro/Enterprise ou superior
- Windows 11 Pro/Enterprise ou superior
- Linux 64 bits:
- Ubuntu 20.04 LTS ou superior
- Red Hat Enterprise Linux Desktop 8.0 ou superior
- macOS 11.0 Big Sur ou superior.
Segurança (topo)
Os Navegadores modernos (ex: Edge, Chrome e Firefox) possuem um ambiente de execução segura, chamado Sandbox, que impede o acesso ao dispositivo onde está sendo executado. O WebAgent é um aplicativo seguro, que permitirá ao Smartclient HTML acesso às operações bloqueadas, citadas acima. Os mecanismos de segurança para execução do WebAgent são: - Conexão entre o Navegador e o WebAgent exclusivamente via Websocket Secure (wss);
- Conexão entre o Navegador e o WebAgent exclusivamente através do endereço localhost, impedindo acesso ao dispositivo, via Navegador, a partir de ataques externos;
- O protocolo de comunicação entre o Navegador e o WebAgent é o mesmo utilizado entre SmartClient Desktop e o Appserver, um motor utilizado a mais de 20 anos, e conhecidamente seguro.
Configuração (topo)O WebAgent estará acessível à estação de trabalho através de um ícone na bandeja do usuário, facilitando seu acesso e uso:
Para habilitar o uso pelo SmartClient HTML, na tela de configuração do WebApp no navegador, é possível escolher a porta de inicialização e conexão com o WebAgent (por padrão a porta é a 21021).
Exemplos de usoIntegração com o Microsoft Excel: (clique nas imagens para visualização)
Consumindo uma DLL via função ExeDllRun3():
Executando uma aplicação nativa via função ShellExecute():
Retornando as pastas de um diretório através da função Directory():
|