Configurar políticas de imutabilidade para versões de blob

O armazenamento imutável do Armazenamento de Blobs do Azure permite aos utilizadores armazenar dados críticos para a empresa num estado WORM (Write Once, Read Many). Enquanto estiver em um estado WORM, os dados não podem ser modificados ou excluídos para um intervalo especificado pelo usuário. Ao configurar políticas de imutabilidade para dados de blob, você pode proteger seus dados contra substituições e exclusões. As políticas de imutabilidade incluem políticas de retenção baseadas no tempo e retenções legais. Para obter mais informações sobre políticas de imutabilidade para armazenamento de Blob, consulte Armazenar dados de blob críticos para os negócios com armazenamento imutável.

Uma política de imutabilidade pode ter como escopo uma versão de blob individual ou um contêiner. Este artigo descreve como configurar uma política de imutabilidade no nível da versão. Para saber como configurar políticas de imutabilidade no nível do contêiner, consulte Configurar políticas de imutabilidade para contêineres.

Nota

Não há suporte para políticas de imutabilidade em contas que tenham o protocolo NFS (Network File System) 3.0 ou o protocolo SFTP (SSH File Transfer Protocol) habilitado.

Configurar uma política de imutabilidade no nível da versão é um processo de duas etapas:

  1. Primeiro, habilite o suporte para imutabilidade no nível da versão em uma nova conta de armazenamento ou em um contêiner novo ou existente. Consulte Ativar suporte para imutabilidade no nível da versão para obter detalhes.
  2. Em seguida, configure uma política de retenção baseada no tempo ou retenção legal que se aplique a uma ou mais versões de blob nesse contêiner.

Pré-requisitos

Para configurar políticas de retenção baseadas em tempo no nível de versão, o controle de versão de blob deve ser habilitado para a conta de armazenamento. Lembre-se de que habilitar o controle de versão de blob pode ter um impacto no faturamento. Para saber como habilitar o controle de versão de blob, consulte Habilitar e gerenciar o controle de versão de blob.

Para obter informações sobre as configurações de conta de armazenamento suportadas para políticas de imutabilidade no nível da versão, consulte Políticas WORM no nível da versão para dados de blob imutáveis.

Habilite o suporte para imutabilidade no nível da versão

Antes de aplicar uma política de retenção baseada em tempo a uma versão de blob, você deve habilitar o suporte para imutabilidade no nível da versão. Você pode habilitar o suporte para imutabilidade no nível da versão em uma nova conta de armazenamento ou em um contêiner novo ou existente.

Habilite o suporte à imutabilidade no nível da versão em uma conta de armazenamento

Você pode habilitar o suporte para imutabilidade no nível da versão somente quando criar uma nova conta de armazenamento.

Para habilitar o suporte para imutabilidade no nível de versão ao criar uma conta de armazenamento no portal do Azure, siga estas etapas:

  1. Navegue até a página Contas de armazenamento no portal do Azure.

  2. Selecione o botão Criar para criar uma nova conta.

  3. Preencha a guia Noções básicas .

  4. Na guia Proteção de dados, em Controle de acesso, selecione Habilitar suporte à imutabilidade no nível da versão. Quando você marca essa caixa, a caixa Habilitar controle de versão para blobs também é marcada automaticamente.

  5. Selecione Rever + Criar para validar os parâmetros da sua conta e criar a conta de armazenamento.

    Captura de ecrã a mostrar como criar uma conta de armazenamento com suporte de imutabilidade ao nível da versão

Depois que a conta de armazenamento for criada, você poderá configurar uma política de nível de versão padrão para a conta. Para obter mais informações, consulte Configurar uma política de retenção baseada em tempo padrão.

Se o suporte à imutabilidade no nível da versão estiver habilitado para a conta de armazenamento e a conta contiver um ou mais contêineres, você deverá excluir todos os contêineres antes de excluir a conta de armazenamento, mesmo que não haja políticas de imutabilidade em vigor para a conta ou contêineres.

Nota

A imutabilidade no nível da versão não pode ser desativada depois de habilitada na conta de armazenamento, embora as políticas bloqueadas possam ser excluídas.

Habilitar o suporte à imutabilidade no nível da versão em um contêiner

Os contêineres novos e existentes podem ser configurados para oferecer suporte à imutabilidade no nível da versão. No entanto, um contêiner existente deve passar por um processo de migração para habilitar o suporte.

