Condividi tramite


Configurare le autorizzazioni dell'app per un'API Web

In questa guida pratica si fornisce un'app client registrata con Microsoft Identity Platform con l'accesso con ambito basato su autorizzazioni all'API Web. Fornisci anche l'accesso all'app client a Microsoft Graph.

Specificando gli ambiti di un'API Web nella registrazione dell'app client, l'app client può ottenere da Microsoft Identity Platform un token di accesso che contiene gli ambiti. All'interno del codice, l'API Web può quindi fornire accesso basato su autorizzazioni alle relative risorse in base agli ambiti trovati nel token di accesso.

Prerequisiti

Aggiungere autorizzazioni per accedere all'API Web

Per consentire alle applicazioni client di accedere alle API Web, è necessario aggiungere autorizzazioni all'applicazione client per accedere all'API Web. Analogamente, nell'API Web è necessario configurare gli ambiti di accesso e i ruoli per l'applicazione client.

Per concedere a un'applicazione client l'accesso alla propria API Web, è necessario avere due registrazioni dell'app;

Il diagramma mostra in che modo le due registrazioni dell'app si riferiscono l'una all'altra, in cui l'app client ha tipi di autorizzazione diversi e l'API Web ha ambiti diversi a cui l'applicazione client può accedere. In questa sezione vengono aggiunte le autorizzazioni per la registrazione dell'app client.

Diagramma a linee che mostra un'API Web con ambiti esposti a destra e un'app client a sinistra con gli ambiti selezionati come autorizzazioni

Dopo aver registrato sia l'app client che l'API Web e aver esposto l'API creando gli ambiti, seguire questa procedura per configurare le autorizzazioni del client per l'API:

  1. Accedere all'interfaccia di amministrazione di Microsoft Entra come almeno un amministratore di applicazioni cloud.

  2. Se si ha accesso a più tenant, usare l'icona Impostazioni nel menu in alto per passare al tenant contenente la registrazione dell'app dal menu Directory + sottoscrizioni.

  3. Passare a Entra ID>, Registrazioni app, e quindi selezionare l'applicazione client (non l'API web).

  4. Selezionare Autorizzazioni API, quindi Aggiungere un'autorizzazione e selezionare API personali nella barra laterale.

    Screenshot con i pulsanti evidenziati di Registrazioni app, autorizzazioni API, Aggiungi un'autorizzazione e API personali per consentire all'utente di richiedere le autorizzazioni API.

  5. Selezionare l'API Web registrata come parte dei prerequisiti e selezionare Autorizzazioni delegate.

    • Le autorizzazioni delegate sono appropriate per le app client che accedono a un'API Web come utente connesso e il cui accesso deve essere limitato alle autorizzazioni selezionate nel passaggio successivo. Lasciare selezionata l'opzione Autorizzazioni delegate per questo esempio.

    • Le autorizzazioni dell'applicazione sono per applicazioni di tipo servizio o daemon che devono accedere a un'API Web come se stessi, senza interazione dell'utente per l'accesso o il consenso. A meno che non siano stati definiti ruoli applicazione per l'API Web, questa opzione è disabilitata.

  6. In Seleziona autorizzazioni espandere la risorsa di cui è stato definito l'ambito per l'API Web e selezionare le autorizzazioni che l'app client deve avere per conto dell'utente connesso.

    • Se sono stati usati i nomi di ambito di esempio specificati nella guida introduttiva precedente, verrà visualizzato Employees.Read.All e Employees.Write.All.
  7. Selezionare l'autorizzazione creata durante il completamento dei prerequisiti, ad esempio Employees.Read.All.

  8. Selezionare Aggiungi autorizzazioni per completare il processo.

Dopo aver aggiunto le autorizzazioni all'API, verranno visualizzate le autorizzazioni selezionate in Autorizzazioni configurate. L'immagine seguente mostra come l'autorizzazione delegata Employees.Read.All sia stata aggiunta alla registrazione dell'app client.

Riquadro Autorizzazioni configurate nel portale di Azure che mostra l'autorizzazione appena aggiunta

