Registrare un'applicazione Microsoft Graph

Microsoft Graph consente di gestire molte delle risorse all'interno del tenant di Azure AD B2C, inclusi gli account utente dei clienti e i criteri personalizzati. Scrivendo script o applicazioni che chiamano l'API Microsoft Graph, è possibile automatizzare le attività di gestione dei tenant, ad esempio:

  • Eseguire la migrazione di un archivio utenti esistente a un tenant di Azure AD B2C
  • Distribuire criteri personalizzati con una pipeline di Azure in Azure DevOps e gestire chiavi di criteri personalizzate
  • Ospitare la registrazione utente nella propria pagina e creare account utente nella directory di Azure AD B2C in background
  • Automatizzare la registrazione dell'applicazione
  • Ottenere i log di controllo

Le sezioni seguenti illustrano come prepararsi all'uso dell'API Microsoft Graph per automatizzare la gestione delle risorse nella directory di Azure AD B2C.

Modalità di interazione dell'API Microsoft Graph

Esistono due modalità di comunicazione che è possibile usare quando si usa l'API Microsoft Graph per gestire le risorse nel tenant di Azure AD B2C:

  • Interattivo : appropriato per le attività di esecuzione una sola volta, si usa un account amministratore nel tenant B2C per eseguire le attività di gestione. Questa modalità richiede a un amministratore di accedere usando le credenziali prima di chiamare l'API Microsoft Graph.

  • Automatizzato : per le attività pianificate o in esecuzione continua, questo metodo usa un account del servizio configurato con le autorizzazioni necessarie per eseguire le attività di gestione. Per creare l'"account del servizio" in Azure AD B2C, registrare un'applicazione usata dalle applicazioni e dagli script per l'autenticazione usando l'ID applicazione (client) e la concessione delle credenziali client OAuth 2.0. In questo caso, l'applicazione agisce come se stessa per chiamare l'API Microsoft Graph, non l'utente amministratore come nel metodo interattivo descritto in precedenza.

Per abilitare lo scenario di interazione automatica , creare una registrazione dell'applicazione illustrata nelle sezioni seguenti.

Il servizio di autenticazione B2C di Azure AD supporta direttamente il flusso di concessione delle credenziali client OAuth 2.0 (attualmente in anteprima pubblica), ma non è possibile usarlo per gestire le risorse di Azure AD B2C tramite l'API Microsoft Graph. Tuttavia, è possibile configurare il flusso di credenziali client usando l'ID Microsoft Entra e l'endpoint di Microsoft Identity Platform /token per un'applicazione nel tenant di Azure AD B2C.

Registrare l'applicazione di gestione

Prima che gli script e le applicazioni possano interagire con l'API Microsoft Graph per gestire le risorse di Azure AD B2C, è necessario creare una registrazione dell'applicazione nel tenant di Azure AD B2C che concede le autorizzazioni API necessarie.

  1. Accedi al portale di Azure.
  2. Se si ha accesso a più tenant, selezionare l'icona Impostazioni nel menu in alto per passare al tenant di Azure AD B2C dal menu Directory e sottoscrizioni.
  3. Nel portale di Azure cercare e selezionare Azure AD B2C.
  4. Selezionare Registrazioni app e quindi Nuova registrazione.
  5. Immettere un nome per l'applicazione. Ad esempio, managementapp1.
  6. Selezionare Account solo in questa directory dell'organizzazione.
  7. In Autorizzazioni deselezionare la casella di controllo Concedi consenso amministratore a openid e offline_access autorizzazioni .
  8. Seleziona Registro.
  9. Registrare l'ID applicazione (client) visualizzato nella pagina di panoramica dell'applicazione. Questo valore viene usato in un passaggio successivo.

Concedere l'accesso all'API

Per consentire all'applicazione di accedere ai dati in Microsoft Graph, concedere all'applicazione registrata le autorizzazioni dell'applicazione pertinenti. Le autorizzazioni valide dell'applicazione sono il livello completo di privilegi impliciti per l'autorizzazione. Ad esempio, per creare, leggere, aggiornare ed eliminare ogni utente nel tenant di Azure AD B2C, aggiungere l'autorizzazione User.ReadWrite.All .

Nota

