Menedżer zabezpieczeń usługi Azure IoT Edge

Dotyczy:IoT Edge 1.4 checkmark IoT Edge 1.4

Ważne

Azure IoT Edge1.4 jest obsługiwaną wersją. Jeśli korzystasz z wcześniejszej wersji, zobacz aktualizację Azure IoT Edge.

Menedżer zabezpieczeń usługi Azure IoT Edge jest dobrze powiązanym rdzeniem zabezpieczeń do ochrony urządzenia usługi IoT Edge i wszystkich jego składników przez abstrakcję bezpiecznego sprzętu krzemowego. Menedżer zabezpieczeń jest centralnym punktem wzmacniania zabezpieczeń i zapewnia punkt integracji technologii producentom oryginalnego sprzętu (OEM).

Menedżer zabezpieczeń abstrahuje bezpieczny sprzęt krzemowy na urządzeniu usługi IoT Edge i udostępnia platformę rozszerzalności dla dodatkowych usług zabezpieczeń.

Menedżer zabezpieczeń usługi IoT Edge ma na celu obronę integralności urządzenia usługi IoT Edge i wszystkich nieodłącznych operacji oprogramowania. Menedżer zabezpieczeń przechodzi relację zaufania z bazowego katalogu głównego sprzętu zaufania (jeśli jest dostępny) w celu uruchomienia środowiska uruchomieniowego usługi IoT Edge i monitorowania bieżących operacji. Menedżer zabezpieczeń usługi IoT Edge współpracuje z oprogramowaniem wraz z bezpiecznym sprzętem krzemowym (tam, gdzie jest dostępny), aby zapewnić najwyższe możliwe zabezpieczenia.

Ponadto menedżer zabezpieczeń usługi IoT Edge zapewnia bezpieczną strukturę rozszerzeń usługi zabezpieczeń za pośrednictwem modułów na poziomie hosta. Usługi te obejmują monitorowanie zabezpieczeń i aktualizacje, które wymagają agentów wewnątrz urządzenia z uprzywilejowanym dostępem do niektórych składników urządzenia. Struktura rozszerzalności gwarantuje, że takie integracje stale podtrzymują ogólne zabezpieczenia systemu.

Obowiązki menedżera zabezpieczeń usługi IoT Edge obejmują, ale nie są ograniczone do następujących elementów:

  • Uruchamianie urządzenia usługi Azure IoT Edge.
  • Kontrolowanie dostępu do głównego katalogu głównego zaufania urządzenia za pośrednictwem usług notarnych.
  • Monitorowanie integralności operacji usługi IoT Edge w czasie wykonywania.
  • Aprowizuj tożsamość urządzenia i zarządzaj przejściem zaufania, jeśli ma to zastosowanie.
  • Zapewnij bezpieczną obsługę agentów klienta dla usług, w tym aktualizacji urządzeń dla usługi IoT Hub i usługi Microsoft Defender dla IoT.

Menedżer zabezpieczeń usługi IoT Edge składa się z trzech składników:

  • Środowisko uruchomieniowe modułu usługi IoT Edge
  • Abstrakcje sprzętowego modułu zabezpieczeń (HSM) za pośrednictwem standardowych implementacji, takich jak PKCS#11 i Moduł TPM (Trusted Platform Module)
  • Sprzętowy katalog główny zaufania lub moduł HSM (opcjonalny, ale zdecydowanie zalecany)

Zmiany w wersji 1.2 lub nowszej

W wersjach 1.0 i 1.1 usługi IoT Edge składnik nazywany demonem zabezpieczeń był odpowiedzialny za logiczne operacje zabezpieczeń menedżera zabezpieczeń. W aktualizacji do wersji 1.2 kilka kluczowych obowiązków zostało delegowanych do podsystemu zabezpieczeń usługi azure IoT Identity Service . Po usunięciu tych zadań opartych na zabezpieczeniach z demona zabezpieczeń jego nazwa nie ma już sensu. Aby lepiej odzwierciedlić pracę, jaką ten składnik wykonuje w wersji 1.2 lub nowszej, zmieniliśmy jej nazwę na środowisko uruchomieniowe modułu.

