Bezpieczne połączenie za pomocą komunikacji wirtualnej holograficznej — omówienie

Jeśli jesteś nowym użytkownikm holographic Remoting, możesz przeczytać nasze omówienie.

Uwaga

Te wskazówki dotyczą komunikacji zdalniej holograficznej na komputerach z systemem HoloLens 2 i Windows z systemem Windows Mixed Reality.

Ta strona zawiera omówienie zabezpieczeń sieci dla usługi Holographic Remoting. Znajdziesz informacje o:

  • Bezpieczeństwo w kontekście komunikacji zdalnie holograficznej i dlaczego może być potrzebne
  • Zalecane miary na podstawie różnych przypadków użycia

Holographic Remoting Security

Holographic Remoting wymienia informacje za pośrednictwem sieci. Jeśli nie są stosowane żadne środki bezpieczeństwa, przeciwnicy w tej samej sieci mogą naruszyć integralność komunikacji lub uzyskać dostęp do poufnych informacji.

Przykładowe aplikacje i aplikacja Holographic Remoting Player w Sklepie Windows są wyłączone zabezpieczeń. Dzięki temu próbki są łatwiejsze do zrozumienia. Pomaga również szybciej rozpocząć pracę z programowaniem.

W przypadku testowania pól lub produkcji zdecydowanie zalecamy włączenie zabezpieczeń w rozwiązaniu Holographic Remoting.

Zabezpieczenia w systemie Holographic Remoting, po poprawnym skonfigurowaniu dla danego przypadku użycia, zapewniają następujące gwarancje:

  • Autentyczność: zarówno gracz, jak i aplikacja zdalna mogą mieć pewność, że druga strona jest tym, kim twierdzą, że
  • Poufność: żadna inna firma nie może odczytać informacji wymienianych między graczem a aplikacją zdalną
  • Integralność: odtwarzacz i zdalny mogą wykrywać wszelkie zmiany podczas przesyłania komunikacji

Ważne

Aby móc korzystać z funkcji zabezpieczeń, należy zaimplementować zarówno niestandardowy odtwarzacz, jak i niestandardową aplikację zdalną przy użyciu interfejsów API Windows Mixed Reality lub OpenXR.

Uwaga

Począwszy od wersji 2.4.0 aplikacji zdalnych przy użyciu interfejsu API OpenXR można utworzyć. Omówienie sposobu ustanawiania bezpiecznego połączenia w środowisku OpenXR można znaleźć tutaj.

Planowanie implementacji zabezpieczeń

Po włączeniu zabezpieczeń w holographic Remoting biblioteka komunikacji równorzędnej automatycznie włączy funkcję szyfrowania i integralności dla wszystkich danych wymienianych za pośrednictwem sieci.

Jednak zapewnienie prawidłowego uwierzytelniania wymaga dodatkowej pracy. To, co dokładnie musisz zrobić, zależy od przypadku użycia, a pozostała część tej sekcji dotyczy ustalenia niezbędnych kroków.

Ważne

Ten artykuł może zawierać tylko ogólne wskazówki. Jeśli nie masz pewności, rozważ skonsultowanie się z ekspertem ds. zabezpieczeń, który może udzielić wskazówek specyficznych dla twojego przypadku użycia.

Pierwsza terminologia: podczas opisywania połączeń sieciowych będą używane terminy klient i serwer . Serwer jest po stronie nasłuchiwania połączeń przychodzących na znanym adresie punktu końcowego, a klient jest tym, który łączy się z punktem końcowym serwera.

Uwaga

Role klienta i serwera nie są powiązane z tym, czy aplikacja działa jako odtwarzacz, czy jako zdalna. Chociaż przykłady mają odtwarzacz w roli serwera, można łatwo odwrócić role, jeśli lepiej pasuje do twojego przypadku użycia.

Planowanie uwierzytelniania serwer-klient

