Co to jest Azure Sphere?

Azure Sphere to zabezpieczona, wysoka platforma aplikacji z wbudowanymi funkcjami komunikacji i zabezpieczeń dla urządzeń połączonych z Internetem. Składa się ona z zabezpieczonego, połączonego mikrokontrolera zwrotnicy (MCU), niestandardowego systemu operacyjnego Linux (high-level) oraz opartej na chmurze usługi zabezpieczeń, która zapewnia ciągłe, odnawialne zabezpieczenia.

Usługa Azure Sphere MCU integruje możliwości przetwarzania w czasie rzeczywistym z możliwością uruchamiania systemu operacyjnego wysokiego poziomu. McU Azure Sphere wraz z systemem operacyjnym i platformą aplikacji umożliwia tworzenie zabezpieczonych urządzeń połączonych z Internetem, które można aktualizować, sterować, monitorować i obsługiwać zdalnie. Połączone urządzenie, które zawiera mcu Azure Sphere, obok istniejących mcu lub zamiast nich, zapewnia większe bezpieczeństwo, produktywność i szanse. Na przykład:

  • Zabezpieczone środowisko aplikacji, uwierzytelnione połączenia i korzystanie z urządzeń peryferyjnych minimalizuje między innymi zagrożenia bezpieczeństwa spowodowane fałszowaniem, nieuczciwym oprogramowaniem lub atakami typu "odmowa usługi".
  • Aktualizacje oprogramowania mogą być automatycznie wdrażane z chmury na dowolnym podłączonym urządzeniu w celu rozwiązywania problemów, zapewnienia nowych funkcji lub przeciwdziałania pojawiającym się metodom ataku, zwiększając w ten sposób produktywność personelu pomocy technicznej.
  • Dane dotyczące użycia produktów można zgłaszać w chmurze za pośrednictwem bezpiecznego połączenia, aby pomóc w diagnozowaniu problemów i projektowaniu nowych produktów, zwiększając tym samym szanse na obsługę produktu, pozytywne interakcje z klientami i przyszły rozwój.

Usługa zabezpieczeń Azure Sphere jest integralną częścią usługi Azure Sphere. Korzystając z tej usługi, mcus Azure Sphere bezpiecznie i bezpiecznie łączyć się z chmurą i siecią Web. Usługa gwarantuje, że urządzenie uruchamia się tylko z autoryzowaną wersją oryginalnego, zatwierdzonego oprogramowania. Ponadto zapewnia zabezpieczony kanał, za pośrednictwem którego firma Microsoft może automatycznie pobierać i instalować aktualizacje systemu operacyjnego na wdrożonych urządzeniach w terenie w celu złagodzenia problemów z zabezpieczeniami. Ani wytwórców, ani użytkowników końcowych nie jest wymagana interwencja, zamykając tym samym wspólną dziurę w zabezpieczeniach.

Uwaga

Usługa Azure Sphere odwołuje się do interfejsu opartego na interfejsie PAPI jako Azure Sphere (Starsza wersja) i zintegrowanego interfejsu publicznego podglądu usługi Azure Resource Manager jako Azure Sphere (integrated).

Podczas publicznej wersji zapoznawczej zaleca się używanie usługi Azure Sphere (zintegrowanej) tylko do celów programistycznych i testowych. Najlepszym rozwiązaniem jest to, że przypadki użycia w produkcji nie powinny korzystać z produktu Preview. W związku z tym w przypadku użycia produkcyjnego zalecamy dalsze korzystanie z istniejącego interfejsu usługi zabezpieczeń Azure Sphere, obecnie znanego jako Azure Sphere (Starsza wersja), który nadal jest w pełni obsługiwany i ogólnie dostępny.

Scenariusz w usłudze Azure Sphere

Aby zrozumieć, jak usługa Azure Sphere działa w realnym otoczeniu, rozważ ten scenariusz.

Firma Contoso, Ltd., jest producentem produktów agd, który osadza w zmywarkach narzędzie Azure Sphere MCU. Zmywarka DW100 łączy MCU z kilkoma czujnikami i wbudowaną aplikacją wysokiego poziomu działającą na platformie Azure Sphere MCU. Aplikacja komunikuje się z usługą zabezpieczeń Azure Sphere i usługami firmy Contoso w chmurze. Na poniższym diagramie przedstawiono ten scenariusz:

