Personalizar a validação do WebSocket para gateway do Windows Admin Center
Para proteger o acesso ao WebSocket, a conexão com o WebSocket agora validará o estado de origem do navegador para que nenhum aplicativo externo possa obter acesso à API WebSocket definida no gateway.
Personalização da validação
A validação pode ser ajustada para personalizar várias condições.
O usuário pode definir a configuração de substituição do WebSocket em um valor de registro do Windows Admin Center, HKLM\Software\Microsoft\ServerManagementGateway\WebSocketValidationOverride
, para especificar o nome do host de origem excepcional e a porta de origem. Isso inclui o nome curinga, como "*.mydomain.mycompany.net
" ou apenas "*
" para aceitar tudo. O curinga deve ser especificado como "*.
" e não pode ser combinado com uma condição de correspondência de cadeia de caracteres complexa, como "something*something
".
O exemplo de formatos aceitos é o seguinte:
- Sempre permite o host de origem definido no certificado TLS atual. (nome da entidade, nomes DNS alternativos)
- Sempre permite que a porta de origem esteja configurada para Windows Admin Center
- "
*
" – aceitar qualquer host de origem e porta de origem - "
*:9876
" – aceitar qualquer host de origem e porta de origem 9876 - "
:9876
" – aceitar a porta de origem 9876 - "*
.my.domain.com
" – aceitar o host de origem <any.any.any...>.my.domain.com - "
*.my.domain.com:9876
" – aceitar o host de origem <any.any.any...>.my.domain.com e a porta de origem 9876
Lógica de prevenção
O gateway adiciona um cookie de sessão (WAC-SESSION) para o navegador do usuário. Ele associa sempre a sessão do navegador e o nome de usuário. Ele impede que usuários diferentes tentem usar a mesma sessão do navegador.
- Quando a interface do usuário inicia uma conexão com o WebSocket, o navegador envia o cookie de sessão de volta para o Gateway.
- O gateway valida sempre o nome de usuário autenticado correspondente ao cookie de sessão.
O gateway procura o cabeçalho de origem, que é a URL do ponto de extremidade em que o site original do Windows Admin Center foi carregado.
- O gateway validou o host de origem e a porta de origem em relação às configurações atuais do certificado SSL, que inclui a lista de nomes do host DNS. Isso informa que o código da interface do usuário é carregado de sites de nomes DNS e porta esperados.
Aprimoramento de RDP
Na conexão TCP RDP, o gateway só permite usar a porta 3389 (RDP) e a porta 2179 (conexão VM); portanto, o recurso de encaminhamento TCP não pode ser usado para nenhuma outra finalidade.
Possível efeito colateral
Se o usuário usar o Windows Admin Center por endereço IP ou algo não descrito no certificado SSL, não poderá acessar o WebSocket porque ele não é confiável. Se precisar dar suporte, modifique o valor do registro HKLM\Software\Microsoft\ServerManagementGateway\WebSocketValidationOverride
para definir o endereço IP ou apenas especifique "*
" para ignorar a validação.