ASP.NET Core Data Protection è un sistema per la protezione dei dati sensibili come token antifalsificazione, cookie di autenticazione e altri dati temporanei. In ambienti cloud-native come Azure Container Apps, dove le applicazioni scalano su più repliche, è fondamentale condividere le chiavi di protezione tra istanze per evitare errori di validazione o accessi negati.
Azure Container Apps è una piattaforma serverless che consente di eseguire container senza preoccuparsi dell'infrastruttura. Offre vantaggi come scalabilità automatica, ingressi HTTP, identità gestite e sicurezza integrata. Tuttavia, un'app ASP.NET Core che utilizza Data Protection deve essere configurata in modo esplicito per funzionare correttamente in questo ambiente.
Per configurare correttamente questa funzionalità, accediamo alla sezione Development stack sotto il gruppo di impostazioni Settings all'interno del portale Azure, nella risorsa dell'app container. Qui possiamo selezionare ".NET" come stack di sviluppo e attivare la casella "ASP.NET Core Data Protection".

Attivando questa opzione, Azure abilita automaticamente un meccanismo per condividere le chiavi di protezione tra le repliche, essenziale per il corretto funzionamento di funzionalità come SignalR, Blazor Server e autenticazione. Questa scelta imposta l'ambiente con la variabile autoConfigureDataProtection=true, evitando la necessità di configurazioni manuali.
Questa configurazione garantisce che tutte le istanze dell'app condividano la stessa chiave, indipendentemente dalla replica a cui è indirizzato l'utente.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Esporre un server MCP esistente con Azure API Management
Azure SQL Database per dev: tutte le novità da non perdere
Utilizzare le librerie native di .NET per comprimere uno o più file in formato ZIP
Utilizzare il top layer in HTML
Importare repository da Bitbucket a GitHub Enterprise Cloud
Interazione con ReconnectModal in Blazor
Cambiamenti in OpenAPI per la documentazione di ASP.NET
DevSecOps per .NET: dalla teoria alla pratica
Impostare automaticamente l'altezza del font tramite CSS
Creare un extension method per applicare condizionalmente una Where in una query LINQ per Entity Framework
Creare una file based app con C#
Usare la parola chiave field per semplificare la scrittura di proprietà in C#


