Esaminare le autorizzazioni concesse alle applicazioni aziendali

Questo articolo illustra come esaminare le autorizzazioni concesse alle applicazioni nel tenant di Microsoft Entra. Potrebbe essere necessario esaminare le autorizzazioni quando è stata rilevata un'applicazione dannosa o se all'applicazione sono state concesse più autorizzazioni del necessario. Si apprenderà come revocare le autorizzazioni concesse all'applicazione usando l'API Microsoft Graph e le versioni esistenti di PowerShell.

I passaggi descritti in questo articolo si applicano a tutte le applicazioni aggiunte al tenant di Microsoft Entra tramite il consenso dell'utente o dell'amministratore. Per altre informazioni sul consenso alle applicazioni, vedere Consenso utente e amministratore.

Prerequisiti

Per esaminare le autorizzazioni concesse alle applicazioni, è necessario:

  • Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
  • Uno dei ruoli seguenti: Global Amministrazione istrator, Cloud Application Amministrazione istrator, Application Amministrazione istrator.
  • Un proprietario dell'entità servizio che non è un amministratore è in grado di invalidare i token di aggiornamento.

Ripristino delle autorizzazioni

Per informazioni su come ripristinare le autorizzazioni revocate o eliminate, vedere Ripristinare le autorizzazioni concesse alle applicazioni .

Esaminare e revocare le autorizzazioni

Suggerimento

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

È possibile accedere all'interfaccia di amministrazione di Microsoft Entra per visualizzare le autorizzazioni concesse a un'app. È possibile revocare le autorizzazioni concesse dagli amministratori per l'intera organizzazione ed è possibile ottenere script di PowerShell contestuali per eseguire altre azioni.

Per esaminare le autorizzazioni di un'applicazione concesse per l'intera organizzazione o per un utente o un gruppo specifico:

  1. Accedere all'interfaccia di amministrazione di Microsoft Entra come almeno un'applicazione cloud Amministrazione istrator.
  2. Passare a Applicazioni di identità>Applicazioni>aziendali>Tutte le applicazioni.
  3. Selezionare l'applicazione a cui si vuole limitare l'accesso.
  4. Selezionare Autorizzazioni.
  5. Per visualizzare le autorizzazioni applicabili all'intera organizzazione, selezionare la scheda Amministrazione consenso. Per visualizzare le autorizzazioni concesse a un utente o a un gruppo specifico, selezionare la scheda Consenso utente.
  6. Per visualizzare i dettagli di una determinata autorizzazione, selezionare l'autorizzazione dall'elenco. Viene visualizzato il riquadro Dettagli autorizzazione. Dopo aver esaminato le autorizzazioni concesse a un'applicazione, è possibile revocare le autorizzazioni concesse dagli amministratori per l'intera organizzazione.

    Nota

    Non è possibile revocare le autorizzazioni nella scheda Consenso utente usando il portale. È possibile revocare queste autorizzazioni usando le chiamate all'API Microsoft Graph o i cmdlet di PowerShell. Per altre informazioni, vedere le schede di PowerShell e Microsoft Graph di questo articolo.

Per revocare le autorizzazioni nella scheda Amministrazione consenso:

  1. Visualizzare l'elenco delle autorizzazioni nella scheda Amministrazione consenso.
  2. Scegliere l'autorizzazione da revocare, quindi selezionare il controllo ... per tale autorizzazione. Screenshot shows how to revoke admin consent.
  3. Selezionare Revoca autorizzazione.

Esaminare e revocare le autorizzazioni

Usare lo script di Azure AD PowerShell seguente per revocare tutte le autorizzazioni concesse a un'applicazione. È necessario accedere come almeno un'applicazione cloud Amministrazione istrator.

Connect-AzureAD 

# Get Service Principal using objectId
$sp = Get-AzureADServicePrincipal -ObjectId "<ServicePrincipal objectID>"

# Get all delegated permissions for the service principal
$spOAuth2PermissionsGrants = Get-AzureADOAuth2PermissionGrant -All $true| Where-Object { $_.clientId -eq $sp.ObjectId }

# Remove all delegated permissions
$spOAuth2PermissionsGrants | ForEach-Object {
    Remove-AzureADOAuth2PermissionGrant -ObjectId $_.ObjectId
}

# Get all application permissions for the service principal
$spApplicationPermissions = Get-AzureADServiceAppRoleAssignedTo -ObjectId $sp.ObjectId -All $true | Where-Object { $_.PrincipalType -eq "ServicePrincipal" }

# Remove all application permissions
$spApplicationPermissions | ForEach-Object {
    Remove-AzureADServiceAppRoleAssignment -ObjectId $_.PrincipalId -AppRoleAssignmentId $_.objectId
}

Invalidare i token di aggiornamento

Rimuovere appRoleAssignments per utenti o gruppi nell'applicazione usando gli script seguenti.

Connect-AzureAD

# Get Service Principal using objectId
$sp = Get-AzureADServicePrincipal -ObjectId "<ServicePrincipal objectID>"

