Definir Expiração do Blob

A Set Blob Expiry operação define uma data de expiração num blob existente. Esta operação só é permitida em contas com espaço de nomes hierárquico ativado. Aplica-se à versão de serviço 2020-02-10 e posterior.

Pedir

O Set Blob Expiry pedido pode ser construído da seguinte forma. Recomendamos que utilize HTTPS. Substitua myaccount pelo nome da sua conta de armazenamento:

URI do pedido do método PUT Versão HTTP
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=expiry HTTP/1.1

URI do Serviço de Armazenamento Emulado

Quando estiver a fazer um pedido relativamente ao serviço de armazenamento emulado, especifique o nome do anfitrião do emulador e a porta do Armazenamento de Blobs como 127.0.0.1:10000, seguido do nome da conta de armazenamento emulada:

URI do pedido do método PUT Versão HTTP
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=expiry HTTP/1.1

Para obter mais informações, veja Utilizar o emulador do Azurite para o desenvolvimento local do Armazenamento do Azure.

Parâmetros do URI

Pode especificar os seguintes parâmetros adicionais no URI do pedido:

Parâmetro Description
timeout Opcional. O timeout parâmetro é expresso em segundos. Para obter mais informações, veja Set time-outs for Blob Storage operations (Definir tempos limite para operações de Armazenamento de Blobs).

Cabeçalhos do pedido

Os cabeçalhos de pedido obrigatórios e opcionais estão descritos na tabela seguinte:

Cabeçalho do pedido Description
Authorization Obrigatório. Especifica o esquema de autenticação, o nome da conta e a assinatura. Veja Autenticação dos serviços de Armazenamento do Azure para obter mais informações.
Date ou x-ms-date Obrigatório. Especifica a Hora Universal Coordenada (UTC) do pedido. Para obter mais informações, veja Authentication for the Azure Storage services (Autenticação dos serviços de Armazenamento do Azure).
x-ms-version Necessário para todos os pedidos autenticados. Especifica a versão da operação a utilizar para este pedido. Para obter mais informações, veja Controlo de versões dos serviços de Armazenamento do Azure.
x-ms-lease-id:<ID> Necessário se o blob tiver uma concessão ativa. Para executar esta operação num blob com uma concessão ativa, especifique o ID de concessão válido para este cabeçalho.
x-ms-expiry-option Obrigatório. Para especificar a opção de data de expiração do pedido, veja ExpirayOption.
x-ms-expiry-time Opcional. A hora em que o ficheiro está definido para expirar. O formato da data de expiração varia de acordo x-ms-expiry-optioncom . Para obter mais informações, veja ExpiryOption.
x-ms-client-request-id Opcional. Fornece um valor opaco gerado pelo cliente com um limite de carateres de 1 kibibyte (KiB) que é registado nos registos quando o registo é configurado. Recomendamos vivamente que utilize este cabeçalho para correlacionar as atividades do lado do cliente com os pedidos que o servidor recebe. Para obter mais informações, veja Monitorizar Armazenamento de Blobs do Azure.

ExpiryOption

Pode enviar os seguintes valores como um x-ms-expiry-option cabeçalho. Este cabeçalho não é sensível a maiúsculas e minúsculas.

Opção de expiração Description
RelativeToCreation Define a data de expiração relativamente à hora de criação do ficheiro. x-ms-expiry-time tem de ser especificado como o número de milissegundos a decorrer desde o momento da criação.
RelativeToNow Define a data de expiração relativa à hora atual. x-ms-expiry-time tem de ser especificado como o número de milissegundos a decorrer a partir do momento atual.
Absolute x-ms-expiry-time tem de ser especificado como uma hora absoluta, no formato RFC 1123.
NeverExpire Define o ficheiro para nunca expirar ou remove a data de expiração atual. x-ms-expiry-time não pode ser especificado.

Corpo do pedido

O corpo do pedido para este pedido está vazio.

Pedido de exemplo

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=expiry HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-02-10  
x-ms-date: Sun, 25 Sep 2020 14:37:35 GMT
x-ms-expiry-option: RelativeTonow
x-ms-expiry-time: 30000  
Authorization: SharedKey myaccount:J4ma1VuFnlJ7yfk/Gu1GxzbfdJloYmBPWlfhZ/xn7GI=    

Resposta

A resposta inclui um código de estado HTTP e um conjunto de cabeçalhos de resposta.

