Udostępnij za pośrednictwem


Uzyskiwanie i wdrażanie certyfikatów dla sieci EAP-TLS

Zanim urządzenie Azure Sphere będzie mogło nawiązać połączenie z siecią EAP-TLS, musi mieć certyfikat klienta, za pomocą którego serwer RADIUS może uwierzytelnić urządzenie. Jeśli sieć wymaga wzajemnego uwierzytelnienia, każde urządzenie musi mieć certyfikat głównego urzędu certyfikacji, aby można było uwierzytelnić serwer RADIUS.

Sposób uzyskiwania i wdrażania tych certyfikatów zależy od zasobów sieciowych dostępnych dla Twoich urządzeń.

  • Jeśli sieć EAP-TLS jest jedyną dostępną siecią, konieczne będzie ręczne wdrożenie certyfikatów.
  • Jeśli jest dostępna inna forma sieci, na przykład otwarta sieć, możesz użyć metody "bootstrap". W podejściu rozruchowym aplikacja wysokiego poziomu Azure Sphere uzyskuje certyfikaty z otwartej sieci, a następnie używa ich do łączenia się z siecią EAP-TLS.

Ostrożność

Ponieważ identyfikatory certyfikatów są dostępne w całym systemie, polecenie sfery az lub wywołanie funkcji, które dodaje nowy certyfikat, może zastąpić certyfikat dodany przez wcześniejsze wywołanie polecenia lub funkcji, co może powodować awarie połączenia sieciowego. Zdecydowanie zalecamy opracowanie przejrzystych procedur aktualizacji certyfikatów i staranne wybieranie identyfikatorów certyfikatów. Aby uzyskać szczegółowe informacje, zobacz Identyfikatory certyfikatów .

Wdrożenie ręczne

Jeśli sieć EAP-TLS jest jedyną siecią dostępną dla Twoich urządzeń, konieczne będzie ręczne wdrożenie certyfikatów. Ręczne wdrożenie polega na uzyskaniu certyfikatów przy użyciu komputera z systemem Linux lub komputera z systemem Linux, a następnie załadowaniu certyfikatów na każde urządzenie Usługi Azure Sphere przy użyciu środowiska Azure Sphere CLI. Takie podejście wymaga fizycznego połączenia między komputerem pc lub komputerem z systemem Linux a urządzeniem Azure Sphere.

Uzyskiwanie certyfikatów ręcznie

Certyfikaty głównego urzędu certyfikacji i klienta muszą znajdować się w . Format PEM do ładowania na urządzeniu Azure Sphere. Konieczne będzie uzyskanie certyfikatu głównego urzędu certyfikacji z odpowiedniego serwera wraz z certyfikatem klienta i kluczem prywatnym (oraz opcjonalnie hasłem klucza prywatnego) dla urządzenia. Każdy certyfikat musi zostać wygenerowany i podpisany przez odpowiedni serwer w sieci EAP-TLS. Administrator sieci lub zespół zabezpieczeń może podać szczegóły potrzebne do uzyskania certyfikatów.

Zapisz certyfikaty w polu . Format PEM na komputerze PC lub Linux, a następnie użyj środowiska Azure Sphere CLI do przechowywania ich na urządzeniu Azure Sphere.

Przechowywanie certyfikatów przy użyciu interfejsu cli

Podłącz urządzenie Azure Sphere do sieciowego komputera pc lub komputera z systemem Linux i użyj polecenia az sphere do przechowywania certyfikatów na urządzeniu.

Aby zapisać certyfikat głównego urzędu certyfikacji na urządzeniu Azure Sphere:

az sphere device certificate add --certificate "server-key-xyz" --cert-type rootca --public-key-file <filepath_to_server_ca_public.pem>

Aby zapisać certyfikat klienta na urządzeniu Azure Sphere:

az sphere device certificate add --certificate "client-key-abc" --cert-type client --public-key-file <filepath_to_client_public.pem> --private-key-file <filepath_to_client_private.pem> --private-key-password "_password_"

Wdrożenie rozruchu

