Kontrola dostępu oparta na rolach (RBAC) i aktualizacja urządzenia na platformie Azure
Usługa Device Update używa kontroli dostępu opartej na rolach platformy Azure w celu zapewnienia uwierzytelniania i autoryzacji dla użytkowników i interfejsów API usług. Aby inni użytkownicy i aplikacje mieli dostęp do usługi Device Update, użytkownicy lub aplikacje muszą mieć dostęp do tego zasobu. Konieczne jest również skonfigurowanie dostępu dla jednostki usługi Azure Device Update w celu pomyślnego wdrożenia aktualizacji i zarządzania urządzeniami.
Konfigurowanie ról kontroli dostępu
Są to role obsługiwane przez usługę Device Update:
Nazwa roli | opis |
---|---|
Device Update Administrator | Ma dostęp do wszystkich zasobów usługi Device Update |
Czytnik aktualizacji urządzenia | Może wyświetlać wszystkie aktualizacje i wdrożenia |
Administrator zawartości aktualizacji urządzenia | Może wyświetlać, importować i usuwać aktualizacje |
Czytnik zawartości aktualizacji urządzenia | Może wyświetlać aktualizacje |
Administrator wdrożeń aktualizacji urządzeń | Może zarządzać wdrażaniem aktualizacji na urządzeniach |
Czytelnik wdrożeń aktualizacji urządzeń | Może wyświetlać wdrożenia aktualizacji urządzeń |
Kombinacja ról może służyć do zapewnienia odpowiedniego poziomu dostępu. Na przykład deweloper może importować aktualizacje i zarządzać nimi przy użyciu roli Administrator zawartości aktualizacji urządzenia, ale musi mieć rolę Czytelnik wdrożeń aktualizacji urządzeń, aby wyświetlić postęp aktualizacji. Z drugiej strony operator rozwiązania z rolą Czytelnik aktualizacji urządzeń może wyświetlać wszystkie aktualizacje, ale musi użyć roli Administrator wdrożeń aktualizacji urządzeń w celu wdrożenia określonej aktualizacji na urządzeniach.
Konfigurowanie dostępu dla jednostki usługi Azure Device Update w usłudze IoT Hub
Usługa Device Update dla usługi IoT Hub komunikuje się z usługą IoT Hub na potrzeby wdrożeń i zarządzania aktualizacjami na dużą skalę. Aby włączyć tę funkcję aktualizacji urządzeń, użytkownicy muszą ustawić dostęp współautora danych usługi IoT Hub dla jednostki usługi Azure Device Update w uprawnieniach usługi IoT Hub.
Wdrażanie, zarządzanie urządzeniami i aktualizacjami oraz akcje diagnostyczne nie będą dozwolone, jeśli te uprawnienia nie zostaną ustawione. Operacje, które zostaną zablokowane, będą obejmować:
- Utwórz wdrożenie
- Anulowanie wdrożenia
- Ponów próbę wdrożenia
- Pobieranie urządzenia
Uprawnienie można ustawić z poziomu kontroli dostępu do usługi IoT Hub (IAM). Zobacz Konfigurowanie dostępu dla jednostki usługi aktualizacji urządzeń platformy Azure w połączonym centrum IoT
Uwierzytelnianie w interfejsach API REST aktualizacji urządzeń
Usługa Device Update używa identyfikatora Entra firmy Microsoft do uwierzytelniania w interfejsach API REST. Aby rozpocząć pracę, należy utworzyć i skonfigurować aplikację kliencką.
Tworzenie aplikacji Microsoft Entra klienta
Aby zintegrować aplikację lub usługę z identyfikatorem Entra firmy Microsoft, najpierw zarejestruj aplikację kliencką w usłudze Microsoft Entra ID. Konfiguracja aplikacji klienckiej będzie się różnić w zależności od wymaganego przepływu autoryzacji (użytkowników, aplikacji lub tożsamości zarządzanych). Aby na przykład wywołać usługę Device Update z:
- Aplikacja mobilna lub klasyczna, dodaj platformę aplikacji mobilnych i klasycznych za pomocą
https://login.microsoftonline.com/common/oauth2/nativeclient
identyfikatora URI przekierowania. - Witryna internetowa z niejawnym logowaniem, dodaj platformę internetową i wybierz pozycję Tokeny dostępu (używane dla przepływów niejawnych).
Uwaga
Firma Microsoft zaleca korzystanie z najbezpieczniejszego dostępnego przepływu uwierzytelniania. Uwierzytelnianie niejawne przepływu wymaga bardzo wysokiego poziomu zaufania w aplikacji i niesie ze sobą ryzyko, które nie występują w innych przepływach. Tego przepływu należy używać tylko wtedy, gdy inne bezpieczniejsze przepływy, takie jak tożsamości zarządzane, nie są opłacalne.
Konfiguracja uprawnień
Następnie dodaj uprawnienia do wywoływania usługi Device Update do aplikacji:
- Przejdź do strony uprawnień interfejsu API aplikacji i wybierz pozycję Dodaj uprawnienie.
- Przejdź do pozycji Interfejsy API używane przez moją organizację i wyszukaj usługę Azure Device Update.
- Wybierz pozycję user_impersonation uprawnienie i wybierz pozycję Dodaj uprawnienia.
Żądanie tokenu autoryzacji
Interfejs API REST aktualizacji urządzenia wymaga tokenu autoryzacji OAuth 2.0 w nagłówku żądania. W poniższych sekcjach przedstawiono kilka przykładów sposobów żądania tokenu autoryzacji.
Korzystanie z interfejsu wiersza polecenia platformy Azure
az login
az account get-access-token --resource 'https://api.adu.microsoft.com/'
Korzystanie z biblioteki MSAL programu PowerShell
MSAL.PS moduł programu PowerShell jest otoką biblioteki Microsoft Authentication Library for .NET (MSAL .NET). Obsługuje różne metody uwierzytelniania.
Używanie poświadczeń użytkownika:
$clientId = '<app_id>'
$tenantId = '<tenant_id>'
$authority = "https://login.microsoftonline.com/$tenantId/v2.0"
$Scope = 'https://api.adu.microsoft.com/user_impersonation'
Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope
Używanie poświadczeń użytkownika z kodem urządzenia:
$clientId = '<app_id>’
$tenantId = '<tenant_id>’
$authority = "https://login.microsoftonline.com/$tenantId/v2.0"
$Scope = 'https://api.adu.microsoft.com/user_impersonation'
Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope -Interactive -DeviceCode
Używanie poświadczeń aplikacji:
$clientId = '<app_id>’
$tenantId = '<tenant_id>’
$cert = '<client_certificate>'
$authority = "https://login.microsoftonline.com/$tenantId/v2.0"
$Scope = 'https://api.adu.microsoft.com/.default'
Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope -ClientCertificate $cert
Obsługa tożsamości zarządzanych
Zarządzane tożsamości zapewniają usługom Azure automatycznie zarządzaną tożsamość w Microsoft Entra ID w bezpieczny sposób. Eliminuje to potrzeby deweloperów, którzy muszą zarządzać poświadczeniami, zapewniając tożsamość. Usługa Device Update dla usługi IoT Hub obsługuje tożsamości zarządzane przypisane przez system.
Tożsamość zarządzana przypisana przez system
Aby dodać i usunąć tożsamość zarządzaną przypisaną przez system w witrynie Azure Portal:
- Zaloguj się do witryny Azure Portal i przejdź do żądanej aktualizacji urządzenia dla konta usługi IoT Hub.
- Przejdź do pozycji Tożsamość w swojej aktualizacji urządzenia dla portalu usługi IoT Hub
- Przejdź do pozycji Tożsamość w portalu usługi IoT Hub
- Na karcie Przypisane przez system wybierz pozycję Włączone, a następnie kliknij przycisk Zapisz.
Aby usunąć tożsamość zarządzaną przypisaną przez system z konta usługi IoT Hub, wybierz pozycję Wył. i kliknij przycisk Zapisz.