Ottenere l'accesso all’API con il contesto utente
Questo articolo descrive come creare un'applicazione per ottenere l'accesso a livello di codice all'API Desktop gestito da Microsoft per conto di un utente.
L'accesso api richiede l'autenticazione OAuth2.0. Per altre informazioni, vedere Flusso del codice di autorizzazione OAuth 2.0.
Per configurare un servizio e ottenere un token di accesso:
- Creare e registrare un'applicazione Microsoft Entra.
- Configurare le autorizzazioni per Desktop gestito da Microsoft nell'app.
- Ottenere il consenso dell'amministratore.
- Ottenere un token di accesso usando questa applicazione.
- Usare il token per accedere all'API Desktop gestito microsoft.
Creare un'app
Per eseguire l'autenticazione con l'endpoint Microsoft Identity Platform, è prima necessario registrare l'app nel portale di registrazione delle app di Azure.
Per un servizio che chiamerà l'API Desktop gestito microsoft con la propria identità, è necessario registrare l'app per la piattaforma Web e copiare i valori seguenti:
- ID applicazione assegnato dal portale di registrazione delle app di Azure.
- Un segreto client (applicazione), una password o una coppia di chiavi pubblica/privata (certificato).
- URL di reindirizzamento per consentire al servizio di ricevere risposte token.
Per la procedura per configurare un'app usando il portale di registrazione delle app di Azure, vedere Registrare l'app.
Con il flusso di concessione delle credenziali client OAuth 2.0, l'app esegue l'autenticazione direttamente nell'endpoint Microsoft Identity Platform usando l'ID applicazione assegnato da Microsoft Entra ID e il segreto client creato tramite il portale.
Configurare le autorizzazioni
Per configurare le autorizzazioni delegate per l'app nel portale registrazioni app di Azure:
- Nella pagina Autorizzazioni API dell'applicazione scegliere Aggiungi API di autorizzazione > usate dall'organizzazione > per digitare API >dei clienti di Modern Workplace selezionare API dei clienti di Modern Workplace.
- Selezionare Autorizzazioni > delegate MWaaSDevice.Read e quindi selezionare Aggiungi autorizzazioni.
- Per configurare autorizzazioni delegate aggiuntive per l'app nel portale registrazioni app di Azure, nella pagina Autorizzazioni API dell'applicazione scegliere Aggiungi un'autorizzazione > scegliere Microsoft Graph.
- Selezionare Autorizzazioni >delegate scegliere offline_access e openid e quindi selezionare Aggiungi autorizzazioni.
Ottenere un token di accesso
Nel flusso di concessione delle credenziali client OAuth 2.0 si usano i valori di ID applicazione e segreto client salvati durante la registrazione dell'app per richiedere un token di accesso direttamente dall'endpoint Microsoft Identity Platform/token
.
Il primo passaggio per ottenere un token di accesso per il flusso del codice di autorizzazione OAuth 2.0 consiste nel reindirizzare l'utente all'endpoint Microsoft Identity Platform/authorize
. Microsoft Entra ID eseguirà l'accesso dell'utente e richiederà il consenso per le autorizzazioni richieste dall'app. Nel flusso di concessione del codice di autorizzazione, dopo aver ottenuto il consenso, Microsoft Entra ID restituirà all'app un oggetto authorization_code
che può riscattare nell'endpoint Microsoft Identity Platform/token per un token di accesso.
Richiesta di autorizzazione
Nel flusso di concessione delle credenziali client OAuth 2.0 si usano i valori di ID applicazione e segreto client salvati durante la registrazione dell'app per richiedere un token di accesso direttamente dall'endpoint Microsoft Identity Platform/token
.
https://login.microsoftonline.com/{tenantId}/oauth2/authorize
Parametro | Condizione | Descrizione |
---|---|---|
tenantId | Obbligatorio | Microsoft Entra ID del tenant. |
client_id | Obbligatorio | ID applicazione assegnato al momento della registrazione dell'app. |
Ambito | Obbligatorio | Deve essere incluso: openid offline_access https://mwaas-services-customerapi-prod.azurewebsites.net/.default |
grant_type | Obbligatorio | Deve essere client_credential . |
response_type | Obbligatorio | Deve essere codice. |
redirect_uri | Consigliata | Oggetto redirect_uri dell'app, in cui le risposte di autenticazione possono essere inviate e ricevute dall'app. Deve corrispondere esattamente a uno degli elementi redirect_uris registrati nel portale di registrazione dell'app. |
Risposta di autorizzazione
Se l'utente acconsente alle autorizzazioni richieste dall'app, la risposta conterrà il codice di autorizzazione nel parametro di codice.
Richiesta di token
Se l'utente acconsente alle autorizzazioni richieste dall'app, la risposta conterrà il codice di autorizzazione nel parametro di codice.
https://login.microsoftonline.com/{tenantId}/oauth2/token
Parametro | Condizione | Descrizione |
---|---|---|
tenantId | Obbligatorio | Microsoft Entra ID del tenant. |
client_id | Obbligatorio | ID applicazione assegnato al momento della registrazione dell'app. |
Ambito | Obbligatorio | Deve essere https://mwaas-services-customerapi-prod.azurewebsites.net/.default |
client_secret | Obbligatorio | Segreto client generato per l'app nel portale di registrazione dell'app. |
grant_type | Obbligatorio | Deve essere authorization_code . |
Codice | Obbligatorio | Codice di autorizzazione acquisito come parte della richiesta di autorizzazione. |
Risposta del token
Una risposta JSON riuscita ha un aspetto simile al seguente:
{
"token_type": "Bearer",
"expires_in": "3599",
"access_token": "access_token"
}
Parametro | Descrizione |
---|---|
access_token | Token di accesso richiesto. L'app può usare questo token nelle chiamate all'API. |
token_type | Dev'essere portatore. |
expires_in | Per quanto tempo il token di accesso è valido (in secondi). |
Usare il token per accedere all'API Desktop gestito microsoft
- Scegliere l'API da usare.
- Impostare l'intestazione di autorizzazione nella richiesta HTTP inviata a "Bearer {token}" (Bearer è lo schema di autorizzazione).