Rollenbasierte Zugriffssteuerung in Azure (Role-Based Access Control, RBAC) und Device Update

Device Update verwendet Azure RBAC, um Authentifizierung und Autorisierung für Benutzer und Dienst-APIs bereitzustellen. Damit andere Benutzer und Anwendungen auf Device Update zugreifen können, muss den Benutzern oder Anwendungen Zugriff auf diese Ressource gewährt werden. Außerdem muss derZugriff auf den Azure Device Update Service Principal konfiguriert werden, um Updates erfolgreich zu verteilen und Ihre Geräte zu verwalten.

Konfigurieren von Zugriffssteuerungsrollen

Dies sind die Rollen, die von Device Update unterstützt werden:

Rollenname BESCHREIBUNG
Device Update-Administrator Besitzt Zugriff auf alle Geräteaktualisierungsressourcen.
Device Update-Leser Kann alle Updates und Bereitstellungen anzeigen.
Device Update-Inhaltsadministrator Kann Updates anzeigen, importieren und löschen.
Device Update-Inhaltsleser Kann Updates anzeigen.
Device Update-Bereitstellungsadministrator Kann die Bereitstellung von Updates für Geräte verwalten.
Device Update-Bereitstellungsleser Kann Bereitstellungen von Updates für Geräte anzeigen.

Eine Kombination von Rollen kann verwendet werden, um die richtige Zugriffsebene bereitzustellen. Beispielsweise kann ein Entwickler mit der Rolle „Device UpdateInhaltsadministrator“ Updates importieren und verwalten, er benötigt aber die Rolle „Device Update-Bereitstellungsleser“, um den Fortschritt eines Updates anzuzeigen. Umgekehrt kann ein Lösungsoperator mit der Rolle „Device Update-Leser“ alle Updates anzeigen, muss aber die Rolle „Device Update-Bereitstellungsadministrator“ verwenden, um ein bestimmtes Update auf Geräten bereitzustellen.

Konfigurieren des Zugriffs für den Azure Device Update Service Principal im IoT Hub

Device Update for IoT Hub kommuniziert mit dem IoT Hub für die Bereitstellung und Verwaltung von Updates in großem Umfang. Damit Device Update diese Aufgabe übernehmen kann, müssen Benutzer in den IoT Hub-Berechtigungen Zugriff vom Typ „Mitwirkender an IoT Hub-Daten“ für den Azure Device Update-Dienstprinzipal festlegen.

Bereitstellungs-, Geräte- und Updateverwaltungs- und Diagnoseaktionen sind nicht zulässig, wenn diese Berechtigungen nicht festgelegt sind. Es folgen Vorgänge, die blockiert werden:

  • Bereitstellung erstellen
  • Bereitstellung abbrechen
  • Wiederholung der Bereitstellung
  • Get Device

Die Berechtigung kann über IoT Hub Access Control (IAM) festgelegt werden. Weitere Informationen finden Sie unter Konfigurieren des Zugriffs für den Azure Device Update-Dienstprinzipal im verknüpften IoT-Hub.

Authentifizieren bei Device Update-REST-APIs

Device Update verwendet Microsoft Entra ID für die Authentifizierung bei REST-APIs. Zunächst müssen Sie eine Clientanwendung erstellen und konfigurieren.

Erstellen einer Microsoft Entra-Client-App

Um eine Anwendung oder einen Dienst in Microsoft Entra ID zu integrieren, registrieren Sie zunächst eine Clientanwendung bei Microsoft Entra ID. Die Einrichtung der Clientanwendung variiert je nach erforderlicher Autorisierung (Benutzer*innen, Anwendungen oder verwaltete Identitäten). Folgendes gilt für Aufrufe von Device Update:

  • Bei einem Aufruf aus mobilen Anwendungen oder Desktopanwendungen fügen Sie die Plattform Mobile und Desktop-Anwendungen mit https://login.microsoftonline.com/common/oauth2/nativeclient für den Umleitungs-URI hinzu.
  • Website mit impliziter Anmeldung, fügen Sie die Webplattform hinzu und wählen Sie Zugriffstoken (verwendet für implizite Flüsse) aus.

Konfigurieren von Berechtigungen

Fügen Sie als Nächstes Ihrer App Berechtigungen zum Aufrufen von Device Update hinzu:

  1. Wechseln Sie zur API-Berechtigungsseite Ihrer App, und wählen Sie Berechtigung hinzufügen aus.
  2. Wechseln Sie zu APIs, die meine Organisation verwendet, und suchen Sie nach Azure Device Update.
  3. Wählen Sie die Berechtigung user_impersonation aus, und wählen Sie Berechtigungen hinzufügen aus.

Anfordern eines Autorisierungstokens

Die Device Update-REST-API erfordert ein OAuth 2.0-Autorisierungstoken im Anforderungsheader. In den folgenden Abschnitten finden Sie einige Beispiele für Methoden zum Anfordern eines Autorisierungstokens.

Verwenden der Azure-Befehlszeilenschnittstelle

az login
az account get-access-token --resource 'https://api.adu.microsoft.com/'

Verwenden der PowerShell-MSAL-Bibliothek

MSAL.PS: Dieses PowerShell-Modul ist ein Wrapper für die Microsoft-Authentifizierungsbibliothek für .NET (MSAL .NET). Es unterstützt verschiedene Authentifizierungsmethoden.

Verwenden von Benutzeranmeldeinformationen:

$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

Verwenden von Benutzeranmeldeinformationen mit Gerätecode:

$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

Verwenden von App-Anmeldeinformationen:

$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

Unterstützung für verwaltete Identitäten

Verwaltete Identitäten stellen für Azure-Dienste eine automatisch verwaltete Identität in Microsoft Entra ID auf sichere Weise bereit. Dadurch entfällt die Notwendigkeit, dass Entwickler Anmeldeinformationen durch Bereitstellung einer Identität verwalten müssen. „Device Update for IoT Hub“ unterstützt vom System zugewiesene verwaltete Identitäten.

Systemseitig zugewiesene verwaltete Identität

Um eine systemseitig zugewiesene verwaltete Identität im Azure-Portal hinzuzufügen und zu entfernen:

  1. Melden Sie sich beim Azure-Portal an und Navigieren Sie zu Ihrem gewünschten „Device Update for IoT Hub“-Konto.
  2. Navigieren Sie zu Identität in Ihrem „Device Update for IoT Hub“-Portal
  3. Navigieren Sie im IoT Hub-Portal zu Identität.
  4. Wählen Sie auf der Registerkarte Systemseitig zugewiesen die Option Ein aus, und klicken Sie auf Speichern.

Zum Entfernen einer systemseitig zugewiesenen verwalteten Identität aus einem Geräteupdate für ein IoT-Hub-Konto wählen Sie „Aus“ aus und klicken auf „Speichern“.

Nächste Schritte