Lembre-se de que habilitar o suporte à imutabilidade no nível da versão para um contêiner não torna os dados nesse contêiner imutáveis. Você também deve configurar uma política de imutabilidade padrão para o contêiner ou uma política de imutabilidade em uma versão de blob específica. Se você habilitou a imutabilidade em nível de versão para a conta de armazenamento quando ela foi criada, também poderá configurar uma política de imutabilidade padrão para a conta.

Habilitar a imutabilidade em nível de versão para um novo contêiner

Para usar uma política de imutabilidade no nível da versão, você deve primeiro habilitar explicitamente o suporte para WORM no nível da versão no contêiner. Você pode habilitar o suporte para WORM no nível da versão ao criar o contêiner ou ao adicionar uma política de imutabilidade no nível da versão a um contêiner existente.

Para criar um contêiner que ofereça suporte à imutabilidade no nível da versão no portal do Azure, siga estas etapas:

  1. Navegue até a página Contêineres da sua conta de armazenamento no portal do Azure e selecione Adicionar.

  2. Na caixa de diálogo Novo contêiner, forneça um nome para o contêiner e expanda a seção Avançado.

  3. Selecione Ativar suporte de imutabilidade no nível da versão para habilitar a imutabilidade no nível da versão para o contêiner.

    Captura de tela mostrando como criar um contêiner com a imutabilidade no nível da versão habilitada

Se o suporte à imutabilidade no nível de versão estiver habilitado para um contêiner e o contêiner contiver um ou mais blobs, você deverá excluir todos os blobs no contêiner antes de poder excluí-lo, mesmo que não haja políticas de imutabilidade em vigor para o contêiner ou seus blobs.

Migrar um contêiner existente para oferecer suporte à imutabilidade no nível da versão

Para configurar políticas de imutabilidade no nível da versão para um contêiner existente, você deve migrar o contêiner para oferecer suporte ao armazenamento imutável no nível da versão. A migração de contêineres pode levar algum tempo e não pode ser revertida. Você pode migrar 10 contêineres de cada vez por conta de armazenamento.

Para migrar um contêiner existente para dar suporte a políticas de imutabilidade no nível da versão, o contêiner deve ter uma política de retenção baseada no tempo no nível do contêiner configurada. A migração falha, a menos que o contêiner tenha uma política existente. O intervalo de retenção para a política de nível de contêiner é mantido como o intervalo de retenção para a política de nível de versão padrão no contêiner.

Se o contêiner tiver uma retenção legal existente no nível do contêiner, ela não poderá ser migrada até que a retenção legal seja removida.

Para migrar um contêiner para dar suporte a políticas de imutabilidade no nível de versão no portal do Azure, siga estas etapas:

  1. Navegue até o contêiner desejado.

  2. No menu de contexto do contêiner e, em seguida, selecione Política de acesso.

  3. Em Armazenamento de blob imutável, selecione Adicionar política.

  4. Para o campo Tipo de política , escolha Retenção baseada em tempo e especifique o intervalo de retenção.

  5. Selecione Ativar imutabilidade no nível da versão.

  6. Selecione OK para criar uma política no nível do contêiner com o intervalo de retenção especificado e inicie a migração para o suporte à imutabilidade no nível da versão.

    Captura de tela mostrando como migrar um contêiner existente para oferecer suporte à imutabilidade no nível da versão

Enquanto a operação de migração está em andamento, o escopo da política no contêiner é exibido como Contêiner. Quaisquer operações relacionadas ao gerenciamento de políticas de imutabilidade no nível da versão não são permitidas enquanto a migração do contêiner estiver em andamento. Outras operações em dados de blob prosseguirão normalmente durante a migração.

Captura de tela mostrando a migração de contêiner em processo

Após a conclusão da migração, o escopo da política no contêiner é exibido como Versão. A política mostrada é uma política padrão no contêiner que se aplica automaticamente a todas as versões de blob criadas posteriormente no contêiner. A política padrão pode ser substituída em qualquer versão, especificando uma política personalizada para essa versão.

Captura de tela mostrando a migração de contêiner concluída

Configurar uma política de retenção baseada no tempo padrão

Depois de habilitar o suporte à imutabilidade no nível da versão para uma conta de armazenamento ou para um contêiner individual, você pode especificar uma política de retenção baseada no tempo no nível da versão padrão para a conta ou contêiner. Quando você especifica uma política padrão para uma conta ou contêiner, essa política se aplica por padrão a todas as novas versões de blob criadas na conta ou contêiner. Você pode substituir a política padrão para qualquer versão de blob individual na conta ou contêiner.