È anche possibile notare l'autorizzazione User.Read per l'API Microsoft Graph. Questa autorizzazione viene aggiunta automaticamente quando si registra un'app nel portale di Azure.

Aggiungere autorizzazioni per accedere a Microsoft Graph

Oltre ad accedere all'API Web personalizzata per conto dell'utente connesso, l'applicazione potrebbe anche dover accedere o modificare i dati dell'utente (o di altro tipo) archiviati in Microsoft Graph. Potrebbe anche essere presente un'app di servizio o daemon che deve accedere a Microsoft Graph automaticamente, eseguendo operazioni senza alcuna interazione utente.

Autorizzazione delegata per Microsoft Graph

Configurare l'autorizzazione delegata per Microsoft Graph per consentire all'applicazione client di eseguire operazioni per conto dell'utente connesso, ad esempio la lettura della posta elettronica o la modifica del profilo. Per impostazione predefinita, agli utenti dell'app client viene chiesto di fornire il consenso alle autorizzazioni delegate configurate al momento dell'accesso.

  1. Nella pagina Panoramica dell'applicazione client selezionare Autorizzazioni> APIAggiungi un'autorizzazione>Microsoft Graph

  2. Selezionare Autorizzazioni delegate. Microsoft Graph espone numerose autorizzazioni. Quella usata più di frequente è visualizzata all'inizio dell'elenco.

  3. In Seleziona autorizzazioni selezionare le autorizzazioni seguenti:

    Autorizzazione Descrizione
    email Visualizzare l'indirizzo di posta elettronica degli utenti
    offline_access Conservazione dell'accesso ai dati per cui è stato autorizzato l'accesso
    openid Autenticare gli utenti
    profile Visualizzare il profilo di base degli utenti
  4. Selezionare Aggiungi autorizzazioni per completare il processo.

Quando si configurano le autorizzazioni, agli utenti dell'app al momento dell'accesso viene richiesto di fornire il consenso per consentire all'app di accedere all'API della risorsa per conto dell'utente.

In qualità di amministratore, è anche possibile concedere il consenso per conto di tutti gli utenti in modo che non venga richiesto di farlo. Il consenso amministratore viene illustrato più avanti nella sezione Altre informazioni sulle autorizzazioni API e il consenso amministratore di questo articolo.

Autorizzazione dell'applicazione per Microsoft Graph

Configurare le autorizzazioni dell'applicazione per un'applicazione che deve eseguire l'autenticazione automaticamente senza alcuna interazione o consenso dell'utente. Le autorizzazioni dell'applicazione vengono in genere usate da servizi in background o da app daemon che accedono a un'API in modalità "headless" e da API Web che accedono a un'altra API (downstream).

Nei passaggi seguenti si concede l'autorizzazione all'autorizzazione Files.Read.All di Microsoft Graph come esempio.

  1. Accedere all'interfaccia di amministrazione di Microsoft Entra come almeno un amministratore di applicazioni cloud.
  2. Se si ha accesso a più tenant, usare l'icona Impostazioni nel menu in alto per passare al tenant contenente la registrazione dell'app dal menu Directory + sottoscrizioni.
  3. Passare aRegistrazioni app> e quindi selezionare l'applicazione client.
  4. Selezionare Autorizzazioni> APIAggiungere un'autorizzazione per>l'applicazione>.
  5. Tutte le autorizzazioni esposte da Microsoft Graph sono visualizzate in Selezionare le autorizzazioni.
  6. Selezionare l'autorizzazione o le autorizzazioni da concedere all'applicazione. È ad esempio possibile che sia presente un'app daemon che analizza i file dell'organizzazione, inviando avvisi relativi a un nome o un tipo di file specifico. In Seleziona autorizzazioni espandere File e quindi selezionare l'autorizzazione Files.Read.All .
  7. Selezionare Aggiungi autorizzazioni.
  8. Alcune autorizzazioni, ad esempio l'autorizzazione Files.Read.All di Microsoft Graph, richiedono il consenso dell'amministratore. Per concedere il consenso amministratore, selezionare il pulsante Concedi consenso amministratore , descritto più avanti nella sezione pulsante Consenso amministratore .

