Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Możliwości urządzenia określają zasady systemu operacyjnego specyficzne dla urządzenia na potrzeby komunikacji service-UART. Cała komunikacja między komputerem-hostem a dołączonym urządzeniem odbywa się za pośrednictwem usługi UART. Komputer hosta komunikuje się z dołączonym urządzeniem w celu wykonywania operacji na urządzeniu. Producenci, deweloperzy oprogramowania i technicy serwisowi terenowi korzystają z możliwości w celu odblokowania komunikacji service-UART dla operacji, których potrzebują, przy jednoczesnym zapewnieniu, że urządzenie jest chronione przed złośliwymi użytkownikami.
Producenci urządzeń i producenci OEM mogą zabezpieczyć komunikację przez serwisowy interfejs UART, aby zapobiec nieautoryzowanemu użyciu przez osoby mające fizyczny dostęp do urządzenia. Blokowanie takiej komunikacji jest częścią finalizacji urządzeń. Po zakończeniu użytkownik może uzyskać identyfikator urządzenia, ale nic więcej; wszystkie inne operacje wymagają możliwości urządzenia. Finalizacja jest zwykle wykonywana na hali produkcyjnej, zanim producent wyśle urządzenie do lokacji klienta.
Plik możliwości urządzenia zawiera zero lub więcej możliwości tylko dla jednego urządzenia. Plik funkcji nie będzie działać, jeśli zostanie użyty w urządzeniu innym niż to, dla którego jest przeznaczony. Urządzenie może mieć następujące możliwości, z których każda została opisana w dalszej części tego tematu:
- enableRfTestMode capability (włączanie funkcjiRfTestMode )
- funkcja appDevelopment
- funkcja fieldServicing
Note
Możliwości urządzenia nie są związane z możliwościami aplikacji. Możliwości aplikacji określają zasoby wymagane przez aplikację w czasie wykonywania. Aby uzyskać więcej informacji na temat możliwości aplikacji, zobacz Manifest aplikacji .
Jak określić możliwości urządzenia lub stan produkcji
Aby określić konfigurację funkcji zapisaną na podłączonym urządzeniu, użyj polecenia az sphere device capability show-attached. Polecenie wyświetla możliwości skonfigurowane przy użyciu pliku możliwości i niektóre, ale nie wszystkie, możliwości obecne domyślnie na tablicach.
Na możliwości urządzenia może mieć wpływ stan produkcji urządzenia. Aby określić stan produkcji urządzenia, użyj polecenia az sphere device manufacturing-state show . Jeśli polecenie pokazuje, że urządzenie jest w stanie produkcyjnym DeviceComplete lub zwraca Device access is forbidden, komunikacja przez service-UART jest zablokowana i do komunikacji z urządzeniem z poziomu komputera potrzebujesz odpowiedniej funkcji urządzenia. Gdy urządzenie znajduje się w produkcyjnym stanie DeviceComplete, operacje produkcyjne są dozwolone wyłącznie wtedy, gdy urządzenie zostanie odblokowane za pomocą pliku uprawnień.
Note
Jeśli instalujesz urządzenie u klienta, przed instalacją upewnij się, że urządzenie zostało przełączone do stanu produkcyjnego DeviceComplete. Zobacz Finalizuj urządzenie Azure Sphere.
Stan produkcyjny DeviceComplete zwykle nie jest odpowiedni w przypadku zestawu deweloperskiego. Aby umożliwić testowanie operacji produkcyjnych tworzonych przez inżynierów produkcji, zestaw deweloperski powinien znajdować się w stanie produkcyjnym Blank albo w stanie produkcyjnym Module1Complete.
Jak urządzenia uzyskują możliwości
Urządzenia mogą uzyskiwać możliwości na jeden z trzech sposobów:
Domyślnie otwierane. Urządzenie, które znajduje się w stanie produkcyjnym Blank lub Module1Complete, ma domyślnie dostępne pewne funkcje. Ma to na celu zapewnienie, aby urządzenia, które wciąż są na etapie produkcji, nie musiały być połączone z chmurą ani przypisywane do katalogów, jak wymaga tego proces korzystania z plików możliwości urządzenia w celu odblokowania funkcji. W miarę postępu produkcji producenci mogą zmieniać stan wytwarzania urządzenia, aby zablokować funkcje, które nie powinny już być dostępne, jak opisano w sekcji Zadania na hali produkcyjnej.
Ładowane bezpośrednio na urządzenie. Urządzenie może mieć plik możliwości ładowany bezpośrednio na urządzenie z komputera hosta. Użyj polecenia az sphere device capability download, aby pobrać plik funkcji. Ten załadowany lokalnie zestaw funkcji pozostaje aktywny do momentu załadowania nowego pliku funkcji (który może być pustym plikiem niezawierającym żadnych funkcji). Jest to zwykle sytuacja podczas tworzenia aplikacji, na przykład gdy polecenie az sphere device enable-development jest uruchamiane. Programowanie aplikacji jest wspomagane przez posiadanie urządzenia w stanie odblokowanym, w którym deweloper może wykonywać operacje, takie jak debugowanie i łatwe usuwanie i wdrażanie ładowanych bezpośrednio wersji aplikacji.
Przekazywane do urządzenia przy każdej operacji. Urządzenie może mieć lokalnie wybrane możliwości zastosowane dla poszczególnych operacji. Polecenie az sphere device capability apply wybiera plik możliwości przechowywany lokalnie na komputerze hosta. Po uruchomieniu tego polecenia wybrana funkcja jest przekazywana z komputera do urządzenia przy użyciu każdego kolejnego polecenia. Jest to zalecany sposób korzystania z funkcji dla urządzeń, które znajdują się w terenie, ponieważ możliwości są przechowywane na komputerze, a nie na urządzeniu. Unika się ryzyka przypadkowego pozostawienia urządzenia przez inżyniera terenowego w niezabezpieczonym stanie wskutek zapomnienia o usunięciu tej funkcji.
Zanim plik możliwości będzie można wgrać lokalnie na urządzenie lub przekazać do urządzenia w ramach operacji, musi on zostać pobrany z usługi Azure Sphere Security Service (AS3), zgodnie z opisem w dokumencie Wprowadzanie zmian na urządzeniu po wyprodukowaniu. Pobrane pliki możliwości są specyficzne dla urządzenia; po pobraniu pliku możliwości można go wielokrotnie używać na skojarzonym urządzeniu.
Funkcja enableRfTestMode
Funkcja enableRfTestMode jest domyślnie dostępna na urządzeniu, gdy stan produkcyjny urządzenia to Blank. Ta funkcja umożliwia programowanie bezpieczników elektronicznych oraz konfigurację i testowanie operacji RF. Właściciele wykazu nie mogą pobrać tej funkcji na komputer hosta. Jeśli potrzebujesz tej możliwości, skontaktuj się z przedstawicielem Microsoft.
Gdy stan produkcyjny urządzenia ma wartość Blank, polecenie az sphere device capability show-attached wyświetla możliwość enableRfTestMode.
Możliwość tworzenia aplikacji
Możliwość urządzenia appDevelopment odblokowuje komunikację UART usługi i zmienia typ podpisu, któremu urządzenie ufa. Jest ona przeznaczona do użycia podczas tworzenia aplikacji.
Domyślnie urządzenia Azure Sphere ufają pakietom obrazów podpisanych w środowisku produkcyjnym, które są pobierane przez usługę zabezpieczeń Azure Sphere, ale nie ufają pakietom obrazów podpisanych za pomocą zestawu SDK. W związku z tym nie można utworzyć pakietu obrazu przy użyciu zestawu SDK i wgrać go bocznie na urządzenie Azure Sphere w celu debugowania, chyba że urządzenie ma możliwość appDevelopment. Funkcja appDevelopment powoduje, że urządzenie ufa pakietowi obrazu i umożliwia uruchamianie, zatrzymywanie, debugowanie lub usuwanie aplikacji z urządzenia.
Podsumowując, funkcja appDevelopment odblokowuje komunikację service-UART, aby umożliwić następujące operacje:
Ładowanie bezpośrednie pakietu obrazu utworzonego przy użyciu Visual Studio, Visual Studio Code, interfejsu wiersza polecenia lub az sphere image-package.
Uruchamianie, zatrzymywanie, debugowanie lub usuwanie pakietu obrazów z urządzenia Azure Sphere, niezależnie od sposobu podpisania pakietu obrazów.
Aby dodać funkcję appDevelopment , użyj polecenia az sphere device enable-development . To polecenie pobiera funkcję appDevelopment dla podłączonego urządzenia, instaluje tę funkcję bezpośrednio na urządzeniu i przenosi urządzenie do domyślnej grupy urządzeń deweloperskich. Aby określić inną grupę urządzeń, dołącz --device-group parametr .
Gdy używasz az sphere device enable-development, urządzenie pozostaje odblokowane, aż do chwili, gdy jawnie je zablokujesz. Aby ponownie zablokować urządzenie, użyj polecenia az sphere device enable-cloud-test . To polecenie usuwa możliwości i zmienia grupę urządzeń w zależności od podanych parametrów wiersza polecenia.
Polecenia az sphere device enable-development i az sphere device enable-cloud-test wykonują sekwencję akcji, które odpowiednio przygotowują urządzenie do programowania i debugowania lub wdrażania w chmurze. Zamiast używać tych poleceń, możesz użyć polecenia az sphere device capability do pobrania lub zaktualizowania możliwości urządzenia lub dowiedzieć się, które możliwości ma obecnie urządzenie.
Funkcja serwisowania w terenie
Funkcja fieldServicing jest domyślnie dostępna na urządzeniu, gdy urządzenie ma stan produkcyjny Blank lub Module1Complete. Gdy urządzenie znajduje się w stanie produkcyjnym DeviceComplete, możliwość fieldServicing może zostać doładowana, ale zazwyczaj jest przekazywana do urządzenia przy każdej operacji podczas sesji serwisowej. Aby uzyskać szczegółowe informacje na temat uruchamiania sesji obsługi, zobacz Wprowadzanie zmian w urządzeniu po zakończeniu produkcji.
Niezależnie od stanu produkcji urządzenia, funkcja fieldServicing odblokuje komunikację service-UART, aby umożliwić następujące operacje:
- Ręczne instalowanie pakietu obrazu systemu podpisanego kluczem produkcyjnym.
- Uruchamianie, zatrzymywanie i usuwanie pakietu obrazu podpisanego podpisem produkcyjnym, który jest oznaczony jako tymczasowy.
- Wykonywanie rutynowych zadań konserwacji, takich jak konfigurowanie sieci Wi-Fi.
Chociaż funkcja fieldServicing jest domyślnie dostępna na urządzeniu, gdy stan produkcyjny urządzenia to Blank lub Module1Complete, polecenie az sphere device capability show-attached nie wyświetla funkcji fieldServicing.
Zależność od aktualnego zaufanego magazynu kluczy
Gdy plik funkcji jest tworzony przez AS3, zostaje podpisany przy użyciu bieżącego klucza do podpisywania obrazu. Każde urządzenie ma zaufany magazyn kluczy w ramach systemu operacyjnego, w którym są przechowywane te klucze. Jeśli jednak urządzenie nie jest połączone z Internetem, urządzenie docelowe może nie ufać danej funkcji, jeśli jego zaufany magazyn kluczy jest nieaktualny.
Aby rozwiązać ten problem, jedną z metod jest umożliwienie urządzeniu nawiązywania połączenia z Internetem w celu zaktualizowania zaufanego magazynu kluczy. Połącz urządzenie z Internetem i naciśnij przycisk Resetuj , aby wyzwolić aktualizację systemu operacyjnego.
Jeśli nie jest to możliwe, możesz wtedy ręcznie wgrać zaktualizowany, zaufany magazyn kluczy. W tym celu zaakceptuj postanowienia licencyjne , a następnie pobierz najnowsze obrazy odzyskiwania systemu operacyjnego, a następnie z tego pliku zip wyodrębnij tylko plik "trusted-keystore.bin". Następnie możesz użyć polecenia az sphere device sideload deploy --image-package <path-to-trustedkeystore.bin-file> , aby załadować bezpośrednio zaufany magazyn kluczy, a możliwość powinna być teraz zaufana przez urządzenie.
Trzecia metoda to odzyskanie oprogramowania systemowego, aby zaktualizować system operacyjny Azure Sphere do najnowszej wydanej wersji, w tym najnowszego zaufanego magazynu kluczy.