Scrittura a livello di versione una sola volta, lettura di molti criteri (WORM) per i dati BLOB non modificabili

Un criterio di scrittura a livello di versione una sola volta, leggere molti criteri (WORM) è un tipo di criteri di immutabilità che possono essere impostati a livello di account, contenitore o versione. Per altre informazioni sull'archiviazione non modificabile per Archiviazione BLOB di Azure, vedere Archiviare dati BLOB critici per l'azienda con archiviazione non modificabile in una sola volta, leggere molti stati (WORM).

Disponibilità

I criteri di immutabilità a livello di versione (VLW) sono supportati a livello di account per i nuovi account e a livello di contenitore e BLOB per account/contenitori nuovi e esistenti. Questi criteri sono supportati sia per gli account BLOB in blocchi per utilizzo generico che per gli account BLOB in blocchi Premium. Questa funzionalità non è supportata per gli account dello spazio dei nomi gerarchici.

Dipendenza della versione

I criteri a livello di versione richiedono che il controllo delle versioni blob sia abilitato per l'account di archiviazione. Per informazioni su come abilitare il controllo delle versioni dei BLOB, consultare Abilitare e gestire il controllo delle versioni dei BLOB. Tenere presente che l'abilitazione del controllo delle versioni può avere un impatto sulla fatturazione. Per altre informazioni, vedere la sezione Prezzi e fatturazione per il controllo delle versioni dei BLOB.

Dopo l'abilitazione del controllo delle versioni, quando un BLOB viene caricato per la prima volta, tale versione del BLOB è la versione corrente. Ogni volta che il BLOB viene sovrascritto, viene creata una nuova versione che archivia lo stato precedente del BLOB. Quando si elimina la versione corrente di un BLOB, la versione corrente diventa una versione precedente e viene mantenuta fino a quando non viene eliminata in modo esplicito. Una versione precedente del BLOB possiede i criteri di conservazione basati sul tempo applicati quando la versione corrente è diventata una versione precedente.

Se un criterio predefinito è attivo per l'account di archiviazione o il contenitore, quando un'operazione di sovrascrittura crea una versione precedente, la nuova versione corrente eredita i criteri predefiniti per l'account o il contenitore.

Ogni versione può avere un solo criterio di conservazione basato sulla data e ora configurato. Una versione può anche avere un blocco valido configurato.

Per informazioni su come configurare i criteri di conservazione basati sul tempo a livello di versione, vedere Configurare i criteri di immutabilità per le versioni blob.

Impostazione di abilitazione e criteri

L'uso di criteri non modificabili con WORM a livello di versione è un processo in due passaggi. Abilitare prima di tutto l'immutabilità a livello di versione. È quindi possibile impostare criteri di immutabilità a livello di versione.

Per impostare un criterio a livello di account di archiviazione, è prima necessario abilitare WORM a livello di versione nell'account di archiviazione. Questa operazione può essere eseguita solo in fase di creazione dell'account. Non è possibile abilitare WORM a livello di versione per gli account preesistenti.

Diagramma dell'impostazione di un criterio per l'archiviazione non modificabile a livello di versione a livello di account.

Per impostare un criterio a livello di contenitore, è prima necessario abilitare WORM a livello di versione nell'account OPPURE nel contenitore.

Se si prevede di abilitare WORM a livello di versione in un contenitore, Microsoft consiglia di abilitarlo in fase di creazione del contenitore. Tuttavia, è possibile eseguire la migrazione di un contenitore WORM non a livello di versione in un contenitore worm abilitato a livello di versione. Se si sceglie di non eseguire la migrazione di un contenitore, è comunque possibile impostare criteri WORM a livello di contenitore in tale contenitore, ma l'opzione per impostare i criteri a livello di BLOB non sarà disponibile in tale contenitore.

Diagramma dell'impostazione di un criterio per l'archiviazione non modificabile a livello di versione a livello di contenitore.

