Per memorizzare file, righe o messaggi il servizio più semplice, a basso e costo e altamente scalabile è Azure Storage. Per accedervi con pieno diritto di gestione possiamo usare una chiave che, in coppia alla stringa di connessione, ci permette di raggiungere l'endpoint HTTP ed operare sulle risorse. In alternativa possiamo usare le firme (SAS) da porre sugli URI e limitare nel tempo e nei diritti le operazioni che possiamo effettuare. Anche in questo caso però serve la chiave amministrativa di firma.
E' chiaro quindi che questa chiave va custodita solo su applicativi server to server e svolge un ruolo fondamentale. Per limitare i danni di un eventuale furto è prevista la possibilità di ruotare le chiavi, in pratica di disporre sempre di una nuova chiave e di invalidare quella precedente. Questa operazione da una parte richiede di cambiare la candidata nuova chiave su tutti gli applicativi che ne fanno utilizzo ed infine invalidare quella precedente.
Poiché questa operazione non è comoda, spesso si soprassiede a questa pratica, mettendo a rischio i nostri file. Per aiutarci in questa operazione, il portale mette a disposizione un promemoria che se abilitato ci mostra dopo un certo intervallo dall'ultima rotazione, un messaggio. Per sfruttare questa possibilità è sufficiente recarsi nella sezione Access keys dello storage account.

Nella finestra ci viene semplicemente chiesto ogni quanti giorni mostrare il promemoria.

Poiché un messaggio può non essere sufficiente, possiamo sfruttare il sistema di policy di Azure che ci permette di specificare delle regole che vogliamo instaurare nella nostra sottoscrizione. Per farlo dobbiamo recarci nella sezione Policy->Assignments (cercandolo tra tutti i servizi) e procedere con una nuova assegnazione.

Tra le policy disponibili troviamo la Storage accounts keys should not be expired che se abilitata permette ad Azure di controllare la situazione di tutti gli storage e riportarla nella dashboard.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Migliorare l'organizzazione delle risorse con Azure Policy
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Recuperare App Service cancellati su Azure
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Potenziare la ricerca su Cosmos DB con Full Text Search
Collegare applicazioni server e client con .NET Aspire
Change tracking e composition in Entity Framework
Loggare le query più lente con Entity Framework
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Fornire parametri ad un Web component HTML
Supportare lo HierarchyID di Sql Server in Entity Framework 8