Personalización de la validación de WebSocket para la puerta de enlace de Windows Admin Center

Para proteger el acceso a WebSocket, la conexión de WebSocket validará ahora el estado del origen desde el explorador, por lo que ninguna aplicación externa pueda obtener acceso a la API de WebSocket que se define en la puerta de enlace.

Personalización de la validación

La validación se puede ajustar para personalizar distintas condiciones.

El usuario puede configurar el valor de invalidación de WebSocket en un valor del Registro de Windows Admin Center, HKLM\Software\Microsoft\ServerManagementGateway\WebSocketValidationOverride, para especificar un nombre de host de origen y un puerto de origen excepcionales. Incluye un nombre comodín como «*.mydomain.mycompany.net» o simplemente «*» para aceptar todo. Se debe especificar un carácter comodín como «*.» y no se puede combinar con una condición de coincidencia de cadena compleja del tipo «something*something».

A continuación, se presentan ejemplos de formatos aceptados:

  • Siempre se permite el host de origen definido en el certificado TLS actual. (nombre del firmante, nombres DNS alternativos)
  • Siempre se permite el puerto de origen configurado en Windows Admin Center
  • «*»: acepte cualquier host de origen y puerto de origen
  • «*:9876»: acepte cualquier host de origen y el puerto de origen 9876
  • «:9876»: acepte el puerto de origen 9876
  • «.my.domain.com»: acepte el host de origen <any.any.any...>.my.domain.com
  • «*.my.domain.com:9876»: acepte el host de origen <any.any.any...>.my.domain.com y el puerto de origen 9876

Lógica de prevención

La puerta de enlace agrega una cookie de sesión (WAC-SESSION) para el explorador de usuarios. Asocia siempre la sesión del explorador y el nombre de usuario. Evita que un usuario diferente intente usar la sesión del explorador.

  • Cuando la interfaz de usuario inicia una conexión de WebSocket, el explorador devuelve la cookie de sesión a la puerta de enlace.
  • La puerta de enlace valida el nombre de usuario autenticado que siempre coincide con la cookie de sesión.

La puerta de enlace busca el encabezado de origen, que es la dirección URL del punto de conexión que se cargó Windows Admin Center sitio original.

  • El host de origen y el puerto de origen validados por la puerta de enlace con la configuración actual del certificado SSL, que incluye la lista de nombres de host DNS. Lo anterior indica que el código de la interfaz de usuario se carga desde los sitios de nombres DNS y el puerto esperados.

Mejora de RDP

En la conexión TCP de RDP, la puerta de enlace solo permite usar el puerto 3389 (RDP) y el puerto 2179 (conexión de máquina virtual), por lo que no se puede usar la característica de reenvío TCP con otro propósito.

Efecto secundario posible

Si el usuario usa Windows Admin Center por dirección IP o algo que no se describe en el certificado SSL, el usuario no puede acceder a WebSocket porque no es confiable. Si necesita admitirlo, modifique el valor de registro HKLM\Software\Microsoft\ServerManagementGateway\WebSocketValidationOverride para establecer la dirección IP o simplemente especifique «*» para omitir la validación.