Nell'articolo dedicato a Managed identities per Microsoft Azure, che troviamo qua http://www.windowsazureitalia.com/articoli/microsoft-azure/credenziali-sicure-managed-identities-azure.aspx, abbiamo visto come sfruttare le identità delle Web App, Function o VM per poter accedere alle risorse Azure tramite token e senza dare una visibilità diretta di chiavi, secret o certificati.
Per custodire e centralizzare queste informazioni, Azure KeyVault è il posto più sicuro, ma purtroppo richiedere un intervento sul nostro codice e questo non è sempre possibile. Per minimizzare il più possibile l'impatto e agevolare l'utilizzo di MSI, di recente è stata aggiunta la possibilità di collegare un App Settings di una Web App o di una Function direttamente al KeyVault, senza intervenire nel nostro codice.
Ponendo di avere creato il KeyVault, creata l'identità della Web App e dato i permessi di lettura alle chiavi, è sufficiente aprire il secret al quale vogliamo avere accesso e copiare l'intero indirizzo, come mostrato nella figura.
Fatto questo apriamo gli App Settings del nostro applicativo e individuaiamo l'impostazione di nostro interesse. Invece di inserire direttamente il valore, digitiamo l'espressione @Microsoft.KeyVault(SecretUri=indirizzo), dove l'indirizzo è l'identificativo copiato in precedenza.
Salvate le impostazioni, il nostro applicativo disporrà del valore di MyKey come App Settings se ci troviamo in un applicativo .NET, oppure come variabile d'ambiente omonima se ci troviamo in una delle piattaforme alternative, il tutto senza dover intervenire sul nostro codice.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Specificare il versioning nel path degli URL in ASP.NET Web API
Paginare i risultati con QuickGrid in Blazor
Copiare automaticamente le secret tra più repository di GitHub
Gestire domini wildcard in Azure Container Apps
Eseguire le GitHub Actions offline
Gestire i null nelle reactive form tipizzate di Angular
Usare il versioning con i controller di ASP.NET Core Web API
Determinare lo stato di un pod in Kubernetes
Eseguire operazioni sui blob con Azure Storage Actions
Utilizzare Model as a Service su Microsoft Azure
What's new in Azure Functions and Extensions
Evitare il flickering dei componenti nel prerender di Blazor 8