Set Blob Properties

A operação Set Blob Properties define as propriedades do sistema no blob.

Solicitação

A solicitação Set Blob Properties pode ser criada da seguinte maneira. HTTPS é recomendado. Substitua myaccount pelo nome da sua conta de armazenamento:

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

URI de serviço de armazenamento emulado

Ao fazer uma solicitação no serviço de armazenamento emulado, especifique o nome de host do emulador e a porta do serviço Blob como 127.0.0.1:10000, seguido pelo nome da conta de armazenamento emulado:

URI de solicitação do método PUT Versão de HTTP
http://127.0.0.1:10000/ devstoreaccount1/mycontainer/myblob?comp=properties HTTP/1.1

Para obter mais informações, consulte Como usar o Armazenamento Emulator do Azure para desenvolvimento e teste.

Parâmetros de URI

Os seguintes parâmetros adicionais podem ser especificados no URI de solicitação.

Parâmetro Descrição
timeout Opcional. O parâmetro timeout é expresso em segundos. Para obter mais informações, consulte Configurando tempos limite para operações de serviço de blob.

Cabeçalhos de solicitação (todos os tipos de blob)

A tabela a seguir descreve cabeçalhos de solicitação obrigatórios e opcionais para todos os tipos de blob.

Cabeçalho da solicitação Descrição
Authorization Obrigatórios. Especifica o esquema de autorização, o nome da conta e a assinatura. Para obter mais informações, consulte Autorizar solicitações para o Azure Armazenamento.
Date ou x-ms-date Obrigatórios. Especifica o UTC (Tempo Universal Coordenado) para a solicitação. Para obter mais informações, consulte Autorizar solicitações para o Azure Armazenamento.
x-ms-version Necessário para todas as solicitações autorizadas. Especifica a versão da operação a ser usada para esta solicitação. Para obter mais informações, consulte Controle de versão para os Serviços de Armazenamento do Azure.
x-ms-blob-cache-control Opcional. Modifica a cadeia de caracteres de controle de cache para o blob.

Se essa propriedade não for especificada na solicitação, a propriedade será limpa para o blob. As chamadas subsequentes para Obter Propriedades de Blob não retornarão essa propriedade, a menos que ela seja definida explicitamente no blob novamente.
x-ms-blob-content-type Opcional. Define o tipo de conteúdo do blob.

Se essa propriedade não for especificada na solicitação, a propriedade será limpa para o blob. As chamadas subsequentes para Obter Propriedades de Blob não retornarão essa propriedade, a menos que ela seja definida explicitamente no blob novamente.
x-ms-blob-content-md5 Opcional. Define o hash MD5 do blob.

Se essa propriedade não for especificada na solicitação, a propriedade será limpa para o blob. As chamadas subsequentes para Obter Propriedades de Blob não retornarão essa propriedade, a menos que ela seja definida explicitamente no blob novamente.
x-ms-blob-content-encoding Opcional. Define a codificação do conteúdo do blob.

Se essa propriedade não for especificada na solicitação, a propriedade será limpa para o blob. As chamadas subsequentes para Obter Propriedades de Blob não retornarão essa propriedade, a menos que ela seja definida explicitamente no blob novamente.
x-ms-blob-content-language Opcional. Define o idioma do conteúdo do blob.

Se essa propriedade não for especificada na solicitação, a propriedade será limpa para o blob. As chamadas subsequentes para Obter Propriedades de Blob não retornarão essa propriedade, a menos que ela seja definida explicitamente no blob novamente.
x-ms-lease-id:<ID> Obrigatório se o blob tiver uma concessão ativa. Para executar essa operação em um blob com uma concessão ativa, especifique a ID de concessão válida para esse cabeçalho.
x-ms-client-request-id Opcional. Fornece um valor opaco gerado pelo cliente com um limite de caracteres de 1 KiB que é registrado nos logs de análise quando o log de análise de armazenamento está habilitado. O uso desse cabeçalho é altamente recomendável para correlacionar as atividades do lado do cliente com as solicitações recebidas pelo servidor. Para obter mais informações, consulte Sobre Análise de Armazenamento registro em log e registro em log do Azure: usando logs para rastrear solicitações de Armazenamento.
x-ms-blob-content-disposition Opcional. Define o cabeçalho Content-Disposition do blob. Disponível para versões 2013-08-15 e posteriores.