Łączy się z systemem IoT, usługą zabezpieczeń i wykazem producentów w chmurzeContoso połączonymi z siecią zmywarkami

Rozpoczynając od lewego górnego rogu i poruszając się zgodnie z ruchem wskazówek zegara:

  • Firma Microsoft udostępnia aktualizacje systemu operacyjnego Azure Sphere za pośrednictwem usługi Zabezpieczeń Azure Sphere.

  • Contoso product engineering wprowadza aktualizacje do swojej aplikacji DW100 za pośrednictwem usługi zabezpieczeń Azure Sphere.

  • Usługa zabezpieczeń Azure Sphere bezpiecznie wdraża zaktualizowany system operacyjny i oprogramowanie aplikacji Contoso DW100 w zmywarkach w lokalizacjach użytkowników końcowych.

  • Obsługa zmywarki Firmy Contoso komunikuje się z usługą zabezpieczeń Azure Sphere, aby określić, która wersja oprogramowania Azure Sphere i oprogramowania aplikacji DW100 powinna być uruchomiona na każdym urządzeniu użytkownika końcowego, oraz zebrać wszelkie dane raportowania błędów, które zostały zgłoszone do usługi. Obsługa zmywarki Firmy Contoso komunikuje się również z usługą firmy Contoso w chmurze, aby uzyskać dodatkowe informacje.

  • Usługi firmy Contoso w chmurze obsługują aplikacje do rozwiązywania problemów, analizy danych i interakcji z klientami. Usługi firmy Contoso w chmurze mogą być hostowane przez platformę Microsoft Azure, przez usługę w chmurze innego dostawcy lub przez własną chmurę firmy Contoso.

  • Modele Contoso DW100 w lokalizacjach użytkowników końcowych pobierają zaktualizowane system operacyjny i oprogramowanie aplikacji za pośrednictwem połączenia z usługą zabezpieczeń Azure Sphere. Mogą również komunikować się z aplikacją usługi firmy Contoso w chmurze w celu zgłaszania dodatkowych danych.

Na przykład czujniki w zmywarce mogą monitorować temperaturę wody, temperaturę suszenia i poziom środka do płukania oraz przekazywać te dane do usług firmy Contoso w chmurze, gdzie aplikacja usługi w chmurze analizuje je pod kątem potencjalnych problemów. Jeśli temperatura suszenia wydaje się wyjątkowo gorąca lub chłodna — co może wskazywać na niepowodzenie części — Firma Contoso zdalnie uruchamia diagnostykę i powiadamia klienta, że potrzebne są naprawy. Jeśli zmywarka jest na gwarancji, aplikacja usługi w chmurze może również zapewnić, że lokalny warsztat klienta ma część zamienną, zmniejszając w ten sposób liczbę odwiedzin konserwacji i wymagań dotyczących zapasów. Podobnie, jeśli środek do płukania jest niski, zmywarka może sygnalizować klientowi zakup dodatkowego środka do płukania bezpośrednio od producenta.

Cała komunikacja odbywa się za pośrednictwem zabezpieczonych, uwierzytelnionych połączeń. Pracownicy pomocy technicznej i inżynierów firmy Contoso mogą wizualizować dane przy użyciu usługi zabezpieczeń Azure Sphere, funkcji platformy Microsoft Azure lub aplikacji usługi w chmurze specyficznej dla firmy Contoso. Firma Contoso może również udostępniać aplikacje sieci Web i mobilne skierowane do klientów, za pomocą których właściciele zmywarek mogą zażądać serwisu, monitorować użycie zasobów zmywarki lub w inny sposób współpracować z firmą.

Korzystając z narzędzi wdrażania Azure Sphere, firma Contoso kieruje aktualizację każdego oprogramowania aplikacji do odpowiedniego modelu zmywarki, a usługa zabezpieczeń Azure Sphere rozpowszechnia aktualizacje oprogramowania na właściwych urządzeniach. W zmywarkach można instalować tylko podpisane i zweryfikowane aktualizacje oprogramowania.

Azure Sphere i siedem właściwości wysoce zabezpieczonych urządzeń