Środowisko uruchomieniowe modułu usługi IoT Edge

Środowisko uruchomieniowe modułu usługi IoT Edge deleguje zaufanie z podsystemu zabezpieczeń usługi tożsamości azure IoT w celu ochrony środowiska uruchomieniowego kontenera usługi IoT Edge. Jedna usługa, teraz delegowana do usługi Azure IoT Identity Service, to automatyczna usługa rejestracji certyfikatów i odnawiania za pośrednictwem serwera EST. Aby zobaczyć, jak to działa i utworzyć przykładowy serwer EST utworzony dla urządzenia usługi IoT Edge, wypróbuj samouczek Configure Enrollment over Secure Transport Server for Azure IoT Edge (Konfigurowanie rejestracji za pośrednictwem bezpiecznego serwera transportu dla usługi Azure IoT Edge ).

Środowisko uruchomieniowe modułu jest odpowiedzialne za logiczne operacje zabezpieczeń menedżera zabezpieczeń. Reprezentuje znaczną część zaufanej bazy obliczeniowej urządzenia usługi IoT Edge. Środowisko uruchomieniowe modułu używa usług zabezpieczeń z usługi IoT Identity Service, która z kolei jest wzmocniona przez wybór sprzętowego modułu zabezpieczeń (HSM) urządzenia. Zdecydowanie zalecamy używanie modułów HSM do wzmacniania zabezpieczeń urządzeń.

Zasady projektowania

Usługa IoT Edge jest zgodna z dwiema podstawowymi zasadami: maksymalizuj integralność operacyjną i minimalizuj wzdęcie i rezygnację.

Maksymalizowanie integralności operacyjnej

Środowisko uruchomieniowe modułu usługi IoT Edge działa z najwyższą integralnością możliwą w ramach możliwości obrony dowolnego głównego sprzętu zaufania. Dzięki odpowiedniej integracji główny element zaufanych miar sprzętowych i monitoruje demona zabezpieczeń statycznie i w czasie wykonywania, aby oprzeć się manipulowaniu.

Złośliwy fizyczny dostęp do urządzeń jest zawsze zagrożeniem w usłudze IoT. Główny element zaufania sprzętu odgrywa ważną rolę w obronie integralności urządzenia usługi IoT Edge. Główny element zaufania sprzętu ma dwie odmiany:

  • Zabezpieczanie elementów ochrony poufnych informacji, takich jak wpisy tajne i klucze kryptograficzne.
  • Bezpieczne enklawy ochrony wpisów tajnych, takich jak klucze, i wrażliwe obciążenia, takie jak poufne modele uczenia maszynowego i operacje pomiaru.

Istnieją dwa rodzaje środowisk wykonywania do używania głównego katalogu zaufania sprzętu:

  • Standardowe lub bogate środowisko wykonawcze (REE), które opiera się na użyciu bezpiecznych elementów do ochrony poufnych informacji.
  • Zaufane środowisko wykonawcze (TEE), które opiera się na użyciu bezpiecznej technologii enklawy w celu ochrony poufnych informacji i zapewniania ochrony wykonywania oprogramowania.

W przypadku urządzeń korzystających z bezpiecznych enklaw jako katalogu głównego zaufania sprzętu poufne logiki w środowisku uruchomieniowym modułu usługi IoT Edge powinny znajdować się wewnątrz enklawy. Niewrażliwe części środowiska uruchomieniowego modułu mogą znajdować się poza środowiskiem TEE. We wszystkich przypadkach zdecydowanie zalecamy, aby producenci oryginalnego projektu (ODM) i producenci oryginalnego sprzętu (OEM) rozszerzali zaufanie ze swojego modułu HSM w celu mierzenia i obrony integralności środowiska uruchomieniowego modułu usługi IoT Edge podczas rozruchu i środowiska uruchomieniowego.

Minimalizuj wzdęcie i rezygnację