Per impostare un criterio a livello di BLOB, è necessario abilitare WORM a livello di versione nell'account o nel contenitore. Non è possibile abilitare WORM a livello di versione a livello di BLOB; deve essere ereditato.

Diagramma dell'impostazione di un criterio per l'archiviazione non modificabile a livello di versione a livello di BLOB.

Migrazione

I contenitori esistenti possono supportare l'immutabilità a livello di versione, ma devono prima essere sottoposti a un processo di migrazione. Questo processo può richiedere del tempo. Una volta abilitato, il supporto WORM a livello di versione per tale contenitore non può essere rimosso. È possibile eseguire la migrazione di 10 contenitori alla volta per ogni account di archiviazione. Per altre informazioni sulla migrazione di un contenitore per supportare l'immutabilità a livello di versione, vedere Eseguire la migrazione di un contenitore esistente per supportare l'immutabilità a livello di versione.

Configurare un criterio nella versione corrente

Dopo aver abilitato il supporto per l'immutabilità a livello di versione per un account di archiviazione o un contenitore, è possibile configurare un criterio di conservazione predefinito basato sul tempo per l'account o il contenitore. Quando si configura un criterio di conservazione basato sul tempo predefinito per l'account o il contenitore e quindi si carica un BLOB, il BLOB eredita tale criterio predefinito. È anche possibile scegliere di eseguire l'override dei criteri predefiniti per qualsiasi BLOB durante il caricamento configurando un criterio personalizzato per tale BLOB.

Se i criteri di conservazione predefiniti basati sul tempo per l'account o il contenitore vengono sbloccati, anche la versione corrente di un BLOB che eredita i criteri predefiniti avrà un criterio sbloccato. Dopo il caricamento di un singolo BLOB, è possibile abbreviare o estendere il periodo di conservazione per i criteri nella versione corrente del BLOB o eliminare la versione corrente. È anche possibile bloccare i criteri per la versione corrente, anche se i criteri predefiniti nell'account o nel contenitore rimangono sbloccati.

Se i criteri di conservazione predefiniti basati sul tempo per l'account o il contenitore sono bloccati, anche la versione corrente di un BLOB che eredita i criteri predefiniti avrà un criterio bloccato. Tuttavia, se si esegue l'override dei criteri predefiniti quando si carica un BLOB impostando un criterio solo per tale BLOB, i criteri del BLOB rimangono sbloccati fino a quando non viene bloccato in modo esplicito. Quando il criterio nella versione corrente è bloccato, è possibile estendere l'intervallo di conservazione, ma non è possibile eliminare il criterio o abbreviare l'intervallo di conservazione.

Se non sono configurati criteri predefiniti per l'account di archiviazione o il contenitore, è possibile caricare un BLOB con criteri personalizzati o senza criteri.

Se i criteri predefiniti per un account di archiviazione o un contenitore vengono modificati, i criteri per gli oggetti all'interno di tale contenitore rimangono invariati, anche se tali criteri sono stati ereditati dai criteri predefiniti.

La tabella seguente illustra le varie opzioni disponibili per l'impostazione di criteri di conservazione basati sul tempo in un BLOB in fase di caricamento:

Stato predefinito dei criteri nell'account o nel contenitore Caricare un BLOB con i criteri predefiniti Caricare un BLOB con criteri personalizzati Caricare un BLOB senza criteri
Criteri predefiniti per l'account o il contenitore (sbloccato) Il BLOB viene caricato con criteri sbloccati predefiniti Il BLOB viene caricato con criteri sbloccati personalizzati Il BLOB viene caricato senza criteri
Criteri predefiniti per l'account o il contenitore (bloccato) Il BLOB viene caricato con criteri bloccati predefiniti Il BLOB viene caricato con criteri sbloccati personalizzati Il BLOB viene caricato senza criteri
Nessun criterio predefinito per account o contenitore N/D Il BLOB viene caricato con criteri sbloccati personalizzati Il BLOB viene caricato senza criteri