Głównym celem platformy Azure Sphere jest zapewnienie bezpieczeństwa o wysokiej wartości przy niskich kosztach, dzięki czemu wrażliwe na cenę urządzenia z mikrokontrolerem mogą bezpiecznie i niezawodnie łączyć się z Internetem. Ponieważ zabawki, urządzenia i inne urządzenia konsumenckie połączone z siecią stają się powszechne, bezpieczeństwo ma ogromne znaczenie. Nie tylko sam sprzęt musi być zabezpieczony, ale także musi być zabezpieczony przez oprogramowanie i jego połączenia z chmurą. Bezpieczeństwo wygasa w dowolnym miejscu w środowisku operacyjnym zagraża całemu produktowi i potencjalnie wszystkim osobom w pobliżu.

Na podstawie wieloletnich doświadczeń firmy Microsoft z zabezpieczeniami internetowymi zespół Azure Sphere zidentyfikował siedem właściwości wysoce zabezpieczonych urządzeń. Platforma Azure Sphere została zaprojektowana wokół tych siedmiu właściwości:

Sprzętowy pierwiastek zaufania. Sprzętowy pierwiastek zaufania zapewnia, że nie można rozdzielić urządzenia i jego tożsamości, uniemożliwiając w ten sposób fałszowanie lub fałszowanie urządzenia. Każdy mcu Azure Sphere jest identyfikowany przez niewybaczalny klucz kryptograficzny, który jest generowany i chroniony przez zaprojektowany przez firmę Microsoft sprzęt podsystemu zabezpieczeń Pluton. Zapewnia to odporny na naruszenia, zabezpieczony korzeń sprzętowy zaufania od fabryki do użytkownika końcowego.

Obrona w głębi. Obrona dogłębnie zapewnia wiele warstw bezpieczeństwa, a tym samym wiele środków łagodzących przed każdym zagrożeniem. Każda warstwa oprogramowania na platformie Azure Sphere sprawdza, czy warstwa nad nią jest zabezpieczona.

Mała zaufana baza obliczeniowa. Większość oprogramowania urządzenia pozostaje poza zaufaną bazą obliczeniową, zmniejszając tym samym obszar powierzchni ataków. Na zaufanej bazie obliczeniowej działają tylko zabezpieczone monitory zabezpieczeń, czas wykonywania Plutona i podsystem Pluton— który zapewnia firma Microsoft.

Przedziały dynamiczne. Przedziały dynamiczne ograniczają zasięg każdego pojedynczego błędu. McU Azure Sphere zawierają środki przeciwmedyczne układu krzemowego, w tym zapory sprzętowe, aby zapobiec propagowaniu naruszenia bezpieczeństwa w jednym składniku na inne składniki. Ograniczone środowisko środowiska wykonawczego "w trybie piaskownicy" zapobiega uszkodzeniu zabezpieczonego kodu lub danych przez aplikacje.

Uwierzytelnianie bez hasła. Użycie podpisanych certyfikatów, zweryfikowanych przez niewybaczalny klucz kryptograficzny, zapewnia znacznie silniejsze uwierzytelnianie niż hasła. Platforma Azure Sphere wymaga podpisania każdego elementu oprogramowania. Komunikacja między urządzeniami a chmurą i chmurą na urządzenie wymaga dalszego uwierzytelniania, które odbywa się za pomocą certyfikatów.

Raportowanie błędów. Błędy w oprogramowaniu lub sprzęcie urządzenia są typowe w nowych atakach zabezpieczeń; błędy powodujące awarię urządzenia stanowią atak typu "odmowa usługi". Komunikacja między urządzeniami a chmurą zapewnia wczesne ostrzeżenie o potencjalnych błędach. Urządzenia Azure Sphere mogą automatycznie raportować dane operacyjne i błędy w opartym na chmurze systemie analitycznym, a aktualizacje i serwisowanie można przeprowadzać zdalnie.

Bezpieczeństwo odnawialne. Oprogramowanie urządzenia jest automatycznie aktualizowane w celu korygowania znanych luk w zabezpieczeniach lub naruszeń zabezpieczeń, nie wymagając interwencji ze strony producenta produktu ani użytkownika końcowego. Usługa zabezpieczeń Azure Sphere automatycznie aktualizuje system operacyjny Azure Sphere i aplikacje.