O campo do cabeçalho de resposta Content-Disposition transmite informações adicionais sobre como processar a carga de resposta, e também pode ser usado para anexar metadados adicionais. Por exemplo, se for definido como attachment, ele indicará que o usuário agente não deve exibir a resposta, mas em vez disso, mostra uma caixa de diálogo Salvar como com um nome de arquivo diferente do nome de blob especificado.

A resposta das operações Obter Propriedades de Blob e Obter Blob inclui o content-disposition cabeçalho.
Origin Opcional. Especifica a origem da qual a solicitação será emitida. A presença desse cabeçalho resulta em recursos de origens cruzadas compartilhando cabeçalhos na resposta. Consulte o suporte do CORS para os Serviços de Armazenamento para obter detalhes.

Essa operação também dará suporte ao uso de cabeçalhos condicionais para definir as propriedades do blob somente se uma determinada condição for atendida. Para obter mais informações, confira Como especificar cabeçalhos condicionais para operações de serviço Blob.

Cabeçalhos de solicitação (somente blobs de página)

A tabela a seguir descreve os cabeçalhos de solicitação aplicáveis apenas para operações em blobs de página.

Cabeçalho da solicitação Descrição
x-ms-blob-content-length: byte value Opcional. Redimensiona um blob da página ao tamanho especificado. Se o valor especificado for menor do que o tamanho atual do blob, todas as páginas acima do valor especificado serão limpas.

Essa propriedade não pode ser usada para alterar o tamanho de um blob de blocos ou um blob de acréscimo. Definir essa propriedade para um blob de blocos ou um blob de acréscimo retorna o código de status 400 (Solicitação Incorreta).
x-ms-sequence-number-action: {max, update, increment} Opcional, mas necessário se o cabeçalho x-ms-blob-sequence-number for definido para a solicitação. Essa propriedade só se aplica a blobs de páginas.

Essa propriedade indica como o serviço deve modificar o número de sequência do blob. Especifique uma das seguintes opções dessa propriedade:

- max: define o número de sequência como o maior do valor incluído com a solicitação e o valor armazenado atualmente para o blob.
- update: define o número da sequência como o valor incluído com a solicitação.
- increment: incrementa o valor do número da sequência em 1. Se especificar essa opção, não inclua x-ms-blob-sequence-number header; isso retornará o código de status 400 (Solicitação Incorreta).
x-ms-blob-sequence-number: <num> Opcional, mas obrigatório se a propriedade x-ms-sequence-number-action for definida como max ou update. Essa propriedade só se aplica a blobs de páginas.

Essa propriedade define o número de sequência do blob. O número de sequência é uma propriedade controlada pelo usuário que você pode usar para monitorar solicitações e gerenciar problemas de simultaneidade. Para obter mais informações, consulte a operação Colocar Página .

Use essa propriedade juntamente com x-ms-sequence-number-action para atualizar o número de sequência do blob, o valor especificado ou o valor mais alto especificado na solicitação ou armazenado atualmente com o blob. Esse cabeçalho não deverá ser especificado se x-ms-sequence-number-action for definido como increment; nesse caso, o serviço incrementa automaticamente o número de sequência por um.

Para definir o número de sequência como um valor da sua escolha, essa propriedade deve ser especificada na solicitação juntamente com x-ms-sequence-number-action.

Cabeçalhos de solicitação (chaves de criptografia fornecidas pelo cliente)

A partir da versão 2019-02-02, os cabeçalhos a seguir podem ser especificados na solicitação para criptografar um blob com uma chave fornecida pelo cliente. A criptografia com uma chave fornecida pelo cliente (e o conjunto correspondente de cabeçalhos) é opcional. Se um blob tiver sido criptografado anteriormente com uma chave fornecida pelo cliente, esses cabeçalhos deverão ser incluídos na solicitação para concluir a operação de gravação com êxito.

Cabeçalho da solicitação Descrição
x-ms-encryption-key Obrigatórios. A chave de criptografia AES-256 codificada em Base64.
x-ms-encryption-key-sha256 Obrigatórios. O hash SHA256 codificado em Base64 da chave de criptografia.
x-ms-encryption-algorithm: AES256 Obrigatórios. Especifica o algoritmo a ser usado para criptografia. O valor deste cabeçalho deve ser AES256.

Corpo da solicitação

Nenhum.

Resposta

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

Código de status

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

Para obter informações sobre códigos de status, consulte Status e Códigos de Erro.

Cabeçalhos de resposta

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