A política padrão não é aplicada automaticamente às versões de blob que existiam antes da configuração da política padrão.

Se você migrou um contêiner existente para oferecer suporte à imutabilidade no nível da versão, a política no nível do contêiner que estava em vigor antes da migração será migrada para uma política de nível de versão padrão para o contêiner.

Para configurar uma política de imutabilidade em nível de versão padrão para uma conta de armazenamento ou contêiner, use o portal do Azure, PowerShell, CLI do Azure ou um dos SDKs de Armazenamento do Azure. Certifique-se de ter ativado o suporte para imutabilidade no nível da versão para a conta de armazenamento ou contêiner, conforme descrito em Habilitar suporte para imutabilidade no nível da versão.

Para configurar uma política de imutabilidade em nível de versão padrão para uma conta de armazenamento no portal do Azure, siga estas etapas:

  1. No portal do Azure, navegue para a sua conta de armazenamento.

  2. Em Gerenciamento de dados, selecione Proteção de dados.

  3. Na página Proteção de dados , localize a seção Controle de acesso . Se a conta de armazenamento tiver sido criada com suporte para imutabilidade no nível da versão, o botão Gerenciar política será exibido na seção Controle de acesso .

    Captura de tela mostrando como gerenciar a política de imutabilidade em nível de versão padrão para uma conta de armazenamento

  4. Selecione o botão Gerenciar política para exibir a caixa de diálogo Gerenciar política de imutabilidade no nível da versão.

  5. Adicione uma política de retenção baseada no tempo padrão para a conta de armazenamento.

    Captura de tela mostrando como configurar uma política de retenção no nível de versão padrão para uma conta de armazenamento

Para configurar uma política de imutabilidade em nível de versão padrão para um contêiner no portal do Azure, siga estas etapas:

  1. No portal do Azure, navegue até a página Contêineres e localize o contêiner ao qual você deseja aplicar a política.

  2. No menu de contexto do contêiner e escolha Política de acesso.

  3. Na caixa de diálogo Política de acesso, na seção Armazenamento de blob imutável, escolha Adicionar política.

  4. Selecione Política de retenção baseada no tempo e especifique o intervalo de retenção.

  5. Escolha se deseja permitir gravações de acréscimo protegidas.

    A opção Acrescentar blobs permite que suas cargas de trabalho adicionem novos blocos de dados ao final de um blob de acréscimo usando a operação Acrescentar bloco .

    A opção Bloquear e acrescentar blobs estende esse suporte adicionando a capacidade de escrever novos blocos em um blob de bloco. A API de Armazenamento de Blob não fornece uma maneira para os aplicativos fazerem isso diretamente. No entanto, os aplicativos podem fazer isso usando os métodos append e flush disponíveis na API do Data Lake Storage Gen2. Além disso, essa propriedade permite que aplicativos da Microsoft, como o Azure Data Factory, acrescentem blocos de dados usando APIs internas. Se suas cargas de trabalho dependem de qualquer uma dessas ferramentas, você pode usar essa propriedade para evitar erros que podem aparecer quando essas ferramentas tentam acrescentar dados a blobs.

    Para saber mais sobre essas opções, consulte Permitir gravações de blobs de acréscimo protegidos.

    Captura de tela mostrando como configurar a política de imutabilidade com escopo para contêiner.

Determinar o escopo de uma política de retenção em um contêiner

Para determinar o escopo de uma política de retenção baseada no tempo no portal do Azure, siga estas etapas:

  1. Navegue até o contêiner desejado.

  2. No menu de contexto do contêiner e, em seguida, selecione Política de acesso.

  3. Em Armazenamento de blob imutável, localize o campo Escopo . Se o contêiner estiver configurado com uma política de retenção de nível de versão padrão, o escopo será definido como Versão, conforme mostrado na imagem a seguir:

    Captura de tela mostrando a política de retenção no nível de versão padrão configurada para contêiner

  4. Se o contêiner estiver configurado com uma política de retenção no nível do contêiner, o escopo será definido como Contêiner, conforme mostrado na imagem a seguir:

    Captura de tela mostrando a política de retenção no nível do contêiner configurada para o contêiner

Configurar uma política de retenção baseada no tempo em uma versão existente

