Compartilhar via


Versões anteriores do Armazenamento do Azure

O Armazenamento do Azure dá suporte a várias versões. Para fazer uma solicitação no Armazenamento, você deve especificar a versão que deseja usar para essa operação, a menos que a solicitação seja anônima.

Versões disponíveis

A versão atual do Armazenamento do Azure é 2024-11-04 e usar essa versão é recomendado sempre que possível. Para obter informações sobre a versão mais recente, consulte Controle de Versão para o Armazenamento do Azure.

Versões adicionais com suporte incluem:

Solicitações autorizadas por meio de assinatura de acesso compartilhado

Uma solicitação feita por meio de uma assinatura de acesso compartilhado é processada de acordo com qual versão você usa para gerar a SAS. As versões 2013-08-15 e 2012-02-12 incluem um parâmetro de controle de versão (SignedVersionou sv), que especifica qual versão usar para autorizar e executar a solicitação SAS.

Versão 2012-02-12 e posterior

Solicitações com assinaturas de acesso compartilhado geradas usando a versão 2012-02-12 ou posterior exigem o parâmetro SignedVersion (sv). SignedVersion indica a versão de serviço usada para autorização e para chamar a operação de API. Se o cabeçalho x-ms-version for passado na solicitação, ele será ignorado. Somente o parâmetro SignedVersion (sv) determina a versão do serviço a ser usada para processar a solicitação feita por meio da assinatura de acesso compartilhado.

Nota

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

A tabela a seguir indica quais serviços têm suporte para qual versão, para uma solicitação feita por meio de uma assinatura de acesso compartilhado:

Valor do parâmetro SignedVersion (sv) Serviços com suporte
2015-12-11 Tudo (Armazenamento de Blobs do Azure, Armazenamento de Filas do Azure, Armazenamento de Tabelas do Azure e Arquivos do Azure)
2015-04-05 Tudo (Armazenamento de Blobs, Armazenamento de Filas, Armazenamento de Tabelas e Arquivos do Azure)
2015-02-21 Tudo (Armazenamento de Blobs, Armazenamento de Filas, Armazenamento de Tabelas e Arquivos 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 a seguir mostra uma assinatura de acesso compartilhado que chama blobs de lista usando 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 a solicitação usando a versão 2013-08-15. A resposta não incluirá o elemento Url no elemento Blob, pois foi removido na versão 2013-08-15.

Se um aplicativo cliente usa uma versão da biblioteca de clientes de Armazenamento com base na versão 2012-02-12 e faz uma solicitação que usa essa assinatura de acesso compartilhado, o cliente espera o elemento Uri. Portanto, a solicitação falha com um NullReferenceException.

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

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

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

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

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

  3. Se a solicitação não tiver um cabeçalho x-ms-version e o proprietário não tiver definido uma versão padrão, o Armazenamento de Blobs usará a versão mais antiga válida (2009-07-17) para interpretar os parâmetros. Se o contêiner for público e suas restrições de acesso forem definidas com uma operação de ACL de conjunto de de contêiner que usou a versão 2009-09-19 ou posterior, a versão 2009-09-19 será usada para executar a operação de Armazenamento de Blobs.

  4. Se a solicitação não tiver um cabeçalho x-ms-version e o proprietário não tiver definido uma versão padrão, o Armazenamento de Blobs usará a versão mais antiga válida (2009-07-17) para interpretar os parâmetros. Se as restrições de acesso de contêiner não foram definidas com uma operação de Definir ACL de Contêiner que usou a versão 2009-09-19 ou posterior, a operação de Armazenamento de Blobs será executada usando a versão mais antiga do serviço.

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

Valor do cabeçalho x-ms-version Versão usada para interpretar parâmetros de autorização e autorização para o Armazenamento de Blobs Versão usada para executar a operação de Armazenamento de Blobs
Nenhum Versão mais antiga da assinatura de acesso compartilhado válida (2009-07-17) 2009-09-19 é usado se o contêiner foi definido como público por Definir de ACL de Contêiner usando a versão 2009-09-19 ou posterior. Caso contrário, a versão mais antiga do Armazenamento de Blobs será usada.
2011-08-18 Versão mais antiga da assinatura de acesso compartilhado válida (2009-07-17) 2011-08-18.
Qualquer versão XXXX-XX-XX Versão mais antiga da assinatura de acesso compartilhado válida (2009-07-17) Versão XXXX-XX-XX

Nota

A Microsoft recomenda usar a versão 2011-08-18 ou posterior para cenários que exigem valores de ETag entre aspas ou cabeçalhos de resposta válidos Accept-Ranges. Navegadores e outros clientes de streaming exigem esses cabeçalhos para download e novas tentativas eficientes.

Consulte também

controle de versão do para o Armazenamento do Azure