Controllo degli accessi in base al ruolo di Azure e Aggiornamento dei dispositivi di Azure per hub IoT
Per consentire agli utenti e alle applicazioni di accedere ad Aggiornamento dispositivi di Azure per hub IoT, è necessario concedere l'accesso alla risorsa Aggiornamento dispositivi. L'entità servizio Aggiornamento dispositivi deve anche ottenere l'accesso all'hub IoT associato per distribuire gli aggiornamenti e gestire i dispositivi.
Questo articolo illustra in che modo Aggiornamento dei dispositivi e hub IoT di Azure usare il controllo degli accessi in base al ruolo di Azure per fornire l'autenticazione e l'autorizzazione per gli utenti e le API del servizio. L'articolo descrive anche l'autenticazione dell'ID Entra di Microsoft per le API REST di Aggiornamento dispositivi e il supporto per le identità gestite in Aggiornamento dispositivi e hub IoT di Azure.
Ruoli di controllo di accesso di Aggiornamento dispositivi
Aggiornamento dispositivi supporta i ruoli controllo degli accessi in base al ruolo seguenti. Per altre informazioni, vedere Configurare il controllo di accesso per l'account di Aggiornamento dispositivi.
Nome ruolo | Descrizione |
---|---|
Amministratore aggiornamento dispositivi | Ha accesso a tutte le risorse di Aggiornamento dispositivi |
Lettore aggiornamento dispositivi | Può visualizzare tutti gli aggiornamenti e le distribuzioni |
Amministratore del contenuto di Aggiornamento dispositivi | Può visualizzare, importare ed eliminare gli aggiornamenti |
Lettore contenuto aggiornamento dispositivo | Può visualizzare gli aggiornamenti |
Amministratore distribuzioni aggiornamento dispositivi | Può gestire le distribuzioni degli aggiornamenti nei dispositivi |
Lettore distribuzioni di aggiornamenti del dispositivo | Può visualizzare le distribuzioni degli aggiornamenti nei dispositivi |
È possibile assegnare una combinazione di ruoli per fornire il livello di accesso corretto. Ad esempio, è possibile usare il ruolo Amministratore contenuto aggiornamento dispositivi per importare e gestire gli aggiornamenti, ma è necessario il ruolo Lettore distribuzioni aggiornamento dispositivi per visualizzare lo stato di avanzamento di un aggiornamento. Al contrario, con il ruolo Lettore aggiornamento dispositivi è possibile visualizzare tutti gli aggiornamenti, ma è necessario il ruolo Amministratore distribuzioni aggiornamento dispositivi per distribuire un aggiornamento ai dispositivi.
Accesso dell'entità servizio di Aggiornamento dispositivi a hub IoT
Aggiornamento dispositivi comunica con l'hub IoT associato per distribuire e gestire gli aggiornamenti su larga scala. Per abilitare questa comunicazione, è necessario concedere all'entità servizio Aggiornamento dispositivi l'accesso all'hub IoT con il ruolo Collaboratore dati hub IoT.
La concessione di questa autorizzazione consente la distribuzione, la gestione di dispositivi e aggiornamenti e le azioni di diagnostica seguenti:
- Creare la distribuzione
- Annullare la distribuzione
- Riprovare a eseguire la distribuzione
- Ottenere il dispositivo
È possibile impostare questa autorizzazione dalla pagina dell'hub IoT Controllo di accesso (IAM). Per altre informazioni, vedere Configurare l'accesso all'hub IoT per l'entità servizio Aggiornamento dispositivi.
API REST di aggiornamento dei dispositivi
Device Update usa l'ID Microsoft Entra per l'autenticazione nelle API REST. Per iniziare, è necessario creare e configurare un'applicazione client.
Creare un'app Microsoft Entra client
Per integrare un'applicazione o un servizio con Microsoft Entra ID, registrare prima un'applicazione client con Microsoft Entra ID. La configurazione dell'applicazione client varia a seconda del flusso di autorizzazione necessario: utenti, applicazioni o identità gestite. Ad esempio:
Per chiamare Aggiornamento dispositivi da un'applicazione per dispositivi mobili o desktop, selezionare Client pubblico/nativo (mobile e desktop) in Selezionare una piattaforma e immettere
https://login.microsoftonline.com/common/oauth2/nativeclient
per l'URI di reindirizzamento.Per chiamare Device Update da un sito Web con accesso implicito, usare la piattaforma Web . In Concessione implicita e flussi ibridi selezionare Token di accesso (usati per i flussi impliciti).
Nota
Usare il flusso di autenticazione più sicuro disponibile. L'autenticazione implicita del flusso richiede un elevato livello di attendibilità nell'applicazione e comporta rischi che non sono presenti in altri flussi. È consigliabile usare questo flusso solo quando altri flussi più sicuri, ad esempio le identità gestite, non sono validi.
Configura autorizzazioni
Concedere quindi le autorizzazioni all'app per chiamare Device Update.
- Passare alla pagina Autorizzazioni API dell'app e selezionare Aggiungi un'autorizzazione.
- Passare alle API usate dall'organizzazione e cercare Aggiornamento dispositivi di Azure.
- Selezionare user_impersonation autorizzazione e selezionare Aggiungi autorizzazioni.
Richiedere il token di autorizzazione
L'API REST di Aggiornamento dispositivi richiede un token di autorizzazione OAuth 2.0 nell'intestazione della richiesta. Le sezioni seguenti illustrano alcuni esempi di alcuni modi per richiedere un token di autorizzazione.
Interfaccia della riga di comando di Azure
az login
az account get-access-token --resource 'https://api.adu.microsoft.com/'
Libreria MSAL di PowerShell
MSAL.PS
Il modulo PowerShell è un wrapper su Microsoft Authentication Library per .NET (MSAL .NET) che supporta vari metodi di autenticazione.
Credenziali utente:
$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
Credenziali utente con codice dispositivo:
$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
Credenziali dell'app:
$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
Supporto per le identità gestite
Le identità gestite forniscono ai servizi di Azure identità sicure e gestite automaticamente da Microsoft Entra ID. Le identità gestite eliminano la necessità per gli sviluppatori di gestire le credenziali fornendo identità. Device Update supporta le identità gestite assegnate dal sistema.
Per aggiungere un'identità gestita assegnata dal sistema per Device Update:
- Nel portale di Azure passare all'account di Aggiornamento dispositivi.
- Nel riquadro di spostamento a sinistra selezionare Impostazioni>Identità.
- In Sistema assegnato nella pagina Identità impostare Stato su Sì.
- Selezionare Salva e quindi Sì.
Per aggiungere un'identità gestita assegnata dal sistema per hub IoT:
- Nel portale di Azure passare all'hub IoT.
- Nel riquadro di spostamento a sinistra selezionare Identità delle impostazioni>di sicurezza.
- In Assegnata dal sistema nella pagina Identità selezionare Sì in Stato.
- Selezionare Salva e quindi Sì.
Per rimuovere l'identità gestita assegnata dal sistema da un account di Aggiornamento dispositivi o dall'hub IoT, impostare o selezionare Disattivata nella pagina Identità e quindi selezionare Salva.