Você pode habilitar o controle de versão de armazenamento de Blob para manter automaticamente as versões anteriores de um blob quando ele for modificado ou excluído. Quando o controle de versão de blob está habilitado, você pode restaurar uma versão anterior de um blob para recuperar seus dados se ele for modificado ou excluído erroneamente.
Este artigo mostra como habilitar ou desabilitar o controle de versão de blob para a conta de armazenamento usando o portal do Azure ou um modelo do Azure Resource Manager. Para saber mais sobre o versionamento de blobs, consulte Versionamento de Blobs.
Ativar a criação de versões de blobs
Você pode ativar a versão de blob através do portal do Azure, PowerShell, Azure CLI ou um modelo do Azure Resource Manager.
Para ativar o versionamento de blobs para uma conta de armazenamento no portal Azure:
Navegue até sua conta de armazenamento no portal.
Em Gerenciamento de dados, escolha Proteção de dados.
Na seção Rastreamento, selecione Habilitar controle de versão para blobs e escolha se deseja manter todas as versões ou excluí-las após um período de tempo.
Importante
Se você definir a opção Excluir versões após , uma regra será adicionada automaticamente à política de gerenciamento do ciclo de vida da conta de armazenamento. Depois que essa regra for adicionada, a opção Excluir versões após não aparecerá mais na página Configuração de proteção de dados.
Você pode fazer com que essa opção reapareça na página Proteção de dados removendo a regra. Se sua política de gerenciamento de ciclo de vida contiver outras regras que excluem versões, você terá que remover essas regras também antes que a opção Excluir versões depois possa reaparecer.
Para habilitar o controle de versão de blob para uma conta de armazenamento com o PowerShell, primeiro instale o módulo Az.Storage versão 2.3.0 ou posterior. Em seguida, chame o comando Update-AzStorageBlobServiceProperty para habilitar o controle de versão, conforme mostrado no exemplo a seguir. Lembre-se de substituir os valores entre colchetes angulares pelos seus próprios valores:
# Set resource group and account variables.
$rgName = "<resource-group>"
$accountName = "<storage-account>"
# Enable versioning.
Update-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-IsVersioningEnabled $true
Para ativar o controlo de versão de blob para uma conta de armazenamento utilizando a CLI do Azure, instale primeiro a versão 2.2.0 ou posterior da CLI do Azure. Em seguida, chame o comando az storage account blob-service-properties update para ativar o controlo de versão, conforme mostrado no exemplo a seguir. Lembre-se de substituir os valores entre colchetes angulares pelos seus próprios valores:
az storage account blob-service-properties update \
--resource-group <resource_group> \
--account-name <storage-account> \
--enable-versioning true
Para habilitar o controlo de versão de blob com um modelo, crie um modelo com a propriedade IsVersioningEnabled definida para true. As etapas a seguir descrevem como criar um modelo no portal do Azure.
No portal do Azure, escolha Criar um recurso.
Em Pesquisar no Marketplace, escreva implementação de modelo e prima ENTER.
Escolha Implantação de modelo, escolha Criar e, em seguida, escolha Criar seu próprio modelo no editor.
No editor de modelos, cole o seguinte JSON. Substitua <accountName> pelo nome da sua conta de armazenamento.
Guarde o modelo.
Especifique o grupo de recursos da conta e, em seguida, escolha o botão Comprar para implantar o modelo e ativar a versão do blob.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts/blobServices",
"apiVersion": "2019-06-01",
"name": "<accountName>/default",
"properties": {
"IsVersioningEnabled": true
}
}
]
}
Para obter mais informações sobre como implantar recursos com modelos no portal do Azure, consulte Implantar recursos com o portal do Azure.
Listar versões de blob
Para exibir as versões de um blob, use o portal do Azure, o PowerShell ou a CLI do Azure. Você também pode listar as versões de um blob usando um dos SDKs de armazenamento de Blob.
Para listar as versões de um blob no portal do Azure:
Navegue até sua conta de armazenamento no portal e, em seguida, navegue até o contêiner que contém seu blob.
Selecione o blob para o qual você deseja listar versões.
Selecione a guia Versões para exibir as versões do blob.
Alterne o botão Mostrar versões eliminadas para exibir versões eliminadas suavemente. Se a exclusão suave de blob estiver habilitada para a conta de armazenamento, todas as versões excluídas por software que ainda estiverem dentro do intervalo de retenção de exclusão suave aparecerão na lista.
Para listar as versões de um blob com o PowerShell, chame o comando Get-AzStorageBlob com o -IncludeVersion parâmetro:
$account = Get-AzStorageAccount -ResourceGroupName <resource-group> -Name <storage-account>
$ctx = $account.Context
$container = "<container-name>"
$blobs = Get-AzStorageBlob -Container $container -Prefix "ab" -IncludeVersion -Context $ctx
foreach($blob in $blobs)
{
Write-Host $blob.Name
Write-Host $blob.VersionId
Write-Host $blob.IsLatestVersion
}
Para listar as versões de um blob com a CLI do Azure, chame o comando az storage blob list com o --include v parâmetro:
storageAccount="<storage-account>"
containerName="<container-name>"
az storage blob list \
--container-name $containerName \
--prefix "ab" \
--query "[[].name, [].versionId]" \
--account-name $storageAccount \
--include v \
--auth-mode login \
--output tsv
Próximos passos