As políticas de retenção baseadas em tempo mantêm os dados de blob em um estado WORM por um intervalo especificado. Para obter mais informações sobre políticas de retenção baseadas no tempo, consulte Políticas de retenção baseadas no tempo para dados de blob imutáveis.

Você tem três opções para configurar uma política de retenção baseada em tempo para uma versão de blob:

  • Opção 1: Você pode configurar uma política padrão na conta de armazenamento ou contêiner que se aplica a todos os objetos na conta ou contêiner. Os objetos na conta ou contêiner herdarão a política padrão, a menos que você a substitua explicitamente configurando uma política em uma versão de blob individual. Para obter mais informações, consulte Configurar uma política de retenção baseada em tempo padrão.
  • Opção 2: Você pode configurar uma política na versão atual do blob. Essa política pode substituir uma política padrão configurada na conta de armazenamento ou no contêiner, se existir uma política padrão e ela estiver desbloqueada. Por padrão, todas as versões anteriores criadas após a configuração da política herdarão a política na versão atual do blob. Para obter mais informações, consulte Configurar uma política de retenção na versão atual de um blob.
  • Opção 3: Você pode configurar uma política em uma versão anterior de um blob. Essa política pode substituir uma política padrão configurada na versão atual, se existir uma e estiver desbloqueada. Para obter mais informações, consulte Configurar uma política de retenção em uma versão anterior de um blob.

Para obter mais informações sobre controle de versão de blob, consulte Controle de versão de Blob.

O portal do Azure exibe uma lista de blobs quando você navega para um contêiner. Cada blob exibido representa a versão atual do blob. Você pode acessar uma lista de versões anteriores abrindo o menu de contexto do blob e escolhendo Exibir versões anteriores.

Configurar uma política de retenção na versão atual de um blob

Para configurar uma política de retenção baseada em tempo na versão atual de um blob, siga estas etapas:

  1. Navegue até o contêiner que contém o blob de destino.

  2. No menu de contexto do blob e escolha Política de acesso. Se uma política de retenção baseada no tempo já tiver sido configurada para a versão anterior, ela aparecerá na caixa de diálogo Política de acesso .

  3. Na caixa de diálogo Política de acesso, na seção Versões de blob imutáveis, escolha Adicionar política.

  4. Selecione Política de retenção baseada no tempo e especifique o intervalo de retenção.

  5. Selecione OK para aplicar a política à versão atual do blob.

    Captura de tela mostrando como configurar uma política de retenção para a versão atual de um blob

Você pode exibir as propriedades de um blob para ver se uma política está habilitada na versão atual. Selecione o blob e, em seguida, navegue até a guia Visão geral e localize a propriedade da política de imutabilidade no nível da versão. Se uma política estiver habilitada, a propriedade Período de retenção exibirá a data e a hora de expiração da política. Lembre-se de que uma política pode ser configurada para a versão atual ou pode ser herdada do contêiner pai do blob se uma política padrão estiver em vigor.

Captura de ecrã a mostrar propriedades de política de imutabilidade na versão de blob no portal do Azure

Configurar uma política de retenção em uma versão anterior de um blob

Você também pode configurar uma política de retenção baseada em tempo em uma versão anterior de um blob. Uma versão anterior é sempre imutável, na medida em que não pode ser modificada. No entanto, uma versão anterior pode ser excluída. Uma política de retenção baseada no tempo protege contra a exclusão enquanto estiver em vigor.

Para configurar uma política de retenção baseada em tempo em uma versão anterior de um blob, siga estas etapas:

  1. Navegue até o contêiner que contém o blob de destino.

  2. Selecione o blob e navegue até a guia Versões .

  3. Localize a versão de destino e, em seguida, no menu de contexto da versão, escolha Política de acesso. Se uma política de retenção baseada no tempo já tiver sido configurada para a versão anterior, ela aparecerá na caixa de diálogo Política de acesso .

  4. Na caixa de diálogo Política de acesso, na seção Versões de blob imutáveis, escolha Adicionar política.

  5. Selecione Política de retenção baseada no tempo e especifique o intervalo de retenção.

  6. Selecione OK para aplicar a política à versão atual do blob.

    Captura de tela mostrando como configurar a política de retenção para uma versão anterior do blob no portal do Azure

Configurar uma política de retenção baseada em tempo ao carregar um blob