Serwer używa certyfikatów cyfrowych, aby udowodnić swoją tożsamość klientowi. Klient weryfikuje certyfikat serwera podczas fazy uzgadniania połączenia. Jeśli klient nie ufa serwerowi, spowoduje to zakończenie połączenia w tym momencie.

Sposób, w jaki klient weryfikuje certyfikat serwera i jakiego rodzaju certyfikaty serwera mogą być używane, zależy od przypadku użycia.

Przypadek użycia 1: Nazwa hosta serwera nie jest stała lub serwer nie jest w ogóle adresowany przez nazwę hosta.

W tym przypadku użycia nie jest praktyczne (a nawet możliwe) wystawienie certyfikatu dla nazwy hosta serwera. Zalecamy zweryfikowanie odcisku palca certyfikatu. Podobnie jak odcisk palca człowieka, odcisk palca jednoznacznie identyfikuje certyfikat.

Ważne jest, aby przekazać odcisk palca klientowi poza pasmem. Oznacza to, że nie można wysłać go za pośrednictwem tego samego połączenia sieciowego, które jest używane do komunikacji wirtualnej. Zamiast tego można ręcznie wprowadzić go do konfiguracji klienta lub przeskanować kod QR klienta.

Przypadek użycia 2: Serwer można uzyskać za pośrednictwem stabilnej nazwy hosta.

W tym przypadku użycia serwer ma określoną nazwę hosta i wiesz, że ta nazwa prawdopodobnie nie ulegnie zmianie. Następnie możesz użyć certyfikatu wystawionego dla nazwy hosta serwera. Zaufanie zostanie ustanowione na podstawie nazwy hosta i łańcucha zaufania certyfikatu.

Jeśli wybierzesz tę opcję, klient musi znać nazwę hosta serwera i certyfikat główny z wyprzedzeniem.

Planowanie uwierzytelniania klient-serwer

Klienci uwierzytelniają się na serwerze przy użyciu tokenu wolnego formularza. To, co powinien zawierać ten token, będzie zależeć od twojego przypadku użycia:

Przypadek użycia 1: Wystarczy zweryfikować tożsamość aplikacji klienckiej.

W tym przypadku użycia wspólny wpis tajny może być wystarczający. Ten wpis tajny musi być wystarczająco złożony, że nie można go odgadnąć.

Dobry wspólny wpis tajny to losowy identyfikator GUID, który jest ręcznie wprowadzany zarówno w konfiguracji serwera, jak i klienta. Aby go utworzyć, możesz na przykład użyć New-Guid polecenia w programie PowerShell.

Upewnij się, że ten wspólny wpis tajny nigdy nie jest przekazywany za pośrednictwem niezabezpieczonych kanałów. Biblioteka komunikacji równorzędnej gwarantuje, że wspólny wpis tajny jest zawsze wysyłany jako zaszyfrowany i tylko do zaufanych elementów równorzędnych.

Przypadek użycia 2: Należy również zweryfikować tożsamość użytkownika aplikacji klienckiej.

Wspólny wpis tajny nie wystarczy, aby uwzględnić ten przypadek użycia. Zamiast tego możesz użyć tokenów utworzonych przez dostawcę tożsamości. Przepływ pracy uwierzytelniania przy użyciu dostawcy tożsamości wygląda następująco:

  • Klient autoryzuje dostawcę tożsamości i żąda tokenu
  • Dostawca tożsamości generuje token i wysyła go do klienta
  • Klient wysyła ten token do serwera za pośrednictwem usługi Holographic Remoting
  • Serwer weryfikuje token klienta względem dostawcy tożsamości

Przykładem dostawcy tożsamości jest Platforma tożsamości Microsoft.

Podobnie jak w poprzednim przypadku użycia, upewnij się, że te tokeny nie są wysyłane za pośrednictwem niezabezpieczonych kanałów lub w inny sposób uwidocznionych.

Zobacz też