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 de 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 contra o serviço de armazenamento emulado, especifique o nome do anfitrião do emulador e a porta de Armazenamento de Blobs como 127.0.0.1:10000
, seguido do nome da conta de armazenamento emulada:
URI do pedido de 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 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 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 seguinte tabela:
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 Autenticação para os 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 efetuar 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, consulte ExpiryOption. |
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-option com . Para obter mais informações, consulte 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 cabeçalho x-ms-expiry-option
. 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 relativamente à 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 modificou o diretório ou as respetivas propriedades atualiza a hora da última modificação. As operações em ficheiros não afetam a última hora modificada 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.
Importante
A Microsoft recomenda a utilização de Microsoft Entra ID com identidades geridas para autorizar pedidos para o Armazenamento do Azure. Microsoft Entra ID fornece segurança e facilidade de utilização superiores em comparação com a autorização de Chave Partilhada.
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 Microsoft Entra, grupo, identidade gerida ou principal de serviço chame a Set Blob Expiry
operação e a função RBAC do Azure com menos privilégios que inclua esta ação:
- Ação RBAC do Azure:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write
- Função incorporada com menos privilégios:Contribuidor de Dados do Blob de Armazenamento
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 umexpiryTime
no passado não é permitido. -
ExpiryTime
não pode ser especificado com umexpiryOption
valor deNever
.
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 blocos 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 Preços do Armazenamento de Blobs do Azure.