Kolejną podstawową zasadą środowiska uruchomieniowego modułu usługi IoT Edge jest zminimalizowanie współczynnika zmian. W przypadku najwyższego poziomu zaufania środowisko uruchomieniowe modułu usługi IoT Edge może ściśle połączyć się z głównym elementem głównym zaufania sprzętu urządzenia i działać jako kod natywny. W takich przypadkach często należy zaktualizować oprogramowanie usługi IoT Edge za pośrednictwem katalogu głównego sprzętu bezpiecznych ścieżek aktualizacji zaufania, a nie mechanizmów aktualizacji systemu operacyjnego, co może być trudne. Odnawianie zabezpieczeń jest zalecane w przypadku urządzeń IoT, ale nadmierne wymagania dotyczące aktualizacji lub duże ładunki aktualizacji mogą rozszerzać obszar zagrożenia na wiele sposobów. Na przykład możesz pominąć niektóre aktualizacje, aby zmaksymalizować dostępność urządzeń. W związku z tym projekt środowiska uruchomieniowego modułu usługi IoT Edge jest zwięzły, aby zachować dobrze odizolowaną zaufaną bazę obliczeniową, aby zachęcić do częstych aktualizacji.

Architektura

Środowisko uruchomieniowe modułu usługi IoT Edge korzysta z dowolnego dostępnego głównego sprzętu technologii zaufania na potrzeby wzmacniania zabezpieczeń. Umożliwia również dzielenie operacji między standardowym/bogatym środowiskiem wykonywania (REE) i zaufanym środowiskiem wykonywania (TEE), gdy technologie sprzętowe oferują zaufane środowiska wykonawcze. Interfejsy specyficzne dla ról umożliwiają głównym składnikom usługi IoT Edge zapewnienie integralności urządzenia usługi IoT Edge i jego operacji.

Azure IoT Edge module runtime architecture

Interfejs chmury

Interfejs chmury umożliwia dostęp do usług w chmurze, które uzupełniają zabezpieczenia urządzeń. Na przykład ten interfejs umożliwia dostęp do usługi Device Provisioning Service na potrzeby zarządzania cyklem życia tożsamości urządzeń.

Interfejs API zarządzania

Interfejs API zarządzania jest wywoływany przez agenta usługi IoT Edge podczas tworzenia/uruchamiania/zatrzymywania/usuwania modułu usługi IoT Edge. Środowisko uruchomieniowe modułu przechowuje "rejestracje" dla wszystkich aktywnych modułów. Te rejestracje mapuje tożsamość modułu na niektóre właściwości modułu. Na przykład te właściwości modułu obejmują identyfikator procesu (pid) procesu uruchomionego w kontenerze i skrót zawartości kontenera platformy Docker.

Te właściwości są używane przez interfejs API obciążenia (opisany poniżej), aby sprawdzić, czy obiekt wywołujący jest autoryzowany do wykonania akcji.

Interfejs API zarządzania to uprzywilejowany interfejs API, który można wywołać tylko z agenta usługi IoT Edge. Ponieważ środowisko uruchomieniowe środowiska uruchomieniowego modułu usługi IoT Edge uruchamia i uruchamia agenta usługi IoT Edge, sprawdza, czy agent usługi IoT Edge nie został naruszony, a następnie może utworzyć niejawną rejestrację agenta usługi IoT Edge. Ten sam proces zaświadczania używany przez interfejs API obciążenia ogranicza również dostęp do interfejsu API zarządzania tylko agentowi usługi IoT Edge.

Interfejs API kontenera

Interfejs API kontenera współdziała z systemem kontenerów używanym do zarządzania modułami, takimi jak Moby lub Docker.

Interfejs API obciążenia

Interfejs API obciążenia jest dostępny dla wszystkich modułów. Zapewnia dowód tożsamości jako token podpisany przez moduł HSM lub certyfikat X509 oraz odpowiedni pakiet zaufania do modułu. Pakiet zaufania zawiera certyfikaty urzędu certyfikacji dla wszystkich pozostałych serwerów, którym moduły powinny ufać.