Configurare le credenziali del client

Le app che usano le autorizzazioni dell'applicazione eseguono l'autenticazione con le proprie credenziali, senza richiedere alcuna interazione utente. Prima che l'applicazione (o l'API) possa accedere a Microsoft Graph, all'API Web o a un'altra API usando le autorizzazioni dell'applicazione, è necessario configurare le credenziali dell'app client.

Per altre informazioni sulla configurazione delle credenziali di un'app, vedere la sezione Aggiungere credenziali di Avvio rapido: Registrare un'applicazione con Microsoft Identity Platform.

Il riquadro Autorizzazioni API di una registrazione dell'app contiene la tabella Autorizzazioni configurate e il pulsante Consenso amministratore, descritti nelle sezioni seguenti.

Autorizzazioni configurate

La tabella Autorizzazioni configurate nel riquadro Autorizzazioni API mostra l'elenco delle autorizzazioni richieste dall'applicazione per l'operazione di base, ovvero l'elenco di accesso alle risorse (RRA) richiesto . Gli utenti o i relativi amministratori dovranno fornire il consenso per queste autorizzazioni prima di usare l'app. In un secondo momento in fase di esecuzione è possibile richiedere altre autorizzazioni facoltative (usando il consenso dinamico).

Questo è l'elenco minimo di autorizzazioni per cui gli utenti dovranno fornire il consenso per usare l'app. Le autorizzazioni potrebbero essere più numerose, ma queste rimarranno obbligatorie. Per garantire una maggiore sicurezza e per facilitare l'uso dell'app per utenti e amministratori, è preferibile chiedere il consenso solo per le autorizzazioni realmente necessarie.

È possibile aggiungere o rimuovere le autorizzazioni visualizzate in questa tabella usando i passaggi descritti in precedenza. Gli amministratori possono fornire il consenso amministratore per il set completo di autorizzazioni di un'API visualizzate nella tabella e revocarlo per singole autorizzazioni.

Il pulsante Concedi consenso amministratore per {tenant} consente a un amministratore di concedere il consenso amministratore alle autorizzazioni configurate per l'applicazione. Quando si seleziona il pulsante, viene visualizzata una finestra di dialogo che chiede di confermare l'azione di consenso.

Pulsante Concedi consenso amministratore evidenziato nel riquadro delle autorizzazioni configurate all'interno del portale Azure

Dopo aver fornito il consenso, le autorizzazioni che richiedono il consenso amministratore vengono visualizzate come autorizzate:

Configurare la tabella delle autorizzazioni nel portale di Azure che mostra il consenso amministratore concesso per l'autorizzazione Files.Read.All

Il pulsante Concedi consenso amministratore è disabilitato se non si è un amministratore o se non sono state configurate autorizzazioni per l'applicazione. In caso di autorizzazioni concesse ma non ancora configurate, verrà chiesto di decidere come gestirle quando si fa clic sul pulsante del consenso amministratore. È possibile aggiungerle alle autorizzazioni configurate o rimuoverle.

Rimuovere le autorizzazioni dell'applicazione

È importante non concedere un numero eccessivo di autorizzazioni a un'applicazione rispetto a quanto necessario. Per revocare il consenso dell'amministratore per un'autorizzazione nell'applicazione;

  1. Passare all'applicazione e selezionare Autorizzazioni API.
  2. In Autorizzazioni configurate selezionare i tre puntini accanto all'autorizzazione da rimuovere e selezionare Revoca consenso amministratore.
  3. Nella finestra popup visualizzata selezionare Sì, rimuovere per revocare il consenso dell'amministratore per l'autorizzazione.

Passare all'argomento di avvio rapido successivo della serie per informazioni su come configurare i tipi di account che possono accedere all'applicazione. Ad esempio, è possibile limitare l'accesso solo a tali utenti dell'organizzazione (tenant singolo) o consentire agli utenti in altri tenant di Microsoft Entra (multi-tenant) e a quelli con account Microsoft personali (MSA).