Kontrola dostępu oparta na rolach platformy Azure i aktualizacja urządzeń platformy Azure dla usługi IoT Hub
Aby użytkownicy i aplikacje mogły uzyskiwać dostęp do usługi Azure Device Update dla usługi IoT Hub, muszą mieć dostęp do zasobu usługi Device Update. Jednostka usługi Device Update musi również uzyskać dostęp do skojarzonego centrum IoT w celu wdrażania aktualizacji i zarządzania urządzeniami.
W tym artykule wyjaśniono, jak usługa Device Update i Usługa Azure IoT Hub używają kontroli dostępu opartej na rolach (RBAC) platformy Azure w celu zapewnienia uwierzytelniania i autoryzacji dla użytkowników i interfejsów API usług. W tym artykule opisano również uwierzytelnianie identyfikatora Entra firmy Microsoft dla interfejsów API REST aktualizacji urządzeń oraz obsługę tożsamości zarządzanych w usłudze Device Update i Azure IoT Hub.
Role kontroli dostępu aktualizacji urządzeń
Usługa Device Update obsługuje następujące role RBAC. Aby uzyskać więcej informacji, zobacz Konfigurowanie kontroli dostępu do konta usługi 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ć wdrożeniami aktualizacji urządzeń |
Czytelnik wdrożeń aktualizacji urządzeń | Może wyświetlać wdrożenia aktualizacji urządzeń |
Możesz przypisać kombinację ról, aby zapewnić odpowiedni poziom dostępu. Na przykład możesz użyć roli Administrator zawartości aktualizacji urządzenia do importowania aktualizacji i zarządzania nimi, ale potrzebujesz roli Czytelnik wdrożeń aktualizacji urządzeń, aby wyświetlić postęp aktualizacji. Z drugiej strony z rolą Czytelnik aktualizacji urządzeń można wyświetlić wszystkie aktualizacje, ale do wdrożenia aktualizacji na urządzeniach potrzebna jest rola Administratora wdrożeń aktualizacji urządzeń.
Dostęp jednostki usługi Device Update do usługi IoT Hub
Usługa Device Update komunikuje się ze skojarzonym centrum IoT w celu wdrażania aktualizacji i zarządzania nimi na dużą skalę. Aby włączyć tę komunikację, musisz przyznać jednostce usługi Device Update dostęp do centrum IoT Hub za pomocą roli Współautor danych usługi IoT Hub.
Przyznanie tego uprawnienia umożliwia następujące akcje wdrażania, zarządzania urządzeniami i aktualizacjami oraz diagnostyki:
- Tworzenie wdrożenia
- Anulowanie wdrożenia
- Ponów próbę wdrożenia
- Pobieranie urządzenia
To uprawnienie można ustawić na stronie IoT Hub Access Control (IAM). Aby uzyskać więcej informacji, zobacz Konfigurowanie dostępu do centrum IoT dla jednostki usługi Device Update.
Interfejsy API REST aktualizacji urządzenia
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 klienta aplikacji Microsoft Entra
Aby zintegrować aplikację lub usługę z identyfikatorem Entra firmy Microsoft, najpierw zarejestruj aplikację kliencką w usłudze Microsoft Entra ID. Konfiguracja aplikacji klienckiej różni się w zależności od wymaganego przepływu autoryzacji: użytkowników, aplikacji lub tożsamości zarządzanych. Na przykład:
Aby wywołać usługę Device Update z aplikacji mobilnej lub klasycznej, wybierz pozycję Klient publiczny/natywny (mobilny i klasyczny) w obszarze Wybierz platformę i wprowadź identyfikator
https://login.microsoftonline.com/common/oauth2/nativeclient
URI przekierowania.Aby wywołać usługę Device Update z witryny internetowej z niejawnym logowaniem, użyj platformy internetowej . W obszarze Niejawne udzielanie i przepływy hybrydowe wybierz pozycję Tokeny dostępu (używane dla przepływów niejawnych)..
Uwaga
Użyj najbardziej bezpiecznego przepływu uwierzytelniania dostępnego. Uwierzytelnianie niejawne przepływu wymaga wysokiego poziomu zaufania w aplikacji i niesie ze sobą ryzyko, które nie są obecne 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 przyznaj aplikacji uprawnienia do wywoływania usługi Device Update.
- 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 przykłady niektórych sposobów żądania tokenu autoryzacji.
Interfejs wiersza polecenia platformy Azure
az login
az account get-access-token --resource 'https://api.adu.microsoft.com/'
Biblioteka MSAL programu PowerShell
MSAL.PS
Moduł programu PowerShell to otoka biblioteki Microsoft Authentication Library dla platformy .NET (MSAL .NET), która obsługuje różne metody uwierzytelniania.
Poświadczenia 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
Poświadczenia 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
Poświadczenia 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
Tożsamości zarządzane zapewniają usługom platformy Azure bezpieczne, automatycznie zarządzane tożsamości identyfikatorów Entra firmy Microsoft. Tożsamości zarządzane eliminują konieczność zarządzania poświadczeniami przez deweloperów, udostępniając tożsamości. Usługa Device Update obsługuje tożsamości zarządzane przypisane przez system.
Aby dodać tożsamość zarządzaną przypisaną przez system dla usługi Device Update:
- W witrynie Azure Portal przejdź do swojego konta usługi Device Update.
- W obszarze nawigacji po lewej stronie wybierz pozycję Ustawienia>Tożsamość.
- W obszarze System przypisany na stronie Tożsamość ustaw wartość Stan na Wł.
- Wybierz pozycję Zapisz, a następnie wybierz pozycję Tak.
Aby dodać tożsamość zarządzaną przypisaną przez system dla usługi IoT Hub:
- W witrynie Azure Portal przejdź do centrum IoT Hub.
- W obszarze nawigacji po lewej stronie wybierz pozycję Ustawienia>zabezpieczeń Tożsamość.
- W obszarze Przypisane przez system na stronie Tożsamość wybierz pozycję Wł. w obszarze Stan.
- Wybierz pozycję Zapisz, a następnie wybierz pozycję Tak.
Aby usunąć tożsamość zarządzaną przypisaną przez system z konta usługi Device Update lub centrum IoT Hub, ustaw lub wybierz pozycję Wył. na stronie Tożsamość, a następnie wybierz pozycję Zapisz.