Quando você usa o portal do Azure para carregar um blob em um contêiner que dá suporte à imutabilidade no nível da versão, você tem várias opções para configurar uma política de retenção baseada em tempo para o novo blob:

  • Opção 1: Se uma política de retenção padrão estiver configurada para o contêiner, você poderá carregar o blob com a política do contêiner. Essa opção é selecionada por padrão quando há uma política de retenção no contêiner.
  • Opção 2: Se uma política de retenção padrão estiver configurada para o contêiner, você poderá optar por substituir a política padrão, definindo uma política de retenção personalizada para o novo blob ou carregando o blob sem política.
  • Opção 3: Se nenhuma política padrão estiver configurada para o contêiner, você poderá carregar o blob com uma política personalizada ou sem política.

Para configurar uma política de retenção baseada no tempo quando carrega um blob, siga estes passos:

  1. Navegue até o contêiner desejado e selecione Carregar.

  2. Na caixa de diálogo Carregar blob, expanda a seção Avançado.

  3. Configure a política de retenção baseada em tempo para o novo blob no campo Política de retenção . Se houver uma política padrão configurada para o contêiner, essa política será selecionada por padrão. Você também pode especificar uma política personalizada para o blob.

    Captura de ecrã a mostrar opções para configurar a política de retenção no carregamento de blob no portal do Azure

Modificar ou excluir uma política de retenção desbloqueada

Você pode modificar uma política de retenção baseada no tempo desbloqueada para encurtar ou aumentar o intervalo de retenção. Você também pode excluir uma política desbloqueada. Editar ou excluir uma política de retenção com base no tempo desbloqueada para uma versão de blob não afeta as políticas em vigor para outras versões. Se houver uma política de retenção baseada em tempo padrão em vigor para o contêiner, a versão de blob com a política modificada ou excluída não herdará mais do contêiner.

Para modificar uma política de retenção baseada no tempo desbloqueada no portal do Azure, siga estas etapas:

  1. Localize o contêiner ou a versão de destino. No menu de contexto do contêiner ou versão, escolha Política de acesso.

  2. Localize a política de imutabilidade desbloqueada existente. No menu de contexto, selecione Editar no menu.

    Captura de ecrã a mostrar como editar uma política de retenção baseada no tempo ao nível da versão existente no portal do Azure

  3. Forneça a nova data e hora para a expiração da política.

Para excluir a política desbloqueada, selecione Excluir no menu de contexto.

Bloquear uma política de retenção baseada no tempo

Quando terminar de testar uma política de retenção baseada no tempo, você poderá bloqueá-la. Uma política bloqueada está em conformidade com a SEC 17a-4(f) e outras conformidades regulamentares. Você pode aumentar o intervalo de retenção de uma política bloqueada até cinco vezes, mas não pode encurtá-lo.

Depois que uma política é bloqueada, você não pode excluí-la. No entanto, você pode excluir o blob depois que o intervalo de retenção expirar.

Para bloquear uma política no portal do Azure, siga estas etapas:

  1. Localize o contêiner ou a versão de destino. No menu de contexto do contêiner ou versão, escolha Política de acesso.

  2. Na seção Versões de blob imutáveis, localize a política desbloqueada existente. Selecione Bloquear política no menu de contexto.

  3. Confirme que deseja bloquear a política.

    Captura de ecrã a mostrar como bloquear uma política de retenção baseada no tempo no portal do Azure

Uma retenção legal armazena dados imutáveis até que a retenção legal seja explicitamente liberada. Para saber mais sobre políticas de retenção legal, consulte Retenções legais para dados de blob imutáveis.

Para configurar uma retenção legal em uma versão de blob, você deve primeiro habilitar o suporte à imutabilidade no nível da versão na conta de armazenamento ou no contêiner. Para obter mais informações, consulte Habilitar suporte para imutabilidade no nível da versão.

Para configurar uma retenção legal em uma versão de blob com o portal do Azure, siga estas etapas:

  1. Localize a versão de destino, que pode ser a versão atual ou uma versão anterior de um blob. No menu de contexto da versão de destino, escolha Política de acesso.

  2. Na seção Versões de blob imutáveis, selecione Adicionar política.

  3. Escolha Retenção legal como o tipo de política e selecione OK para aplicá-la.

A imagem a seguir mostra uma versão atual de um blob com uma política de retenção baseada no tempo e retenção legal configurada.

Captura de tela mostrando a retenção legal configurada para a versão de blob

Para limpar uma retenção legal, navegue até a caixa de diálogo Política de acesso , no menu de contexto, escolha Excluir.

Próximos passos