Código de estado

Uma operação bem-sucedida devolve o código de estado 200 (OK).

Para obter mais informações sobre códigos de estado, veja Códigos de estado e de erro.

Cabeçalhos de resposta

A resposta para esta operação inclui os seguintes cabeçalhos. A resposta também pode incluir cabeçalhos HTTP padrão adicionais. Todos os cabeçalhos padrão estão em conformidade com a especificação do protocolo HTTP/1.1.

Cabeçalho de resposta Descrição
ETag Contém um valor que representa a versão do ficheiro. O valor está entre aspas.
Last-Modified Devolve a data e hora em que o diretório foi modificado pela última vez. O formato de data segue RFC 1123. Para obter mais informações, veja Representar valores de data/hora em cabeçalhos. Qualquer operação que modifica o diretório ou as respetivas propriedades atualiza a hora da última modificação. As operações nos ficheiros não afetam a hora da última modificação do diretório.
x-ms-request-id Identifica exclusivamente o pedido que foi feito e pode ser utilizado para resolver o pedido. Para obter mais informações, veja Resolver problemas de operações da API.
x-ms-version Indica a versão do Armazenamento de Blobs que foi utilizada para executar o pedido.
Date Um valor de data/hora UTC gerado pelo serviço, que indica a hora em que a resposta foi iniciada.

Resposta de amostra

Response Status:  
HTTP/1.1 200 OK  
  
Response Headers:  
Date: Sun, 25 Sep 2011 23:47:09 GMT  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  

Autorização

A autorização é necessária ao chamar qualquer operação de acesso a dados no Armazenamento do Azure. Pode autorizar a Set Blob Expiry operação conforme descrito abaixo.

O Armazenamento do Azure suporta a utilização de Microsoft Entra ID para autorizar pedidos a dados de blobs. Com Microsoft Entra ID, pode utilizar o controlo de acesso baseado em funções do Azure (RBAC do Azure) para conceder permissões a um principal de segurança. O principal de segurança pode ser um utilizador, grupo, principal de serviço de aplicação ou identidade gerida do Azure. O principal de segurança é autenticado por Microsoft Entra ID para devolver um token OAuth 2.0. Em seguida, o token pode ser utilizado para autorizar um pedido contra o serviço Blob.

Para saber mais sobre a autorização através de Microsoft Entra ID, veja Autorizar o acesso a blobs com Microsoft Entra ID.

Permissões

Abaixo estão listadas as ações RBAC necessárias para que um utilizador, grupo ou principal de serviço Microsoft Entra chame a Set Blob Expiry operação e a função RBAC do Azure com menos privilégios que inclua esta ação:

Para saber mais sobre como atribuir funções com o RBAC do Azure, veja Atribuir uma função do Azure para acesso a dados de blobs.

Observações

A semântica para definir uma data de expiração num blob é a seguinte:

  • Set Expiry só pode ser definido num ficheiro e não num diretório.
  • Set Expiry com um expiryTime no passado não é permitido.
  • ExpiryTime não pode ser especificado com um expiryOption valor de Never.

Nota

Não é possível restaurar um ficheiro expirado com a funcionalidade de eliminação recuperável de blobs. Mesmo que tenha ativado a eliminação recuperável para a conta, um ficheiro expirado não se torna um blob eliminado de forma recuperável quando expira. Apenas os ficheiros eliminados podem tornar-se ficheiros eliminados de forma recuperável.

Faturação

Os pedidos de preços podem ter origem em clientes que utilizam APIs de Armazenamento de Blobs, diretamente através da API REST do Armazenamento de Blobs ou a partir de uma biblioteca de cliente do Armazenamento do Azure. Estes pedidos acumulam custos por transação. O tipo de transação afeta a forma como a conta é cobrada. Por exemplo, as transações de leitura acumulam-se numa categoria de faturação diferente das transações de escrita. A tabela seguinte mostra a categoria de faturação dos Set Blob Expiry pedidos com base no tipo de conta de armazenamento:

Operação Tipo de conta de armazenamento Categoria de faturação
Definir Expiração do Blob Blob de bloco premium
Standard para fins gerais v2
Outras operações
Definir Expiração do Blob Standard para fins gerais v1 Operações de escrita

Para saber mais sobre os preços da categoria de faturação especificada, veja Armazenamento de Blobs do Azure Preços.

Ver também