Definir Etiquetas de Blobs

A Set Blob Tags operação define etiquetas definidas pelo utilizador para o blob especificado como um ou mais pares chave-valor.

Pedir

O Set Blob Tags 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=tags

https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=tags&versionid=<DateTime>
HTTP/1.1

Parâmetros do URI

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

Parâmetro Description
versionid Opcional para a versão 2019-12-12 e posterior. O versionid parâmetro é um valor opaco DateTime que, quando presente, especifica a versão do blob a obter.
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 autorização, o nome da conta e a assinatura. Para obter mais informações, veja Autorizar pedidos para o Armazenamento do Azure.
Date ou x-ms-date Obrigatório. Especifica a Hora Universal Coordenada (UTC) do pedido. Para obter mais informações, veja Autorizar pedidos para o Armazenamento do Azure.
x-ms-version Necessário para todos os pedidos autorizados. 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.
Content-Length Obrigatório. A duração do conteúdo do pedido em bytes. Este cabeçalho refere-se ao comprimento do conteúdo do documento de etiquetas e não ao próprio blob.
Content-Type Obrigatório. O valor deste cabeçalho deve ser application/xml; charset=UTF-8.
Content-MD5 Opcional. Um hash MD5 do conteúdo do pedido. Este hash é utilizado para verificar a integridade do conteúdo do pedido durante o transporte. Se os dois hashes não corresponderem, a operação falha com o código de erro 400 (Pedido Incorreto).

Este cabeçalho está associado ao conteúdo do pedido e não ao conteúdo do próprio blob.
x-ms-content-crc64 Opcional. Um Hash CRC64 do conteúdo do pedido. Este hash é utilizado para verificar a integridade do conteúdo do pedido durante o transporte. Se os dois hashes não corresponderem, a operação falha com o código de erro 400 (Pedido Incorreto).

Este cabeçalho está associado ao conteúdo do pedido e não ao conteúdo do próprio blob.

Se os cabeçalhos Content-MD5 e x-ms-content-crc64 estiverem presentes, o pedido falha com o código de erro 400 (Pedido Incorreto).
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. Se não for especificado um ID de concessão válido no pedido, a operação falhará com o código de estado 403 (Proibido).
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.

Esta operação suporta o x-ms-if-tags cabeçalho condicional para definir etiquetas de blobs apenas se for cumprida uma condição especificada. Para obter mais informações, veja Especificar cabeçalhos condicionais para operações de Armazenamento de Blobs.

Corpo do pedido

O formato do corpo do pedido é o seguinte:

<?xml version="1.0" encoding="utf-8"?>  
<Tags>  
    <TagSet>  
        <Tag>  
            <Key>tag-name-1</Key>  
            <Value>tag-value-1</Value>  
        </Tag>  
        <Tag>  
            <Key>tag-name-2</Key>  
            <Value>tag-value-2</Value>  
        </Tag>  
    </TagSet>  
</Tags>  

O corpo do pedido tem de ser um documento XML UTF-8 bem formado e conter um conjunto de etiquetas que represente as etiquetas do blob.

O conjunto de etiquetas não pode conter mais de 10 etiquetas. As chaves de etiqueta e os valores são sensíveis às maiúsculas e minúsculas. As teclas de etiqueta têm de ter entre 1 e 128 carateres e os valores das etiquetas têm de ser de 0 a 256 carateres. Os carateres de chave e valor de etiqueta válidos incluem:

  • Letras minúsculas e maiúsculas (a-z, A-Z)
  • Dígitos (0-9)
  • Um espaço ( )
  • Sinal de adição (+), subtração (-), ponto (.), barra (/), dois pontos (:), igual a (=) e caráter de sublinhado (_)

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 204 (Sem Conteúdo).

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
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 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.
x-ms-client-request-id Pode ser utilizado para resolver problemas de pedidos e respostas correspondentes. O valor deste cabeçalho é igual ao valor do x-ms-client-request-id cabeçalho se estiver presente no pedido e o valor não contiver mais de 1024 carateres ASCII visíveis. Se o x-ms-client-request-id cabeçalho não estiver presente no pedido, não estará presente na resposta.

Corpo da resposta

Nenhum.

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 Tags 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 encontra-se a ação RBAC necessária para um utilizador, grupo ou principal de serviço Microsoft Entra chamar a Set Blob Tags operação e a função RBAC do Azure com menos privilégios que inclui 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 Set Blob Tags operação é suportada na versão da API REST 2019-12-12 e posterior.

Para contas com o espaço de nomes hierárquico ativado, a Set Blob Tags operação não é suportada, uma vez que as etiquetas de blobs não são suportadas para contas de espaço de nomes hierárquicos.

A Set Blob Tags operação substitui todas as etiquetas existentes no blob. Para remover todas as etiquetas de um blob, envie um Set Blob Tags pedido com um vazio <TagSet>.

Esta operação não atualiza a ETag nem a hora da última modificação do blob. É possível definir etiquetas num blob arquivado.

O serviço de armazenamento mantém uma consistência forte entre um blob e as respetivas etiquetas. As alterações às etiquetas de blob são imediatamente visíveis para as operações subsequentes Get Blob Tags no blob. No entanto, o índice secundário é eventualmente consistente. As alterações às etiquetas de um blob podem não ser imediatamente visíveis para as Find Blobs by Tags operações.

Se um pedido fornecer etiquetas inválidas, o Armazenamento de Blobs devolve o código de estado 400 (Pedido Incorreto).

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 Tags pedidos com base no tipo de conta de armazenamento:

Operação Tipo de conta de armazenamento Categoria de faturação
Definir Etiquetas de Blobs Blob de blocos Premium
Standard para fins gerais v2
Outras operações
Definir Etiquetas de Blobs 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.

Ver também

Gerir e localizar dados do Armazenamento de Blobs com etiquetas de índice de blobs
Autorizar pedidos para o Armazenamento do Azure
Códigos de estado e de erro
Códigos de erro do Armazenamento de Blobs