Architektura usługi Azure Sphere

Współpracując ze sobą, usługa sprzętu, oprogramowania i zabezpieczeń Azure Sphere umożliwia unikatowe, zintegrowane metody konserwacji, kontroli i bezpieczeństwa urządzeń.

Architektura sprzętu zapewnia podstawę obliczeniową o zasadniczym zabezpieczeniu dla połączonych urządzeń, co pozwala skupić się na produkcie.

Architektura oprogramowania z zabezpieczonym niestandardowym jądrem systemu operacyjnego działającym na monitorze zabezpieczeń napisanym przez firmę Microsoft umożliwia skoncentrowanie wysiłków na oprogramowaniu na dodatku IoT i funkcjach specyficznych dla urządzenia.

Usługa zabezpieczeń Azure Sphere obsługuje uwierzytelnianie, aktualizacje oprogramowania i raportowanie błędów za pośrednictwem zabezpieczonych kanałów chmura-urządzenie i urządzenia do chmury. W rezultacie powstała zabezpieczona infrastruktura komunikacyjna, która zapewnia, że w produktach są uruchomione najnowsze aktualizacje systemu operacyjnego Azure Sphere. Aby zapoznać się z diagramami architektury i przykładami architektur chmury, zobacz Przeglądanie architektur platformy Azure.

Architektura sprzętu

McU crossover Azure Sphere składa się z wielu rdzeni na jednym die, jak pokazano na poniższej ilustracji.

Architektura sprzętuAzure Sphere MCU — architektura sprzętu

Każdy rdzeń i skojarzony z nim podsystem są w innej domenie zaufania. Pierwiastek zaufania znajduje się w podsystemie bezpieczeństwa Plutona. Każda warstwa architektury zakłada, że warstwa nad nią może być zagrożona. W obrębie każdej warstwy izolacja zasobów i przedziały dynamiczne zapewniają dodatkowe zabezpieczenia.

Podsystem zabezpieczeń Microsoft Pluton

Podsystem zabezpieczeń Pluton to oparty na sprzęcie (w krzemie) zabezpieczony korzeń zaufania dla Azure Sphere. Obejmuje ona rdzeń procesora zabezpieczeń, silniki kryptograficzne, sprzętowy generator liczb losowych, generowanie kluczy publicznych/prywatnych, szyfrowanie asymetryczne i symetryczne, obsługę weryfikacji algorytmu podpisu cyfrowego krzywej eliptycznej (ECDSA) w przypadku bezpiecznego rozruchu i mierzony rozruch w krzemie w celu obsługi zdalnego zaświadczania w usłudze w chmurze, a także różne środki zaradcze, w tym jednostkę wykrywania entropy.

W ramach procesu bezpiecznego rozruchu podsystem Pluton uruchamia różne składniki oprogramowania. Zapewnia również usługi środowiska uruchomieniowego, przetwarza żądania od innych składników urządzenia i zarządza krytycznymi składnikami dla innych części urządzenia.

Wysoki poziom rdzenia aplikacji

Wysoki poziom rdzenia aplikacji jest wyposażony w podsystem ARM Cortex-A, który ma pełną jednostkę zarządzania pamięcią (MMU). Umożliwia ono sprzętowe rozdzielanie procesów przy użyciu funkcji strefy zaufania i odpowiada za uruchamianie systemu operacyjnego, aplikacji i usług wysokiego poziomu. Obsługuje dwa środowiska operacyjne: Normal World (NW), który uruchamia kod zarówno w trybie użytkownika, jak i w trybie nadzoru, oraz Secure World (SW), który obsługuje tylko dostarczony przez firmę Microsoft monitor zabezpieczeń. Aplikacje wysokiego poziomu działają w trybie użytkownika NW.

Rdzenie w czasie rzeczywistym

Rdzenie w czasie rzeczywistym są wyposażone w podsystem ARM Cortex-M We/Wy, który umożliwia uruchamianie aplikacji obsługujących w czasie rzeczywistym jako kodu gołego metalu lub systemu operacyjnego w czasie rzeczywistym (RTOS). Takie aplikacje mogą mapować urządzenia peryferyjne i komunikować się z aplikacjami wysokiego poziomu, ale nie mogą uzyskiwać bezpośredniego dostępu do Internetu.