L'autorizzazione User.ReadWrite.All non include la possibilità di aggiornare le password dell'account utente. Se l'applicazione deve aggiornare le password dell'account utente, concedere il ruolo di amministratore utente. Quando si concede il ruolo di amministratore utente, user.ReadWrite.All non è necessario. Il ruolo di amministratore utenti include tutti gli elementi necessari per gestire gli utenti.

È possibile concedere all'applicazione più autorizzazioni dell'applicazione. Ad esempio, se l'applicazione deve gestire anche i gruppi nel tenant di Azure AD B2C, aggiungere anche l'autorizzazione Group.ReadWrite.All .

Registrazioni app

  1. In Gestisci selezionare Autorizzazioni API.
  2. In Autorizzazioni configurate selezionare Aggiungi un'autorizzazione.
  3. Selezionare la scheda API Microsoft, quindi selezionare Microsoft Graph.
  4. Seleziona Autorizzazioni applicazione.
  5. Espandere il gruppo di autorizzazioni appropriato e selezionare la casella di controllo dell'autorizzazione da concedere all'applicazione di gestione. ad esempio
    • User.ReadWrite.All>: per scenari di migrazione utente o gestione utenti.
    • Group.ReadWrite.All>: per creare gruppi, leggere e aggiornare le appartenenze ai gruppi ed eliminare gruppi.
    • AuditLog.Read.All>: per la lettura dei log di controllo della directory.
    • Policy.ReadWrite.TrustFramework>: per scenari di integrazione continua/recapito continuo (CI/CD). Ad esempio, distribuzione di criteri personalizzati con Azure Pipelines.
  6. Selezionare Aggiungi autorizzazioni. Come indicato, attendere alcuni minuti prima di procedere con il passaggio successivo.
  7. Selezionare Concedi consenso amministratore per (nome del tenant).
  8. Accedere con un account nel tenant di Azure AD B2C con il ruolo applicazione cloud Amministrazione istrator assegnato, quindi selezionare Concedi consenso amministratore per (nome tenant).
  9. Selezionare Aggiorna, quindi verificare che "Concesso per ..." viene visualizzato in Stato. La propagazione delle autorizzazioni potrebbe richiedere alcuni minuti.

[Facoltativo] Concedere il ruolo di amministratore utente

Se l'applicazione o lo script deve aggiornare le password degli utenti, è necessario assegnare il ruolo di amministratore utente all'applicazione. Il ruolo Amministratore utenti ha un set fisso di autorizzazioni concesse all'applicazione.

Per aggiungere il ruolo Amministratore utenti , seguire questa procedura:

  1. Accedi al portale di Azure.
  2. Se si ha accesso a più tenant, selezionare l'icona Impostazioni nel menu in alto per passare al tenant di Azure AD B2C dal menu Directory e sottoscrizioni.
  3. Cerca e seleziona Azure AD B2C.
  4. In Gestisci selezionare Ruoli e amministratori.
  5. Selezionare il ruolo Amministratore utenti .
  6. Selezionare Aggiungi assegnazioni.
  7. Nella casella di testo Seleziona immettere il nome o l'ID dell'applicazione registrata in precedenza, ad esempio managementapp1. Quando viene visualizzato nei risultati della ricerca, selezionare l'applicazione.
  8. Selezionare Aggiungi. La propagazione completa delle autorizzazioni potrebbe richiedere alcuni minuti.

Creare un segreto client

L'applicazione necessita di un segreto client per dimostrare la propria identità quando si richiede un token. Per aggiungere il segreto client, seguire questa procedura:

  1. In Gestisci selezionare Certificati e segreti.
  2. Selezionare Nuovo segreto client.
  3. Immettere una descrizione per il segreto client nella casella Descrizione. Ad esempio, clientsecret1.
  4. In Scadenzaselezionare una durata per la quale il segreto è valido, quindi selezionare Aggiungi.
  5. Registrare il Valore del segreto. Usare questo valore per la configurazione in un passaggio successivo.

Passaggi successivi

Dopo aver registrato l'applicazione di gestione e aver concesso le autorizzazioni necessarie, le applicazioni e i servizi ,ad esempio Azure Pipelines, possono usare le credenziali e le autorizzazioni per interagire con l'API Microsoft Graph.