# Get Azure AD App role assignments using objectID of the Service Principal
$assignments = Get-AzureADServiceAppRoleAssignment -ObjectId $sp.ObjectId -All $true | Where-Object {$_.PrincipalType -eq "User"}

# Revoke refresh token for all users assigned to the application
$assignments | ForEach-Object {
    Revoke-AzureADUserAllRefreshToken -ObjectId $_.PrincipalId
}

Esaminare e revocare le autorizzazioni

Usare lo script di PowerShell di Microsoft Graph seguente per revocare tutte le autorizzazioni concesse a un'applicazione. È necessario accedere come almeno un'applicazione cloud Amministrazione istrator.

Connect-MgGraph -Scopes "Application.ReadWrite.All", "Directory.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"

# Get Service Principal using objectId
$sp = Get-MgServicePrincipal -ServicePrincipalID "$ServicePrincipalID"

Example: Get-MgServicePrincipal -ServicePrincipalId '22c1770d-30df-49e7-a763-f39d2ef9b369'

# Get all delegated permissions for the service principal
$spOAuth2PermissionsGrants= Get-MgOauth2PermissionGrant -All| Where-Object { $_.clientId -eq $sp.Id }

# Remove all delegated permissions
$spOauth2PermissionsGrants |ForEach-Object {
  Remove-MgOauth2PermissionGrant -OAuth2PermissionGrantId $_.Id
  }

# Get all application permissions for the service principal
$spApplicationPermissions = Get-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $Sp.Id -All | Where-Object { $_.PrincipalType -eq "ServicePrincipal" }

# Remove all application permissions
$spApplicationPermissions | ForEach-Object {
Remove-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $Sp.Id  -AppRoleAssignmentId $_.Id
 }

Invalidare i token di aggiornamento

Rimuovere appRoleAssignments per utenti o gruppi nell'applicazione usando gli script seguenti.

Connect-MgGraph -Scopes "Application.ReadWrite.All", "Directory.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"

# Get Service Principal using objectId
$sp = Get-MgServicePrincipal -ServicePrincipalID "$ServicePrincipalID"

Example: Get-MgServicePrincipal -ServicePrincipalId '22c1770d-30df-49e7-a763-f39d2ef9b369'

# Get Azure AD App role assignments using objectID of the Service Principal
$spApplicationPermissions = Get-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalID $sp.Id -All | Where-Object { $_.PrincipalType -eq "ServicePrincipal" }

# Revoke refresh token for all users assigned to the application
  $spApplicationPermissions | ForEach-Object {
  Remove-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $_.PrincipalId -AppRoleAssignmentId $_.Id
  }

Esaminare e revocare le autorizzazioni

Per esaminare le autorizzazioni, accedere a Graph Explorer come almeno un'applicazione cloud Amministrazione istrator.

È necessario fornire il consenso alle autorizzazioni seguenti:

Application.ReadWrite.All, Directory.ReadWrite.All, DelegatedPermissionGrant.ReadWrite.AllAppRoleAssignment.ReadWrite.All.

Autorizzazioni delegate

Eseguire le query seguenti per esaminare le autorizzazioni delegate concesse a un'applicazione.

  1. Ottenere l'entità servizio usando l'ID oggetto.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
    

    Esempio:

    GET https://graph.microsoft.com/v1.0/servicePrincipals/00063ffc-54e9-405d-b8f3-56124728e051
    
  2. Ottenere tutte le autorizzazioni delegate per l'entità servizio

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}/oauth2PermissionGrants
    
  3. Rimuovere le autorizzazioni delegate usando oAuth2PermissionGrants ID.

    DELETE https://graph.microsoft.com/v1.0/oAuth2PermissionGrants/{id}
    

Autorizzazioni dell'applicazione

Eseguire le query seguenti per esaminare le autorizzazioni dell'applicazione concesse a un'applicazione.

  1. Ottenere tutte le autorizzazioni dell'applicazione per l'entità servizio

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignments
    
  2. Rimuovere le autorizzazioni dell'applicazione usando l'ID appRoleAssignment

    DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{resource-servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
    

Invalidare i token di aggiornamento

Eseguire le query seguenti per rimuovere appRoleAssignments di utenti o gruppi nell'applicazione.

  1. Ottenere l'entità servizio usando objectID.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
    

    Esempio:

    GET https://graph.microsoft.com/v1.0/servicePrincipals/57443554-98f5-4435-9002-852986eea510
    
  2. Ottenere le assegnazioni di ruolo dell'app Microsoft Entra usando objectID dell'entità servizio.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo
    
  3. Revocare il token di aggiornamento per utenti e gruppi assegnati all'applicazione usando l'ID appRoleAssignment.

    DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
    

Nota

La revoca dell'autorizzazione concessa corrente non impedisce agli utenti di concedere nuovamente il consenso all'applicazione. Per impedire agli utenti di fornire il consenso, vedere Configurare il consenso degli utenti per le applicazioni.

Passaggi successivi