Condividi tramite


Concedere a un'applicazione il consenso amministratore a livello di tenant

Questo articolo illustra come concedere il consenso amministratore a livello di tenant a un'applicazione in Microsoft Entra ID. Per informazioni su come configurare le singole impostazioni di consenso utente, vedere Configurare il consenso degli utenti finali alle applicazioni.

Quando si concede il consenso amministratore a livello di tenant a un'applicazione, si concede all'applicazione l'accesso alle autorizzazioni richieste per conto dell'intera organizzazione. La concessione del consenso amministratore per conto di un'organizzazione è un'operazione sensibile, che consente potenzialmente all'editore dell'applicazione l'accesso a parti significative dei dati dell'organizzazione o l'autorizzazione per eseguire operazioni con privilegi elevati. Esempi di tali operazioni possono essere la gestione dei ruoli, l'accesso completo a tutte le cassette postali o a tutti i siti e la rappresentazione completa dell'utente. È quindi necessario esaminare attentamente le autorizzazioni richieste dall'applicazione prima di concedere il consenso.

Per impostazione predefinita, la concessione del consenso amministratore a livello di tenant a un'applicazione consente a tutti gli utenti di accedere all'applicazione, se non diversamente specificato. Per limitare gli utenti che possono accedere a un'applicazione, configurare l'app per richiedere l'assegnazione dell'utente e quindi assegnare utenti o gruppi all'applicazione.

Importante

La concessione del consenso amministratore a livello di tenant può revocare le autorizzazioni già concesse a livello di tenant per tale applicazione. Le autorizzazioni che gli utenti hanno già concesso per proprio conto non sono interessate.

Prerequisiti

Per la concessione del consenso amministratore a livello di tenant è necessario accedere come utente autorizzato a concedere il consenso per conto dell'organizzazione.