Configurare un criterio in una versione precedente

Quando il controllo delle versioni è abilitato, un'operazione di scrittura o eliminazione in un BLOB crea una nuova versione precedente del BLOB che salva lo stato del BLOB prima dell'operazione. Per impostazione predefinita, una versione precedente dispone dei criteri di conservazione basati sul tempo applicati per la versione corrente, se presente, quando la versione corrente è diventata una versione precedente. La nuova versione corrente eredita i criteri nel contenitore, se presente.

Se il criterio ereditato da una versione precedente viene sbloccato, l'intervallo di conservazione può essere abbreviato o allungato oppure il criterio può essere eliminato. I criteri di una versione precedente possono anche essere bloccati per tale versione, anche se i criteri nella versione corrente sono sbloccati.

Se il criterio ereditato da una versione precedente è bloccato, l'intervallo di conservazione può essere allungato. I criteri non possono essere eliminati, né l'intervallo di conservazione può essere abbreviato. Se nella versione corrente non sono configurati criteri, la versione precedente non eredita alcun criterio.

È possibile configurare un criterio personalizzato per la versione. Se i criteri in una versione corrente vengono modificati, i criteri delle versioni precedenti esistenti rimangono invariati, anche se i criteri sono stati ereditati da una versione corrente.

Eliminazione

Quando un account o un contenitore è abilitato per un criterio non modificabile, non può essere eliminato fino a quando non è vuoto. La cosa principale da notare è che non importa se un criterio non modificabile è stato impostato su un account WORM o un contenitore a livello di versione, è importante se è abilitato per un criterio. Una volta creato, l'account o il contenitore deve essere vuoto per essere eliminato.

Diagramma che mostra l'ordine delle operazioni nell'eliminazione di un account con criteri di immutabilità a livello di versione.

Scenari

Scenario Operazioni non consentite Protezione BLOB Protezione dei contenitori Protezione account
Una versione del BLOB è protetta da un criterio di conservazione attivo e/o un blocco valido è attivo Elimina BLOB, Imposta metadati BLOB e Put Page Non è possibile eliminare la versione del BLOB. I metadati utente non possono essere scritti.
La sovrascrittura di un BLOB con Put BLOB, Put Block List o Copy BLOB crea una nuova versione1.
L'eliminazione del contenitore ha esito negativo se nel contenitore esiste almeno un BLOB, indipendentemente dal fatto che i criteri siano bloccati o sbloccati. Archiviazione'eliminazione dell'account ha esito negativo se è presente almeno un contenitore con archiviazione non modificabile a livello di versione abilitata o se è abilitata per l'account.
Una versione del BLOB è protetta da un criterio di conservazione scaduto e non è attivo alcun blocco a fini giudiziari Impostare i metadati del BLOB e la pagina Put Una versione del BLOB è protetta da un criterio di conservazione scaduto e non è attivo alcun blocco a fini giudiziari È possibile eliminare la versione del BLOB.
La sovrascrittura di un BLOB con Put BLOB, Put Block List o Copy BLOB crea una nuova versione1.
Archiviazione'eliminazione dell'account ha esito negativo se è presente almeno un contenitore che contiene una versione blob con criteri di conservazione basati sul tempo bloccati.
I criteri sbloccati non forniscono la protezione dell'eliminazione.

1 Le versioni blob sono sempre non modificabili per il contenuto. Se il controllo delle versioni è abilitato per l'account di archiviazione, un'operazione di scrittura in un BLOB in blocchi crea una nuova versione, ad eccezione dell'operazione Put Block.

Limiti

In un account possono essere impostati solo 10.000 contenitori con criteri di conservazione univoci basati sul tempo; Tuttavia, è possibile impostare criteri a livello di account che verranno ereditati da più di 10.000 contenitori.

Passaggi successivi