Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Come configurare l'identità gestita per le funzioni di Azure


Come configurare l'identità gestita per le funzioni di Azure


La configurazione dell'identità gestita per le funzioni di Azure comporta l'utilizzo dell'identità gestita del sistema o dell'identità gestita dell'utente. Ecco come è possibile impostare entrambi i tipi:

sistema abilitante assegnato Identità gestita

1. Passa al portale di Azure: vai all'app Funzione Azure nel portale Azure.
2. Selezionare l'opzione Identity: nel menu a sinistra, selezionare Impostazioni e quindi fare clic su Identity.
3. Abilita il sistema assegnato Identità: nella scheda Assegnata del sistema, attivare lo stato su On e fare clic su Salva. Questo crea un'identità gestita con lo stesso nome dell'app di funzione.
4. Assegna autorizzazioni: vai alla risorsa (ad es. Azure Storage o Database SQL) si desidera accedere alla tua funzione. Assegna i ruoli appropriati all'identità gestita andando a Access Control (IAM), quindi assegnazioni di ruolo e aggiungendo l'identità gestita ai ruoli richiesti [1] [3] [7].

Abilitazione dell'utente assegnato Identità gestita

1. Creare un'identità assegnata dall'utente: in primo luogo, crea una risorsa di identità gestita assegnata dall'utente in Azure. Questa identità può essere utilizzata su più risorse.
2. Assegna all'app Funzione: nel portale di Azure, vai alle impostazioni di identità dell'app della funzione. Passa alla scheda Assegnata dall'utente e fai clic su Aggiungi. Cerca e seleziona l'identità assegnata dall'utente che hai creato [1] [6].
3. Configurare le impostazioni dell'app: per alcuni servizi come il Vault Key, potrebbe essere necessario impostare ulteriori proprietà (ad esempio, `` keyvaultreferenceity`) tramite chiamate API REST, poiché queste impostazioni non sono disponibili nell'interfaccia utente [1].
4. Assegnare autorizzazioni: simile alle identità assegnate al sistema, assegnare i ruoli necessari all'identità assegnata dall'utente per le risorse target [6].

utilizzando l'identità gestita nel codice

Quando si utilizzano identità gestite, le funzioni di Azure possono sfruttare librerie come `Azure.Identity` per autenticarsi con i servizi di Azure senza gestire direttamente i segreti. Ad esempio, è possibile utilizzare `DefaultAzureCredential` per connettersi a Azure Storage o SQL Database [5] [9].

Vantaggi delle identità gestite

- Sicurezza: evita la necessità di archiviare i segreti nei file di codice o di configurazione.
- Flessibilità: consente una facile gestione delle autorizzazioni di accesso tramite Azure RBAC.
-Scalabilità: supporta identità sia assegnate al sistema che assegnate agli utenti per diversi scenari [4] [6].

Citazioni:
[1] https://www.red-gate.com/simple-lalk/cloud/azure/azure-function-and-user-assiged-managed-identities/
[2] https://codebankblog.wordpress.com/2020/06/27/azure-function-with-managed-identity-and-azure-sql-db
[3] https://kumarashwinhubert.com/secure-your-azure-functions-use-managed-identity-for-azurewebjobsstorage
[4] https://docs.azure.cn/en-us/azure-functions/functions-identy-fonnection--connections-dutorial
[5] https://www.linkedin.com/pulse/how-use-Managed-Identities-app-service-Azure-Aali-Khan-
[6] https://learn.microsoft.com/en-us/azure/app-service/overview-managed-identity
[7] https://docs.azure.cn/en-us/azure-functions/functions-identity-access-azure-sql-with-managed-identy
[8] https://learn.microsoft.com/en-us/azure/azure-functions/dureble/dureble-functions-configure-managed-identy
[9] https://www.transparity.com/app-innovation/azure-functions-with-managed-identity-storage-access/