Środowisko uruchomieniowe modułu usługi IoT Edge używa procesu zaświadczania do ochrony tego interfejsu API. Gdy moduł wywołuje ten interfejs API, środowisko uruchomieniowe modułu próbuje znaleźć rejestrację tożsamości. Jeśli operacja zakończy się pomyślnie, użyje właściwości rejestracji do zmierzenia modułu. Jeśli wynik procesu pomiaru jest zgodny z rejestracją, zostanie wygenerowany nowy dowód tożsamości. Odpowiednie certyfikaty urzędu certyfikacji (pakiet zaufania) są zwracane do modułu. Moduł używa tego certyfikatu do nawiązywania połączenia z usługą IoT Hub, innymi modułami lub uruchamiania serwera. Gdy podpisany token lub certyfikat zbliża się do wygaśnięcia, moduł odpowiada za żądanie nowego certyfikatu.

Integracja i konserwacja

Firma Microsoft utrzymuje główną bazę kodu dla środowiska uruchomieniowego modułu usługi IoT Edge i usługi tożsamości Azure IoT w usłudze GitHub.

Podczas odczytywania bazy kodu usługi IoT Edge pamiętaj, że środowisko uruchomieniowe modułu ewoluowało z demona zabezpieczeń. Baza kodu może nadal zawierać odwołania do demona zabezpieczeń.

Instalacja i aktualizacje

Instalacja i aktualizacje środowiska uruchomieniowego modułu usługi IoT Edge są zarządzane za pośrednictwem systemu zarządzania pakietami systemu operacyjnego. Urządzenia usługi IoT Edge z głównym elementem głównym zaufania sprzętu powinny zapewnić dodatkowe wzmocnienie integralności środowiska uruchomieniowego modułu przez zarządzanie cyklem życia za pośrednictwem systemów zarządzania bezpiecznym rozruchem i aktualizacjami. Twórcy urządzeń powinni eksplorować te możliwości na podstawie odpowiednich możliwości urządzenia.

Wersje

Środowisko uruchomieniowe usługi IoT Edge śledzi i raportuje wersję środowiska uruchomieniowego modułu usługi IoT Edge. Wersja jest zgłaszana jako atrybut runtime.platform.version zgłaszanej właściwości modułu agenta usługi IoT Edge.

Sprzętowy moduł zabezpieczeń

Menedżer zabezpieczeń usługi IoT Edge implementuje standardy interfejsu Trusted Platform Module i PKCS#11 do integrowania sprzętowych modułów zabezpieczeń (HSM). Dzięki tym standardom można zintegrować praktycznie każdy moduł HSM, w tym te z zastrzeżonymi interfejsami. Zdecydowanie zalecamy używanie modułów HSM do wzmacniania zabezpieczeń.

Bezpieczny katalog główny krzemu sprzętu zaufania

Bezpieczny krzem jest niezbędny do zakotwiczenia zaufania wewnątrz sprzętu urządzenia usługi IoT Edge. Bezpieczne krzemy są dostępne w różnych zastosowaniach, takich jak Trusted Platform Module (TPM), embedded Secure Element (eSE), Arm TrustZone, Intel SGX i niestandardowe technologie bezpiecznego krzemu. Korzystanie z bezpiecznego katalogu krzemowego zaufania w urządzeniach jest zalecane, biorąc pod uwagę zagrożenia związane z fizycznymi ułatwieniami dostępu urządzeń IoT.

Menedżer zabezpieczeń usługi IoT Edge ma na celu zidentyfikowanie i odizolowanie składników, które chronią zabezpieczenia i integralność platformy Azure IoT Edge w celu zapewnienia niestandardowych zabezpieczeń. Inne firmy, takie jak producenci urządzeń, powinny korzystać z niestandardowych funkcji zabezpieczeń dostępnych na ich sprzęcie urządzenia.

Dowiedz się, jak wzmacniać zabezpieczenia menedżera zabezpieczeń usługi Azure IoT za pomocą modułu TPM (Trusted Platform Module) przy użyciu oprogramowania lub wirtualnych modułów TPM:

Tworzenie i aprowizowanie urządzenia usługi IoT Edge przy użyciu wirtualnego modułu TPM w systemie Linux lub Linux w systemie Windows.

Następne kroki

Aby dowiedzieć się więcej na temat zabezpieczania urządzeń usługi IoT Edge, przeczytaj następujące wpisy w blogu: