Autenticazione e autorizzazione

Ogni chiamata all'API REST eseguita su un'applicazione IoT Central deve includere un'intestazione Authorization. L'intestazione Authorization deve contenere un token API o un token di connessione AAD. Questi token vengono usati da IoT Central per determinare chi è il chiamante e a cosa hanno accesso all'interno dell'applicazione.

Token API

I token API sono destinati alla comunicazione da servizio a servizio, senza un contesto utente connesso. È possibile creare un token API nell'applicazione e assegnargli un ruolo per concedere l'accesso alle risorse all'interno dell'applicazione.

Per creare e usare un token API:

  1. Aprire l'applicazione IoT Central nel browser.

  2. Passare ad Amministrazione/Token API

  3. Fare clic su Generate token (Genera token). Verrà richiesto di assegnargli un nome e scegliere un ruolo. Il ruolo determina le operazioni che un client che usa questo token è autorizzato a eseguire in questa applicazione.

  4. Generare il token e copiare il valore. Il valore è un segreto e verrà visualizzato una sola volta.

  5. Quando si costruisce una richiesta API, aggiungere un'intestazione simile alla seguente:

    Nome intestazione Valore intestazione
    Autorizzazione <Valore del token API>

Per impostazione predefinita, nell'applicazione sono disponibili 3 ruoli. Altre informazioni sulla creazione di nuovi ruoli.

È anche possibile creare nuovi token API a livello di codice. Per richiedere all'API di creare un nuovo token API, è necessaria un'intestazione di autorizzazione contenente un token API o un bearer con autorizzazioni per creare nuovi token API. Vedere la documentazione per le operazioni dei token API.

Token di connessione AAD

Un token di connessione è associato a un account utente di Azure Active Directory aggiunto all'applicazione IoT Central. È possibile generare un token di connessione nel comando dell'interfaccia della riga di comando di Azure: az account get-access-token --resource https://apps.azureiotcentral.com

Creare una richiesta API con l'intestazione seguente:

Nome intestazione Valore intestazione
Autorizzazione Bearer bearer <token value>

Quando si usa un token di connessione nelle richieste API, al chiamante viene concesso lo stesso livello di accesso che l'utente di Azure Active Directory ha nell'applicazione IoT Central.

Autenticazione di un'entità servizio

Per usare un'entità servizio AAD per eseguire l'autenticazione con l'API, è prima necessario creare l'entità servizio. Sarà necessario ottenere l'ID tenant e l'ID oggetto dell'entità servizio:

  1. Passare a portale di Azure -> Azure Active Directory -> Panoramica. Copiare l'ID tenant
  2. Passare ad Applicazioni aziendali. Creare una nuova applicazione o sceglierne una esistente. Copiare l'objectID
  3. Passare a portale di Azure -> Azure Active Directory -> Registrazioni app - App ->> Autorizzazioni API. Fare clic su Aggiungi un'autorizzazione -> API usate dall'organizzazione e cercare Microsoft IoT Central. Scegliere l'elemento corrispondente al testo esatto.
  4. Selezionare le autorizzazioni user_impersonation e Application.ReadWrite.All e aggiungerle.
  5. Selezionare Concedi consenso amministratore per la directory.

Aggiungere infine l'entità servizio all'applicazione IoT Central. Questa operazione è possibile tramite le API di oggi.

  1. Usare l'API Crea utenti per aggiungere l'utente dell'entità servizio. Assicurarsi di usare {tenantID} e {objectID} durante la creazione del nuovo utente.

È ora possibile usare il token di connessione associato a questo utente dell'entità servizio per effettuare richieste API, seguendo gli stessi passaggi descritti in precedenza.

Passaggi successivi

Provare a effettuare la prima richiesta API