Per concedere il consenso amministratore a livello di tenant, è necessario:

  • Un account utente di Microsoft Entra con uno dei ruoli seguenti:

    • Amministratore ruolo con privilegi, per concedere il consenso per le app che richiedono qualsiasi autorizzazione, per qualsiasi API.
    • Amministratore dell'applicazione cloud o amministratore applicazione per concedere il consenso per le app che richiedono qualsiasi autorizzazione per qualsiasi API, ad eccezione dei ruoli dell'app Microsoft Graph (autorizzazioni dell'applicazione).
    • Ruolo della directory personalizzato che include l'autorizzazione per concedere le autorizzazioni alle applicazioni, per le autorizzazioni richieste dall'applicazione.

È possibile concedere il consenso amministratore a livello di tenant tramite il riquadro Applicazioni aziendali se è già stato effettuato il provisioning dell'applicazione nel tenant. È ad esempio possibile effettuare il provisioning di un'app nel tenant se almeno un utente ha già acconsentito all'applicazione. Per altre informazioni, vedere Come e perché le applicazioni vengono aggiunte a Microsoft Entra ID.

Suggerimento

I passaggi descritti in questo articolo possono variare leggermente in base al portale da cui si inizia.

Per concedere il consenso amministratore a livello di tenant a un'app elencata nel riquadro Applicazioni aziendali:

  1. Accedere all'Interfaccia di amministrazione di Microsoft Entra almeno come Amministratore applicazione cloud.
  2. Passare a Identità>Applicazioni>Applicazioni aziendali>Tutte le applicazioni.
  3. Immettere il nome dell'applicazione esistente nella casella di ricerca e quindi selezionare l'applicazione nei risultati della ricerca.
  4. Selezionare Autorizzazioni in Sicurezza. Screenshot che mostra come concedere il consenso amministratore a livello di tenant.
  5. Esaminare attentamente le autorizzazioni richieste dall'applicazione. Se si accettano le autorizzazioni richieste dall'applicazione, selezionare Concedi consenso amministratore.

È possibile concedere il consenso amministratore a livello di tenant da Registrazioni app nell'Interfaccia di amministrazione di Microsoft Entra per le applicazioni sviluppate e registrate direttamente nel tenant di Microsoft Entra.

Per concedere il consenso amministratore a livello di tenant dalle registrazioni dell'app:

  1. Nell'Interfaccia di amministrazione di Microsoft Entra passare a Identità>Applicazioni>Registrazioni app>Tutte le applicazioni.
  2. Immettere il nome dell'applicazione esistente nella casella di ricerca e quindi selezionare l'applicazione nei risultati della ricerca.
  3. Selezionare Autorizzazioni API in Gestisci.
  4. Esaminare attentamente le autorizzazioni richieste dall'applicazione. Se si concorda, selezionare Concedi consenso amministratore.

Quando si concede il consenso amministratore a livello di tenant usando uno dei metodi descritti nella sezione precedente, viene aperta una finestra dall'Interfaccia di amministrazione di Microsoft Entra per richiedere il consenso amministratore a livello di tenant. Se si conosce l'ID client dell'applicazione (noto anche come ID applicazione), è possibile creare lo stesso URL in modo che conceda il consenso amministratore a livello di tenant.

L'URL relativo al consenso amministratore a livello di tenant ha il formato seguente:

https://login.microsoftonline.com/{organization}/adminconsent?client_id={client-id}

dove:

  • {client-id} è l'ID client dell'applicazione (detto anche ID app).
  • {organization} è l'ID tenant o qualsiasi nome di dominio verificato del tenant in cui si vuole fornire il consenso all'applicazione. È possibile usare il valore organizations, che fa sì che il consenso venga eseguito nel tenant principale dell'utente con cui si esegue l'accesso.

Come sempre, esaminare con cura le autorizzazioni richieste da un'applicazione prima di concedere il consenso.

Per altre informazioni sulla creazione dell'URL di consenso amministratore a livello di tenant, vedere Consenso amministratore in Microsoft Identity Platform.

In questa sezione si concedono autorizzazioni delegate all'applicazione. Le autorizzazioni delegate sono autorizzazioni necessarie all'applicazione per accedere a un'API per conto di un utente connesso. Le autorizzazioni vengono definite da un'API di risorsa e concesse all'applicazione aziendale, ovvero l'applicazione client. Questo consenso viene concesso per conto di tutti gli utenti.

Nell'esempio seguente l'API della risorsa è Microsoft Graph dell'ID oggetto aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb. L'API Microsoft Graph definisce le autorizzazioni delegate, User.Read.All e Group.Read.All. ConsentType è AllPrincipals, che indica che si sta acconsentendo per conto di tutti gli utenti nel tenant. L'ID oggetto dell'applicazione client enterprise è aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.

Attenzione

Fare attenzione. Le autorizzazioni concesse a livello di codice non sono soggette a revisione o conferma. Diventano effettive immediatamente.

  1. Connettersi a PowerShell Microsoft Graph e accedere almeno come Amministratore applicazione cloud.

    Connect-MgGraph -Scopes "Application.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All"
    
  2. Recuperare tutte le autorizzazioni delegate definite da Microsoft Graph (l'applicazione di risorse) nell'applicazione tenant. Identificare le autorizzazioni delegate che è necessario concedere all'applicazione client. In questo esempio le autorizzazioni di delega sono User.Read.All e Group.Read.All

    Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property Oauth2PermissionScopes | Select -ExpandProperty Oauth2PermissionScopes | fl
    
  3. Concedere le autorizzazioni delegate all'applicazione dell'organizzazione client eseguendo la richiesta seguente.

    $params = @{
    
    "ClientId" = "00001111-aaaa-2222-bbbb-3333cccc4444"
    "ConsentType" = "AllPrincipals"
    "ResourceId" = "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
    "Scope" = "User.Read.All Group.Read.All"
    }
    
    New-MgOauth2PermissionGrant -BodyParameter $params | 
    Format-List Id, ClientId, ConsentType, ResourceId, Scope
    
  4. Verificare di aver concesso il consenso amministratore a livello di tenant eseguendo la richiesta seguente.

 Get-MgOauth2PermissionGrant -Filter "clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' and consentType eq 'AllPrincipals'" 

In questa sezione si concedono le autorizzazioni dell'applicazione all'applicazione aziendale. Le autorizzazioni dell'applicazione sono autorizzazioni necessarie all'applicazione per accedere a un'API delle risorse. Le autorizzazioni vengono definite dall'API della risorsa e concesse all'applicazione aziendale, ovvero l'applicazione principale. Dopo aver concesso all'applicazione l'accesso all'API delle risorse, questa viene eseguita come servizio in background o daemon senza un utente connesso. Le autorizzazioni dell'applicazione sono note anche come ruoli dell'app.

Nell'esempio seguente si concede all'applicazione Microsoft Graph (l'entità di sicurezza dell'ID aaaaaaaa-bbbb-cccc-1111-222222222222) un ruolo dell'app (autorizzazione dell'applicazione) dell'ID df021288-bdef-4463-88db-98f22de89214 esposto da un'API di risorsa con ID 11112222-bbbb-3333-cccc-4444dddd5555.

  1. Connettersi a PowerShell Microsoft Graph e accedere almeno come Amministratore ruolo con privilegi.

    Connect-MgGraph -Scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
    
  2. Recuperare i ruoli dell'app definiti da Microsoft Graph nel tenant. Identificare il ruolo dell'app che è necessario concedere all'applicazione aziendale client. In questo esempio l'ID del ruolo app è df021288-bdef-4463-88db-98f22de89214.

    Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property AppRoles | Select -ExpandProperty appRoles |fl
    
  3. Concedere l'autorizzazione dell'applicazione (ruolo app) all'applicazione principale eseguendo la richiesta seguente.

 $params = @{
  "PrincipalId" ="aaaaaaaa-bbbb-cccc-1111-222222222222"
  "ResourceId" = "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
  "AppRoleId" = "df021288-bdef-4463-88db-98f22de89214"
}

New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId 'aaaaaaaa-bbbb-cccc-1111-222222222222' -BodyParameter $params | 
  Format-List Id, AppRoleId, CreatedDateTime, PrincipalDisplayName, PrincipalId, PrincipalType, ResourceDisplayName

Usare Graph explorer per concedere autorizzazioni sia delegate che dell'applicazione.

In questa sezione si concedono autorizzazioni delegate all'applicazione. Le autorizzazioni delegate sono autorizzazioni necessarie all'applicazione per accedere a un'API per conto di un utente connesso. Le autorizzazioni vengono definite da un'API di risorsa e concesse all'applicazione aziendale, ovvero l'applicazione client. Questo consenso viene concesso per conto di tutti gli utenti.

È necessario accedere almeno come un amministratore applicazione cloud.

Nell'esempio seguente l'API della risorsa è Microsoft Graph dell'ID oggetto aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb. L'API Microsoft Graph definisce le autorizzazioni delegate, User.Read.All e Group.Read.All. ConsentType è AllPrincipals, che indica che si sta acconsentendo per conto di tutti gli utenti nel tenant. L'ID oggetto dell'applicazione client enterprise è aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.

Attenzione

Fare attenzione. Le autorizzazioni concesse a livello di codice non sono soggette a revisione o conferma. Diventano effettive immediatamente.

  1. Recuperare tutte le autorizzazioni delegate definite da Microsoft Graph (l'applicazione di risorse) nell'applicazione tenant. Identificare le autorizzazioni delegate che è necessario concedere all'applicazione client. In questo esempio le autorizzazioni di delega sono User.Read.All e Group.Read.All

    GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,oauth2PermissionScopes
    
  2. Concedere le autorizzazioni delegate all'applicazione dell'organizzazione client eseguendo la richiesta seguente.

    POST https://graph.microsoft.com/v1.0/oauth2PermissionGrants
    
    Request body
    {
       "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
       "consentType": "AllPrincipals",
       "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
       "scope": "User.Read.All Group.Read.All"
    }
    
  3. Verificare di aver concesso il consenso amministratore a livello di tenant eseguendo la richiesta seguente.

    GET https://graph.microsoft.com/v1.0/oauth2PermissionGrants?$filter=clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' and consentType eq 'AllPrincipals'
    

In questa sezione si concedono le autorizzazioni dell'applicazione all'applicazione aziendale. Le autorizzazioni dell'applicazione sono autorizzazioni necessarie all'applicazione per accedere a un'API delle risorse. Le autorizzazioni vengono definite dall'API della risorsa e concesse all'applicazione aziendale, ovvero l'applicazione principale. Dopo aver concesso all'applicazione l'accesso all'API delle risorse, questa viene eseguita come servizio in background o daemon senza un utente connesso. Le autorizzazioni dell'applicazione sono note anche come ruoli dell'app.

Nell'esempio seguente si concede all'applicazione Microsoft Graph (l'entità di sicurezza dell'ID 00001111-aaaa-2222-bbbb-3333cccc4444) un ruolo dell'app (autorizzazione dell'applicazione) dell'ID df021288-bdef-4463-88db-98f22de89214 esposto da un'applicazione aziendale di risorsa con ID 11112222-bbbb-3333-cccc-4444dddd5555.

È necessario accedere almeno come un amministratore ruolo con privilegi.

  1. Recuperare i ruoli dell'app definiti da Microsoft Graph nel tenant. Identificare il ruolo dell'app che è necessario concedere all'applicazione aziendale client. In questo esempio l'ID del ruolo app è df021288-bdef-4463-88db-98f22de89214

    GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,appRoles
    
  2. Concedere l'autorizzazione dell'applicazione (ruolo app) all'applicazione principale eseguendo la richiesta seguente.

    POST https://graph.microsoft.com/v1.0/servicePrincipals/11112222-bbbb-3333-cccc-4444dddd5555/appRoleAssignedTo
    
    Request body
    
    {
       "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
       "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
       "appRoleId": "df021288-bdef-4463-88db-98f22de89214"
    }
    

Passaggi successivi