Protezione delle entità servizio in Microsoft Entra ID

Un'entità servizio Microsoft Entra è la rappresentazione locale di un oggetto applicazione in un tenant o in una directory. Si tratta dell'identità dell'istanza dell'applicazione. Le entità servizio definiscono l'accesso alle applicazioni e le risorse a cui accede l'applicazione. Un'entità servizio viene creata in ogni tenant in cui viene utilizzata l'applicazione e fa riferimento all'oggetto applicazione univoco a livello globale. Il tenant protegge l'accesso all'entità servizio e l'accesso alle risorse.

Altre informazioni: Oggetti applicazione e entità servizio in Microsoft Entra ID

Relazioni tra entità servizio tenant

Un'applicazione a tenant singolo ha un'entità servizio nel tenant principale. Un'applicazione Web multi-tenant o un'API richiede un'entità servizio in ogni tenant. Un'entità servizio viene creata quando un utente di tale tenant acconsente all'uso dell'applicazione o dell'API. Questo consenso crea una relazione uno-a-molti tra l'applicazione multi-tenant e le entità servizio associate.

Un'applicazione multi-tenant è ospitata in un tenant e ha istanze in altri tenant. La maggior parte delle applicazioni SaaS (Software-as-a-Service) supporta la multi-tenancy. Usare le entità servizio per garantire il comportamento di sicurezza necessario per l'applicazione e i relativi utenti in scenari a tenant singolo e multi-tenant.

ApplicationID e ObjectID

Un'istanza dell'applicazione ha due proprietà: ApplicationID (o ClientID) e ObjectID.

Nota

I termini applicazione e entità servizio vengono usati in modo intercambiabile quando si fa riferimento a un'applicazione nelle attività di autenticazione. Tuttavia, sono due rappresentazioni delle applicazioni in Microsoft Entra ID.

ApplicationID rappresenta l'applicazione globale ed è la stessa per le istanze dell'applicazione, tra tenant. ObjectID è un valore univoco per un oggetto applicazione. Come per utenti, gruppi e altre risorse, ObjectID consente di identificare un'istanza dell'applicazione in Microsoft Entra ID.

Per altre informazioni, vedere Relazione tra applicazioni e entità servizio in Microsoft Entra ID

Creare un'applicazione e il relativo oggetto entità servizio

È possibile creare un'applicazione e il relativo oggetto entità servizio (ObjectID) in un tenant usando:

  • Azure PowerShell
  • PowerShell di Microsoft Graph
  • Interfaccia della riga di comando di Azure (interfaccia della riga di comando di Azure)
  • API di Microsoft Graph
  • Il portale di Azure
  • Altri strumenti

Screenshot of Application or Client ID and Object ID on the New App page.

Autenticazione dell'entità servizio

Esistono due meccanismi per l'autenticazione, quando si usano entità servizio, ovvero certificati client e segreti client.

Screenshot of Certificates and Client secrets under New App, Certificates and secrets.

Poiché i certificati sono più sicuri, è consigliabile usarli, quando possibile. A differenza dei segreti client, i certificati client non possono essere incorporati nel codice, accidentalmente. Quando possibile, usare Azure Key Vault per la gestione di certificati e segreti per crittografare gli asset con chiavi protette dai moduli di sicurezza hardware:

  • Chiavi di autenticazione
  • Chiavi dell'account di archiviazione
  • Chiavi di crittografia dei dati
  • File con estensione pfx
  • Password

Per altre informazioni su Azure Key Vault e su come usarlo per la gestione dei certificati e dei segreti, vedere:

Sfide e mitigazioni

Quando si usano le entità servizio, usare la tabella seguente per soddisfare le problematiche e le mitigazioni.

Proposta Mitigazione
Verifiche di accesso per le entità servizio assegnate ai ruoli con privilegi Questa funzionalità è disponibile in anteprima
Verifiche di accesso dell'entità servizio Controllo manuale dell'elenco di controllo di accesso alle risorse tramite il portale di Azure
Entità servizio con autorizzazioni eccessivo Quando si creano account del servizio di automazione o entità servizio, concedere le autorizzazioni per l'attività. Valutare le entità servizio per ridurre i privilegi.
Identificare le modifiche apportate alle credenziali dell'entità servizio o ai metodi di autenticazione - Vedere la cartella di lavoro
del report sulle operazioni sensibili - Vedere il post di blog della Community tecnica, cartella di lavoro di Microsoft Entra per aiutare a valutare il rischio Solorigate

Trovare gli account usando le entità servizio

Per trovare gli account, eseguire i comandi seguenti usando le entità servizio con l'interfaccia della riga di comando di Azure o PowerShell.

  • Interfaccia della riga di comando di Azure: az ad sp list
  • Powershell- Get-MgServicePrincipal -All:$true

Per altre informazioni, vedere Get-MgServicePrincipal

Valutare la sicurezza dell'entità servizio

Per valutare la sicurezza, valutare i privilegi e l'archiviazione delle credenziali. Usare la tabella seguente per attenuare le sfide:

Proposta Mitigazione
Rilevare l'utente che ha acconsentito a un'app multi-tenant e rilevare le concessioni di consenso illecito a un'app multi-tenant - Eseguire il comando PowerShell seguente per trovare le app multi-tenant
Get-MgServicePrincipal -All:$true | ? {$_.Tags -eq "WindowsAzureActiveDirectoryIntegratedApp"}
- Disabilitare il consenso
utente - Consenti il consenso utente da autori verificati, per le autorizzazioni selezionate (scelta consigliata)
- Configurarle nel contesto
utente - Usare i token per attivare l'entità servizio
Uso di un segreto condiviso hardcoded in uno script usando un'entità servizio Usare un certificato
Rilevamento degli utenti che usano il certificato o il segreto Monitorare gli accessi dell'entità servizio usando i log di accesso di Microsoft Entra
Non è possibile gestire l'accesso dell'entità servizio con l'accesso condizionale Monitorare gli accessi usando i log di accesso di Microsoft Entra
Collaboratore è il ruolo predefinito controllo degli accessi in base al ruolo di Azure Valutare le esigenze e applicare le autorizzazioni minime possibili

Altre informazioni: Che cos'è l'accesso condizionale?

Passare da un account utente a un'entità servizio

Se si usa un account utente di Azure come entità servizio, valutare se è possibile passare a un'identità gestita o a un'entità servizio. Se non è possibile usare un'identità gestita, concedere a un'entità servizio autorizzazioni e ambito sufficienti per eseguire le attività necessarie. È possibile creare un'entità servizio registrando un'applicazione o con PowerShell.

Quando si usa Microsoft Graph, vedere la documentazione dell'API. Verificare che il tipo di autorizzazione per l'applicazione sia supportato.
Vedere Creare servicePrincipal

Altre informazioni:

Passaggi successivi

Altre informazioni sulle entità servizio:

Proteggere gli account del servizio:

Accesso condizionale:

Usare l'accesso condizionale per bloccare le entità servizio da posizioni non attendibili.

Vedere Creare un criterio di accesso condizionale basato sulla posizione