Versões anteriores do Armazenamento do Azure

O Armazenamento do Azure suporta várias versões. Para fazer um pedido contra o Armazenamento, tem de especificar a versão que pretende utilizar para essa operação, a menos que o pedido seja anónimo.

Versões disponíveis

A versão atual do Armazenamento do Azure é 2023-11-03 e a utilização dessa versão é recomendada sempre que possível. Para obter informações sobre a versão mais recente, veja Controlo de versões do Armazenamento do Azure.

As versões suportadas adicionais incluem:

Pedidos autorizados através de assinatura de acesso partilhado

Um pedido feito através de uma assinatura de acesso partilhado é processado de acordo com a versão que utiliza para gerar a SAS. As versões 2013-08-15 e 2012-02-12 incluem um parâmetro de controlo de versões (SignedVersionou sv), que especifica a versão a utilizar para autorizar e executar o pedido SAS.

Versão 2012-02-12 e posterior

Os pedidos com assinaturas de acesso partilhado gerados através da versão 2012-02-12 ou posterior requerem o SignedVersion (sv) parâmetro. SignedVersion indica a versão do serviço utilizada para autorização e para chamar a operação de API. Se o x-ms-version cabeçalho for transmitido no pedido, este será ignorado. Apenas o SignedVersion (sv) parâmetro determina a versão do serviço a utilizar para processar o pedido feito através da assinatura de acesso partilhado.

Nota

Para a versão 2013-08-15 e anterior, certifique-se de que os serviços que preparam e distribuem URLs de assinatura de acesso partilhado (ou seja, fornecedores ou geradores de assinaturas de acesso partilhado) especificam as versões do serviço de Armazenamento do Azure que são compreendidas pelo software de cliente (ou seja, consumidores de assinaturas de acesso partilhado).

A tabela seguinte indica que serviços são suportados para que versão, para um pedido feito através de uma assinatura de acesso partilhado:

Valor do SignedVersion (sv) parâmetro Serviços suportados
2015-12-11 Tudo (Armazenamento de Blobs do Azure, Armazenamento de Filas do Azure, Armazenamento de Tabelas do Azure e Ficheiros do Azure)
2015-04-05 Todos (Armazenamento de Blobs, Armazenamento de Filas, Armazenamento de Tabelas e Ficheiros do Azure)
2015-02-21 Todos (Armazenamento de Blobs, Armazenamento de Filas, Armazenamento de Tabelas e Ficheiros do Azure)
2014-02-14 Armazenamento de Blobs, Armazenamento de Filas e Armazenamento de Tabelas
2013-08-15 Armazenamento de Blobs, Armazenamento de Filas e Armazenamento de Tabelas
2012-02-12 Armazenamento de Blobs, Armazenamento de Filas e Armazenamento de Tabelas

O exemplo seguinte mostra uma assinatura de acesso partilhado que chama Blobs de Lista com sv=2013-08-15.

https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list&sv=2013-08-15&si=readpolicy&sig=a39 %2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d

Neste exemplo, o serviço autoriza e executa o pedido com a versão 2013-08-15. A resposta não incluirá o Url elemento no Blob elemento, porque foi removido na versão 2013-08-15.

Se uma aplicação cliente utilizar uma versão da biblioteca de cliente de Armazenamento com base na versão 2012-02-12 e fizer um pedido que utilize esta assinatura de acesso partilhado, o cliente espera o Uri elemento. Por conseguinte, o pedido falha com um NullReferenceException.

Versões anteriores a 2012-02-12 (apenas Armazenamento de Blobs)

O Armazenamento de Blobs introduziu assinaturas de acesso partilhado na versão 2009-07-17. O Armazenamento de Tabelas e o Armazenamento de Filas introduziram assinaturas de acesso partilhado na versão 2012-02-12, pelo que o comportamento da assinatura de acesso partilhado antes da versão 2012-02-12 aplica-se apenas ao Armazenamento de Blobs.

A versão 2012-02-12 também introduziu o SignedVersion (sv) parâmetro, que permite ao gerador de assinaturas de acesso partilhado especificar a versão a utilizar para processar o pedido. Uma assinatura de acesso partilhado gerada com uma versão anterior a 2012-02-12 não pode especificar a versão a utilizar para processar o pedido, pelo que depende das seguintes regras para autorização e execução de API:

  1. Se o pedido tiver um cabeçalho válido x-ms-version , a versão válida mais antiga (2009-07-17) é utilizada para interpretar os parâmetros de assinatura de acesso partilhado. A versão especificada por x-ms-version é utilizada para executar a operação de Armazenamento de Blobs.

  2. Se o pedido não tiver um x-ms-version cabeçalho e o proprietário tiver definido a versão predefinida utilizando Definir Propriedades de Armazenamento de Blobs, a versão 2009-07-17 é utilizada para interpretar os parâmetros. A versão predefinida especificada pelo proprietário é utilizada para executar a operação de Armazenamento de Blobs.

  3. Se o pedido não tiver um x-ms-version cabeçalho e o proprietário não tiver definido uma versão predefinida, o Armazenamento de Blobs utiliza a versão válida mais antiga (2009-07-17) para interpretar os parâmetros. Se o contentor for público e as restrições de acesso foram definidas com uma operação Set Container ACL que utilizou a versão 2009-09-19 ou posterior, a versão 2009-09-19 é utilizada para executar a operação de Armazenamento de Blobs.

  4. Se o pedido não tiver um x-ms-version cabeçalho e o proprietário não tiver definido uma versão predefinida, o Armazenamento de Blobs utiliza a versão válida mais antiga (2009-07-17) para interpretar os parâmetros. Se as restrições de acesso ao contentor não foram definidas com uma operação Set Container ACL que utilizou a versão 2009-09-19 ou posterior, a operação de Armazenamento de Blobs é executada com a versão mais antiga do serviço.

A tabela seguinte aplica estas regras a vários cenários e pressupõe que o SignedVersion parâmetro não está incluído.

Valor do cabeçalho x-ms-version Versão utilizada para interpretar parâmetros de autorização e autorização para o Armazenamento de Blobs Versão utilizada para executar a operação de Armazenamento de Blobs
Nenhuma Versão de assinatura de acesso partilhado mais antiga e válida (2009-07-17) 2009-09-19 é utilizado se o contentor tiver sido definido como público pela Set Container ACL através da versão 2009-09-19 ou posterior. Caso contrário, é utilizada a versão mais antiga do Armazenamento de Blobs.
2011-08-18 Versão de assinatura de acesso partilhado mais antiga e válida (2009-07-17) 2011-08-18.
Qualquer versão XXXX-XX-XX Versão de assinatura de acesso partilhado mais antiga e válida (2009-07-17) Versão XXXX-XX-XX

Nota

A Microsoft recomenda a utilização da versão 2011-08-18 ou posterior para cenários que exijam valores citados ETag ou cabeçalhos de resposta válidos Accept-Ranges . Os browsers e outros clientes de transmissão em fluxo necessitam destes cabeçalhos para transferências e repetições eficientes.

Ver também

Controlo de versões do Armazenamento do Azure