Gestione delle identità e degli accessi per le app Python in Azure

In Azure, la gestione delle identità e degli accessi (IAM) per le applicazioni Python prevede due concetti chiave:

  • Autenticazione: verifica dell'identità di un utente, di un gruppo, di un servizio o di un'applicazione
  • Autorizzazione: determinazione delle azioni che l'identità può eseguire sulle risorse di Azure

Azure offre più opzioni IAM per soddisfare i requisiti di sicurezza dell'applicazione. Questo articolo include collegamenti a risorse essenziali per iniziare.

Per altre informazioni, vedere Raccomandazioni per la gestione delle identità e degli accessi.

Connessioni senza password

Quando possibile, usare le identità gestite per semplificare la gestione delle identità e migliorare la sicurezza. Le identità gestite supportano l'autenticazione senza password, pertanto non è necessario incorporare credenziali sensibili, ad esempio password o segreti client, in variabili di codice o di ambiente. Azure servizi come servizio app, Funzioni di Azure e App contenitore di Azure supportano le identità gestite. Usando le identità gestite, le applicazioni possono eseguire l'autenticazione per Azure servizi senza gestire le credenziali.

Le risorse seguenti illustrano come usare il Azure SDK per Python con l'autenticazione senza password tramite DefaultAzureCredential. DefaultAzureCredential è ideale per la maggior parte delle applicazioni in esecuzione in Azure, perché supporta perfettamente sia gli ambienti di sviluppo locale che di produzione concatenando più tipi di credenziali in un ordine sicuro e intelligente.

Connettore di servizi

Molte risorse di Azure comunemente usate nelle applicazioni Python supportano Service Connector. Service Connector semplifica il processo di configurazione delle connessioni sicure tra i servizi di Azure. Automatizza la configurazione dell'autenticazione, dell'accesso alla rete e delle stringhe di connessione tra i servizi di calcolo (ad esempio il servizio app o le app contenitore) e i servizi dipendenti (ad esempio Archiviazione di Azure, Azure SQL o Cosmos DB). Questa automazione riduce i passaggi manuali, consente di applicare le procedure consigliate, ad esempio l'uso di identità gestite e endpoint privati, e migliora la coerenza e la sicurezza della distribuzione.

Key Vault (archivio di chiavi)

L'uso di una soluzione di gestione delle chiavi, ad esempio Azure Key Vault, offre un maggiore controllo sui segreti e sulle credenziali, anche se aggiunge complessità di gestione.

Autenticazione e identità per l'accesso degli utenti nelle app

È possibile sviluppare applicazioni Python che consentono agli utenti di accedere con identità Microsoft, ad esempio account Microsoft Entra ID o account di social networking esterni, ad esempio Google o Facebook. Dopo l'autenticazione, l'app può autorizzare gli utenti ad accedere alle proprie API o API Microsoft, ad esempio Microsoft Graph, per interagire con risorse come profili utente, calendari e messaggi di posta elettronica.