Aby połączyć urządzenia Azure Sphere w dużych ilościach lub w wielu lokalizacjach, rozważ zastosowanie podejścia "bootstrap". Aby użyć tej metody, urządzenia muszą mieć możliwość łączenia się z siecią, za pośrednictwem której mogą uzyskiwać dostęp do serwera, który może dostarczać certyfikaty. Aplikacja Azure Sphere wysokiego poziomu łączy się z serwerem za pośrednictwem dostępnej sieci, żąda certyfikatów i przechowuje je na urządzeniu.

Na poniższej ilustracji podsumowano ten proces.

Przepływ certyfikatu podczas wdrażania bootstrap

  1. Aplikacja na urządzeniu Azure Sphere łączy się z otwartą siecią i kontaktuje się z usługą zabezpieczeń Azure Sphere w celu uzyskania certyfikatu daa. Następnie instaluje certyfikat daa na urządzeniu. Urządzenie powinno używać tego certyfikatu do uwierzytelniania w usłudze wydawania certyfikatów.

  2. Następnie aplikacja nawiązuje połączenie z usługą wydawania certyfikatów wyznaczoną przez administratora sieci. Przedstawia certyfikat daa w celu weryfikacji tożsamości z serwerem i żąda certyfikatu głównego urzędu certyfikacji dla serwera RADIUS w sieci EAP-TLS wraz z certyfikatem klienta i kluczem prywatnym. Usługa może przekazywać do aplikacji inne informacje, takie jak tożsamość klienta i hasło klucza prywatnego, jeśli jest to wymagane. Następnie aplikacja instaluje certyfikat klienta, klucz prywatny klienta i certyfikat głównego urzędu certyfikacji na urządzeniu. Następnie może rozłączyć się z otwartą siecią.

  3. Aplikacja konfiguruje i włącza sieć EAP-TLS. Dostarcza certyfikat klienta i klucz prywatny, aby udowodnić tożsamość urządzenia. Jeśli sieć obsługuje wzajemne uwierzytelnianie, aplikacja uwierzytelnia również serwer RADIUS przy użyciu certyfikatu głównego urzędu certyfikacji.

Uwierzytelnienie urządzenia i uzyskanie certyfikatu klienta podczas rozruchu

Urządzenie Azure Sphere może używać certyfikatu uwierzytelniania i zaświadczania urządzeń (DAA) do uwierzytelniania w usłudze, która może dostarczyć inne wymagane certyfikaty. Certyfikat DAA jest dostępny w usłudze zabezpieczeń Azure Sphere.

Aby uzyskać certyfikat daa:

  1. Określ identyfikator dzierżawy Azure Sphere (Legacy) w sekcji DeviceAuthentication manifestu aplikacji dla aplikacji wysokiego poziomu.
  2. Wywołaj DeviceAuth_CurlSslFunc z aplikacji wysokiego poziomu, aby uzyskać łańcuch certyfikatów dla bieżącego wykazu usługi Azure Sphere.

Jeśli manifest aplikacji zawiera identyfikator dzierżawy Azure Sphere (Starsza wersja) dla bieżącego urządzenia, funkcja DeviceAuth_CurlSslFunc będzie uwierzytelniać się za pomocą łańcucha certyfikatów klienta daa, jeśli usługa docelowa wymaga wzajemnego uwierzytelniania TLS.

Uzyskiwanie certyfikatu głównego urzędu certyfikacji dla serwera RADIUS

Aby uzyskać certyfikat głównego urzędu certyfikacji dla serwera RADIUS, aplikacja łączy się z punktem końcowym serwera certyfikatów, który jest dostępny w jego sieci i może dostarczyć certyfikat. Administrator sieci powinien mieć możliwość podania informacji o sposobie łączenia się z punktem końcowym i pobierania certyfikatu.

Instalowanie certyfikatów przy użyciu interfejsu API CertStore

Aplikacja używa interfejsu API CertStore do zainstalowania certyfikatów na urządzeniu. Funkcja CertStore_InstallClientCertificate instaluje certyfikat klienta i CertStore_InstallRootCACertificate instaluje certyfikat głównego urzędu certyfikacji dla serwera RADIUS. Zarządzanie certyfikatami w aplikacjach wysokiego poziomu zapewnia dodatkowe informacje na temat korzystania z interfejsu API CertStore do zarządzania certyfikatami.

Przykładowa aplikacja Certyfikaty pokazuje, jak aplikacja może używać tych funkcji.