Anpassen der WebSocket-Überprüfung für ein Windows Admin Center-Gateway
Um den WebSocket-Zugriff zu schützen, überprüft die WebSocket-Verbindung nun den Ursprungszustand aus dem Browser, sodass keine externe Anwendung auf die WebSocket-API zugreifen kann, die für das Gateway definiert ist.
Anpassung der Überprüfung
Die Überprüfung kann angepasst werden, um verschiedene Bedingungen anzupassen.
Der Benutzer kann die WebSocket-Außerkraftsetzungseinstellung mit einem Windows Admin Center-Registrierungswert (HKLM\Software\Microsoft\ServerManagementGateway\WebSocketValidationOverride
) konfigurieren, um einen außergewöhnlichen Ursprungshostnamen und Ursprungsport anzugeben. Dazu gehören Platzhalternamen wie „*.mydomain.mycompany.net
“ oder einfach „*
“, um alle Namen zu akzeptieren. Der Platzhalter muss in einem einfachen Format wie „*.
“ angegeben werden und kann nicht mit einer komplexen Zeichenfolgen-Übereinstimmungsbedingung wie „something*something
“ kombiniert werden.
Beispiele für akzeptierte Formate sind:
- Lässt immer den für das aktuelle TLS-Zertifikat definierten Ursprungshost zu. (Antragstellername, alternative DNS-Namen)
- Lässt immer den für Windows Admin Center konfigurierten Ursprungsport zu.
- „
*
“: Akzeptiert beliebige Ursprungshosts und Ursprungsports. - „
*:9876
“: Akzeptiert beliebige Ursprungshosts und den Ursprungsport 9876. - „
:9876
““: Akzeptiert den Ursprungsport 9876. - „*
.my.domain.com
“: Akzeptiert den Ursprungshost <any.any.any...>.my.domain.com. - „
*.my.domain.com:9876
“: Akzeptiert den Ursprungshost <any.any.any...>.my.domain.com und den Ursprungsport 9876.
Präventionslogik
Das Gateway fügt ein Sitzungscookie (WAC-SESSION) für den Benutzerbrowser hinzu. Es ordnet die Browsersitzung und den Benutzernamen immer zu. Es verhindert, dass ein anderer Benutzer versucht, dieselbe Browsersitzung zu verwenden.
- Wenn die Benutzeroberfläche eine WebSocket-Verbindung startet, sendet der Browser das Sitzungscookies zurück an das Gateway.
- Das Gateway überprüft den authentifizierten Benutzernamen, der immer mit dem Sitzungscookie übereinstimmt.
Das Gateway sucht nach dem Ursprungsheader, bei dem es sich um die Endpunkt-URL handelt, die Windows Admin Center ursprünglich geladen hat.
- Das Gateway hat den Ursprungshost und Ursprungsport anhand der aktuellen SSL-Zertifikateinstellungen überprüft, die eine Liste der DNS-Hostnamen enthalten. Dies informiert die Benutzeroberfläche darüber,dass der Code von erwarteten DNS-Namenwebsites und -Ports geladen wird.
RDP-Verbesserungen
Bei einer RDP-TCP-Verbindung erlaubt das Gateway nur die Verwendung von Port 3389 (RDP) und Port 2179 (VM-Verbindung), sodass die TCP-Weiterleitungsfunktion nicht für andere Zwecke verwendet werden kann.
Möglicher Nebeneffekt
Wenn der Benutzer Windows Admin Center nach IP-Adresse verwendet oder mit etwas, das nicht im SSL-Zertifikat beschrieben wird, kann der Benutzer nicht auf WebSocket zugreifen, da dies kein vertrauenswürdiger Vorgang ist. Wenn Unterstützung erforderlich ist, ändern Sie den Registrierungswert HKLM\Software\Microsoft\ServerManagementGateway\WebSocketValidationOverride
, um die IP-Adresse festzulegen, oder geben Sie einfach „*
“ an, um die Überprüfung zu ignorieren.