Narzędzie lokalnego tunelu PubSub platformy Azure
Lokalny tunel Web PubSub udostępnia lokalne środowisko programistyczne dla klientów w celu ulepszenia lokalnego środowiska deweloperskiego. Nie ma już potrzeby używania narzędzi innych firm do uwidaczniania portów lokalnych, użyj tunelu lokalnego Web PubSub jako tunelu między usługą Web PubSub i serwerem lokalnym, aby zapewnić bezpieczeństwo i bezpieczeństwo lokalnego środowiska projektowego.
Tunel lokalny Web PubSub zapewnia:
- Sposób tunelowania ruchu z usługi Web PubSub do serwera lokalnego
- Sposób wyświetlania kompleksowego przepływu danych z klienta do usługi Web PubSub przez tunel i do serwera lokalnego
- Udostępnia osadzony serwer nadrzędny, aby rozpocząć pracę
- Zapewnia prostego klienta umożliwiającego rozpoczęcie opracowywania serwerów
Korzyści:
- Zabezpieczone lokalnie: nie trzeba ujawniać serwera lokalnego publicznemu
- Zabezpieczone połączenie: użyj zasad dostępu Microsoft Entra ID i Web PubSub, aby nawiązać połączenie
- Prosta konfiguracja: zestawy szablonów adresów URL do
tunnel:///<your_server_path>
- Inspekcja danych: żywy widok danych i przepływu pracy
Warunek wstępny
Instalowanie
npm install -g @azure/web-pubsub-tunnel-tool
Użycie
Usage: awps-tunnel [options] [command]
A local tool to help tunnel Azure Web PubSub traffic to local web app and provide a vivid view to the end to end workflow.
Options:
-v, --version Show the version number.
-h, --help Show help details.
Commands:
status Show the current configuration status.
bind [options] Bind configurations to the tool so that you don't need to specify them every time running the tool.
run [options] Run the tool.
help [command] Display help details for subcommand.
You could also set WebPubSubConnectionString environment variable if you don't want to configure endpoint.
Przygotowywanie poświadczeń
Obsługiwane są zarówno parametry połączenia, jak i Microsoft Entra ID.
Korzystanie z parametry połączenia
W portalu usługi Web PubSub skopiuj parametry połączenia z portalu usługi Web PubSub.
Ustaw parametry połączenia na lokalną zmienną środowiskową i uruchom .
awps-tunnel
export WebPubSubConnectionString="<your connection string>"
Korzystanie z tożsamości platformy Azure
W portalu usługi Web PubSub przejdź do karty Kontrola dostępu i dodaj rolę
Web PubSub Service Owner
do tożsamości.W terminalu lokalnym użyj interfejsu wiersza polecenia
az login
platformy Azure, aby zalogować się do swojej tożsamości.Alternatywnie można ustawić informacje o koncie za pomocą zdefiniowanych zmiennych środowiskowych lub użyć uwierzytelniania tożsamości zarządzanej bezpośrednio w przypadku obsługiwanych usług platformy Azure.
Uruchom
W portalu usługi Web PubSub przejdź do karty Ustawienia, określ szablon adresu URL procedury obsługi zdarzeń, który ma rozpoczynać się od
tunnel:///
, aby zezwolić na połączenie tunelu.Uruchom narzędzie za pomocą centrum ustawionego wcześniej, na przykład połącz się z punktem końcowym
https://<awps-host-name>.webpubsub.azure.com
za pomocą centrumchat
:awps-tunnel run --hub chat --endpoint https://<awps-host-name>.webpubsub.azure.com
Możesz również użyć
awps-tunnel bind --hub chat --endpoint https://<awps-host-name>.webpubsub.azure.com
polecenia , aby zapisać konfigurację, a następnieawps-tunnel run
.Zobaczysz dane wyjściowe, takie jak
Open webview at: http://127.0.0.1:4000
, otwórz link w przeglądarce i zobaczysz stan tunelu i przepływ pracy.Teraz przejdź na kartę Serwer i zaznacz pole wyboru Wbudowany serwer echo , aby uruchomić wbudowany serwer nadrzędny z kodem podobnym do przykładowego kodu pokazanego poniżej.
Alternatywnie możesz uruchomić własny serwer nadrzędny pod adresem http://localhost:3000. Możesz również określić opcję
--upstream http://localhost:<custom-port>
, kiedyawps-tunnel run
lubawps-tunnel bind
skonfigurować własny serwer nadrzędny na porcie niestandardowym. Na przykład uruchom poniższy kod, aby uruchomić ten przykładowy serwer nadrzędny, po uruchomieniu nadrzędnego nadrzędnego serwera, nadrzędna usługa obsługuje żądania do http://localhost:3000/eventhandler/.git clone https://github.com/Azure/azure-webpubsub.git cd tools/awps-tunnel/server/samples/upstream npm install npm start
Teraz przejdź do karty Klient , wybierz
Connect
, aby uruchomić testowe połączenie Protokołu WebSocket z usługą Azure Web PubSub. Zobaczysz, że ruch przechodzi przez sieć Web PubSub do tunelu lokalnego, a na koniec dociera do nadrzędnego serwera. Karta tunelu zawiera szczegółowe informacje o żądaniu i odpowiedziach, zapewniając żywy widok tego, co żąda serwera nadrzędnego i co odpowiada z nadrzędnego serwera.
Under the hood (Za kulisami usługi Azure RMS — działanie)
Jak działa narzędzie tunelowania? Pod maską uruchamia połączenie tunelu z usługą Web PubSub. Połączenie tunelu to trwałe połączenie (WebSocket) łączy się z /server/tunnel
punktem końcowym i jest uznawane za jedno rodzaj połączeń serwera. Możesz również użyć reguł listy ACL w usłudze, aby wyłączyć takie połączenia z nawiązywaniem połączenia.