Sintaxe Descrição
ETag A ETag contém um valor que você pode usar para executar operações de forma condicional. Consulte Especificando cabeçalhos condicionais para operações de serviço blob para obter mais informações. Se a versão da solicitação for a 2011-08-18 ou mais recente, o valor de ETag será exibido entre aspas.
Last-Modified A data e a hora da última modificação feita no blob. O formato da data segue RFC 1123. Para obter mais informações, consulte Representação de valores de Date-Time em cabeçalhos.

Qualquer operação de gravação no blob (incluindo atualizações nos metadados ou nas propriedades do blob), altera a hora da última modificação do blob.
x-ms-blob-sequence-number Se o blob for de páginas, o seu número de sequência atual será retornado com esse cabeçalho.
x-ms-request-id Esse cabeçalho identifica a solicitação que foi feita de forma exclusiva e pode ser usado para solucionar problemas na solicitação. Para obter mais informações, consulte Solução de problemas de operações de API.
x-ms-version Indica a versão do serviço Blob usado para executar a solicitação. Esse cabeçalho é retornado para solicitações feitas na versão 2009-09-19 e mais recente.
Date Um valor de data/hora UTC gerado pelo serviço que indica a hora em que a resposta foi iniciada.
Access-Control-Allow-Origin Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra de correspondência. Este cabeçalho retorna o valor do cabeçalho de solicitação de origem no caso de uma correspondência.
Access-Control-Expose-Headers Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra de correspondência. Retorna a lista de cabeçalhos de resposta que devem ser expostos ao cliente ou ao emissor da solicitação.
Access-Control-Allow-Credentials Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra de correspondência. que não permite todas as origens. Esse cabeçalho será definido como verdadeiro.
x-ms-client-request-id Esse cabeçalho pode ser usado para solucionar problemas de solicitações e respostas correspondentes. O valor desse cabeçalho será igual ao valor do x-ms-client-request-id cabeçalho se ele estiver presente na solicitação e o valor estiver no máximo 1024 caracteres ASCII visíveis. Se o x-ms-client-request-id cabeçalho não estiver presente na solicitação, esse cabeçalho não estará presente na resposta.

Corpo da resposta

Nenhum.

Autorização

Essa operação só poderá ser chamada pelo proprietário da conta e por qualquer pessoa com uma assinatura de acesso compartilhado que tenha permissão para gravar nesse blob ou em seu contêiner.

Comentários

A semântica para atualizar as propriedades de um blob é a seguinte:

  • O número de sequência de um blob de páginas será atualizado somente se a solicitação estiver de acordo com uma das seguintes condições:

    • A solicitação define x-ms-sequence-number-action como max ou update e também especifica um valor para o cabeçalho x-ms-blob-sequence-number.

    • A solicitação define x-ms-sequence-number-action como increment, indicando que o serviço deve aumentar o número de sequência por um.

  • O tamanho de um blob de páginas será modificado apenas se a solicitação especificar um valor para o cabeçalho x-ms-content-length.

  • Para alterar o tamanho de um blob de página em uma conta de armazenamento premium, o novo tamanho não deve exceder o comprimento de conteúdo permitido pela camada existente. Chame Definir Camada de Blob antes de redimensionar o blob. Para obter uma lista de camadas e comprimento de conteúdo permitido, consulte Armazenamento Premium de alto desempenho e discos gerenciados para VMs.

  • Se uma solicitação definir apenas x-ms-blob-sequence-number e/ou x-ms-content-length e nenhuma outra propriedade, nenhuma das outras propriedades do blob será modificada.

  • Se qualquer uma ou mais das seguintes propriedades for definida na solicitação, todas essas propriedades serão definidas em conjunto. Se um valor não for fornecido para uma determinada propriedade quando, pelo menos, uma das propriedades listadas abaixo estiver definida, essa propriedade será limpa para o blob.

    • x-ms-blob-cache-control

    • x-ms-blob-content-type

    • x-ms-blob-content-md5

    • x-ms-blob-content-encoding

    • x-ms-blob-content-language

    • x-ms-blob-content-disposition

Observação

Observe que para uma assinatura de acesso compartilhado, você pode substituir determinadas propriedades armazenadas para o blob especificando parâmetros de consulta como parte da assinatura de acesso compartilhado. Essas propriedades incluem as propriedades cache-control, content-type, content-encoding, content-language e content-disposition. Para obter mais informações, consulte Criar uma SAS de serviço.

Consulte Também

Autorizar solicitações para o Azure Armazenamento
Códigos de status e de erro