Łączność i komunikacja

Pierwsze urządzenie radiowe Azure Sphere MCU zapewnia radio 802.11 b/g/n Wi-Fi, które działa zarówno w częstotliwości 2,4 GHz, jak i 5 GHz. Aplikacje wysokiego poziomu mogą konfigurować, używać i wysyłać zapytania do podsystemu komunikacji bezprzewodowej, ale nie mogą go bezpośrednio zaprogramować. Oprócz sieci Wi-Fi lub zamiast z nich urządzenia Azure Sphere, które są prawidłowo wyposażone, mogą komunikować się w sieci Ethernet.

Multipleksowane we/wy

Platforma Azure Sphere obsługuje różne funkcje we/wy, dzięki czemu można skonfigurować osadzone urządzenia zgodnie z wymaganiami rynkowymi i produktowymi. Urządzenia peryferyjne we/wy można mapować na wysoki poziom rdzenia aplikacji lub na rdzeń w czasie rzeczywistym.

Zapory firmy Microsoft

Zapory sprzętowe to środki zaradcze układu krzemowego zapewniające ochronę przed piaskownicą w celu zapewnienia dostępności urządzeń peryferyjnych we/wy tylko do rdzenia, do którego są mapowane. Zapory nakładają podziały, uniemożliwiając tym samym zagrożenie bezpieczeństwa zlokalizowane w rdzeniu aplikacji wysokiego poziomu przed wpływem rdzeni w czasie rzeczywistym na ich urządzenia peryferyjne.

Zintegrowana pamięć RAM i lampa błyskowa

McU Azure Sphere zawierają co najmniej 4 MB zintegrowanej pamięci RAM i 16 MB zintegrowanej pamięci flash.

Architektura oprogramowania i system operacyjny

Na platformie aplikacji wysokiego poziomu działa system operacyjny Azure Sphere wraz z aplikacją wysokiego poziomu specyficzną dla urządzenia, która może komunikować się zarówno z Internetem, jak i z aplikacjami zdolnymi do pracy w czasie rzeczywistym, które działają w rdzeniach w czasie rzeczywistym. Na poniższej ilustracji przedstawiono elementy tej platformy.

Elementy dostarczane przez firmę Microsoft są wyświetlane w kolorze szarym.

Platforma aplikacji Nawysokim poziomie platforma aplikacji

Firma Microsoft udostępnia i obsługuje całe oprogramowanie inne niż aplikacje specyficzne dla danego urządzenia. Wszystkie oprogramowanie działające na urządzeniu, w tym aplikacja wysokiego poziomu, jest podpisane przez urząd certyfikacji firmy Microsoft. Aktualizacje aplikacji są dostarczane za pośrednictwem zaufanego potoku firmy Microsoft, a zgodność każdej aktualizacji ze sprzętem urządzenia Azure Sphere jest weryfikowana przed instalacją.

Środowisko uruchomieniowe aplikacji

Środowisko uruchomieniowe aplikacji dostarczone przez firmę Microsoft jest oparte na podzbiorze standardu POSIX. Składa się ona z bibliotek i usług środowiska uruchomieniowego uruchamianych w trybie użytkownika NW. To środowisko obsługuje aplikacje wysokiego poziomu, które tworzysz.

Biblioteki aplikacji obsługują funkcje sieciowe, przechowywania i komunikacji, które są wymagane przez aplikacje wysokiego poziomu, ale nie obsługują bezpośredniego dostępu do ogólnych we/wy plików lub powłoki, a także inne ograniczenia. Te ograniczenia zapewniają, że platforma pozostaje zabezpieczona i że firma Microsoft może dostarczać aktualizacje zabezpieczeń i konserwacji. Ponadto ograniczone biblioteki zapewniają długoterminową stabilną powierzchnię interfejsu API, dzięki czemu można aktualizować oprogramowanie systemowe w celu zwiększenia bezpieczeństwa przy zachowaniu zgodności binarnej dla aplikacji.

Usługi systemu operacyjnego

