Creare e configurare identità gestite

Completato

Una sfida comune quando si crea una soluzione cloud è la gestione di segreti, credenziali, certificati e chiavi. Questi elementi sicuri vengono usati per proteggere la comunicazione tra i servizi. Grazie alle identità gestite, gli sviluppatori non devono più gestire queste credenziali.

Anche se gli sviluppatori possono archiviare in modo sicuro i segreti in Azure Key Vault, i servizi necessitano di un modo per accedere ad Azure Key Vault. Le identità gestite forniscono un'identità gestita automaticamente in Microsoft Entra ID che potrà essere usata dalle applicazioni per la connessione alle risorse. L'identità gestita supporta l'autenticazione tramite Microsoft Entra ID. Le applicazioni possono usare le identità gestite per ottenere i token di Microsoft Entra senza dover gestire le credenziali.

Vantaggi dell'uso delle identità gestite

  • Non è necessario gestire le credenziali. Le credenziali non sono neanche accessibili.
  • È possibile usare le identità gestite per eseguire l'autenticazione per qualsiasi risorsa che supporti l'autenticazione di Microsoft Entra, incluse le proprie applicazioni. L'uso delle identità gestite non prevede costi aggiuntivi.

Tipi di identità gestite

Tipo di identità Descrizione e utilizzo
Assegnata dal sistema Alcuni servizi di Azure consentono di abilitare un'identità gestita direttamente in un'istanza del servizio. Quando si abilita un'identità gestita assegnata dal sistema, viene creata un'identità in Microsoft Entra ID. L'identità viene associata al ciclo di vita di quell'istanza del servizio. Quando la risorsa viene eliminata, Azure elimina automaticamente anche l'identità. Per impostazione predefinita, solo questa specifica risorsa di Azure può usare questa identità per richiedere token ad Microsoft Entra ID.
Assegnata dall'utente Puoi anche creare un'identità gestita come risorsa di Azure autonoma. È possibile creare un'identità gestita assegnata dall'utente e assegnarla a una o più istanze di un servizio di Azure. Le identità gestite assegnate dall'utente vengono gestite separatamente rispetto alle risorse che le usano.

Ricordarsi sempre che le identità gestite vengono assegnate a un'applicazione. È quindi necessario configurare e gestire l'identità all'interno dei servizi usati. Se si dispone di un'applicazione in esecuzione in una macchina virtuale (Linux o Windows), aggiungere e configurare l'identità qui. Se si usa un'identità gestita con un'app, una funzione o un servizio app sul cloud, occorre configurarla e gestirla in tale posizione. Vediamo la procedura per aggiungere un'identità gestita a un'app cloud creata con Servizio app.

Identità gestita nel portale di Azure per un servizio app

Screenshot of the Azure portal in the App Services screen. Add a user-assigned identity is highlighted.

La procedura di base per creare e aggiungere un'identità all'app è la seguente:

  1. Compilare l'app.
  2. Aprire l'app nel portale di Azure.
  3. Selezionare Identità nel menu e quindi selezionare Assegnata dal sistema o Assegnata dall'utente.
  4. Selezionare + Aggiungi e completare la procedura guidata.

È possibile eseguire un'azione simile usando lo script all'interno dell'interfaccia della riga di comando, in PowerShell o con un modello. L'esempio potrebbe essere simile al seguente:

Uso dell'interfaccia della riga di comando

az webapp identity assign --resource-group <group-name> --name <app-name> --identities <identity-name>


In alternativa, usare PowerShell con il modulo AZ.ManagedServiceIdentity installato

Update-AzFunctionApp -Name <app-name> -ResourceGroupName <group-name> -IdentityType UserAssigned -IdentityId $userAssignedIdentity.Id


Oppure all'interno di un modello

"identity": {
    "type": "UserAssigned",
    "userAssignedIdentities": {
        "<RESOURCEID>": {}
    }
}


Valore dell'identità gestita

Come indicato all'inizio di questa pagina, quando si compila un'app è necessario un metodo per concedere l'accesso alle risorse all'app. Per sfruttare i concetti dell'approccio Zero Trust, è possibile usare le identità gestite. Si assegnano solo i privilegi minimi necessari all'identità gestita. Quindi si assegna solo l'accesso alle risorse minime necessarie. I privilegi minimi manterranno protetti le applicazioni e i dati.