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
Autenticazione dell'entità servizio
Esistono due meccanismi per l'autenticazione, quando si usano entità servizio, ovvero certificati client e segreti client.
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:
- Come usare le identità gestite nel servizio app e in Funzioni di Azure
- Creare un'applicazione Microsoft Entra e un'entità servizio in grado di accedere alle risorse
- Usare Azure PowerShell per creare un'entità servizio con un certificato
Passaggi successivi
Altre informazioni sulle entità servizio:
- Creare un'applicazione Microsoft Entra e un'entità servizio in grado di accedere alle risorse
- Log di accesso in Microsoft Entra ID
Proteggere gli account del servizio:
- Protezione degli account del servizio basati sul cloud
- Protezione delle identità gestite in Microsoft Entra ID
- Governance degli account del servizio Microsoft Entra
- Protezione degli account del servizio locale
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