Usługi systemu operacyjnego hostują kontener aplikacji wysokiego poziomu i są odpowiedzialne za komunikowanie się z usługą zabezpieczeń Azure Sphere. Zarządzają uwierzytelnianiem sieciowym i zaporą sieciową dla całego ruchu wychodzącego. Podczas opracowywania usługi systemu operacyjnego komunikują się również z połączonym komputerem i debugowanym aplikacją.

Niestandardowe jądro systemu Linux

Niestandardowe jądro oparte na systemie Linux działa w trybie nadzoru wraz z modułem ładowczym rozruchowym. Jądro jest starannie dostrojone pod kątem błysku i pamięci RAM w mcu Azure Sphere. Zapewnia powierzchnię do wywłaszczalnego wykonywania procesów przestrzeni użytkownika w oddzielnych wirtualnych przestrzeniach adresowych. Model sterownika udostępnia urządzenia peryferyjne MCU usługom i aplikacjom systemu operacyjnego. Sterowniki usługi Azure Sphere obejmują między innymi Wi-Fi (w tym stos sieci TCP/IP), UART, SPI, I2C i GPIO.

Monitor zabezpieczeń

Monitor zabezpieczeń dostarczany przez firmę Microsoft działa w usłudze SW. Jest on odpowiedzialny za ochronę sprzętu wrażliwego na zabezpieczenia, takiego jak pamięć, lampa błyskowa i inne udostępnione zasoby MCU, oraz za bezpieczne narażanie ograniczonego dostępu do tych zasobów. Brokerzy Monitora bezpieczeństwa i bramy uzyskują dostęp do Podsystemu Bezpieczeństwa Plutona oraz sprzętowego korzenia zaufania i działają jako strażnik środowiska NW. Uruchamia moduł ładujący rozruch, udostępnia usługi środowiska uruchomieniowego NW i zarządza zaporami sprzętowymi i innymi składnikami układu krzemowego, które nie są dostępne dla NW.

Usługa zabezpieczeń Azure Sphere

Usługa zabezpieczeń Azure Sphere składa się z trzech składników: uwierzytelniania bez użycia hasła, aktualizacji i raportowania błędów.

  • Uwierzytelnianie bez hasła. Składnik uwierzytelniania zapewnia zdalne uwierzytelnianie przy użyciu funkcji zaświadczania i uwierzytelniania bez hasła. Usługa zdalnego zaświadczania łączy się za pomocą protokołu challenge-response, który wykorzystuje funkcję mierzonego rozruchu w podsystemie Pluton. Sprawdza ona nie tylko, czy urządzenie zostało uruchomione z odpowiednim oprogramowaniem, ale z prawidłową wersją tego oprogramowania.

    Po pomyślniu zaświadczania usługa uwierzytelniania przejmuje. Usługa uwierzytelniania komunikuje się za pośrednictwem zabezpieczonego połączenia TLS i wydaje certyfikat, który urządzenie może prezentować w usłudze sieci Web, takiej jak Platforma Microsoft Azure lub prywatna chmura firmy. Usługa sieci Web sprawdza łańcuch certyfikatów, sprawdzając w ten sposób, czy urządzenie jest oryginalne, czy jego oprogramowanie jest aktualne i czy firma Microsoft jest jego źródłem. Następnie urządzenie może bezpiecznie i bezpiecznie łączyć się z usługą online.

  • Aktualizacji. Usługa aktualizacji rozpowszechnia automatyczne aktualizacje dla systemu operacyjnego Azure Sphere i aplikacji. Usługa aktualizacji zapewnia dalsze działanie i umożliwia zdalną obsługę i aktualizację oprogramowania aplikacji.

  • Raportowanie błędów. Usługa raportowania błędów udostępnia proste raportowanie awarii dla wdrożonego oprogramowania. Aby uzyskać bardziej rozbudowane dane, skorzystaj z funkcji raportowania i analizy dostępnych w ramach subskrypcji platformy Microsoft Azure.

Wszystkie dane przechowywane w usłudze Azure Sphere Security Service są domyślnie szyfrowane. Usługa zabezpieczeń przechowuje dane w usługach Azure Storage, Azure Cosmos DB i Azure Key Vault przy użyciu implementacji szyfrowania danych w spoczynku dla każdej takiej usługi.