Condividi tramite


Criterio WORM a livello di versione per i dati BLOB non modificabili

Un criterio WORM a livello di versione è un tipo di criterio di immutabilità che può essere impostato a livello di account, contenitore o versione. Per ulteriori informazioni sull'archiviazione immutabile per Azure Blob Storage, vedere Archiviare dati BLOB critici per l'azienda con archiviazione immutabile in stato WORM (Write Once, Read Many).

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 v2 che per gli account BLOB in blocchi Premium. Questa caratteristica non è supportata su account con namespace gerarchico.

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 a fini giudiziari 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 definire una politica a livello di contenitore, è prima necessario abilitare WORM a livello di versione, sia sull'account CHE sul 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 abilitato 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 per il livello di BLOB; deve essere ereditato.

Diagramma dell'impostazione di una policy per l'archiviazione immutabile a livello di versione e 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 potrebbe 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. La quantità di tempo impiegato per la migrazione dipende principalmente dalla quantità di BLOB nel contenitore. La migrazione dei contenitori con un numero elevato di BLOB richiederà molto più tempo. 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 una politica sulla 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 della politica sulla 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 della politica sull'account o sul 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 una policy predefinita di sblocco. Il BLOB viene caricato con criteri sbloccati personalizzati Il Blob viene caricato senza politica
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 politica
Nessun criterio predefinito per account o contenitore Non disponibile Il BLOB viene caricato con criteri sbloccati personalizzati Il Blob viene caricato senza politica

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 il criterio 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.

È possibile eliminare un contenitore abilitato per un criterio non modificabile solo usando le operazioni del piano di controllo. Tutte queste richieste vengono inviate all'URL di Azure Resource Manager. Ad esempio, il comando di PowerShell Remove-AzRmStorageContainer usa un'operazione del piano di controllo per eliminare un contenitore. Al contrario, il comando Remove-AzStorageContainer tenta di usare un'operazione del piano dati, che non avrà esito positivo. Analogamente, il comando CLI di Azure az storage container-rm delete utilizza un'operazione di controllo, mentre az storage container delete si basa su un'operazione del piano dati. È anche possibile eliminare un contenitore tramite il portale di Azure, perché esegue l'attività usando un'operazione del piano di controllo.

Scenari

Sceneggiatura Operazioni non consentite Protezione BLOB Protezione dei contenitori Protezione dell'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. L'eliminazione dell'account di archiviazione non riesce se è presente almeno un contenitore con archiviazione immutabile abilitata a livello di versione oppure se è abilitata per l'intero 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 inserire pagina 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.
L'eliminazione dell'account di archiviazione ha esito negativo se è presente almeno un contenitore che contiene una versione di blob con criteri di conservazione bloccati basati sul tempo.
I criteri sbloccati non forniscono la protezione dall'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