Экспорт (0) Печать
Развернуть все
Эта тема еще не получила оценку - Оценить эту тему

Управление версиями для служб больших двоичных объектов, очередей и таблиц в Windows Azure

Обновлено: Апрель 2014 г.

ImportantВажно!
Руководство по эмулятору хранилища. Версия эмулятора хранилища Windows Azure 2.2.1 теперь доступна в виде предварительного выпуска. Эта версия поддерживает версию 2013-08-15 служб хранилища Windows Azure. Дополнительные сведения см. в блоге группы разработчиков хранилища Windows Azure.

Обратите внимание, что версия эмулятора хранилища, которая входит в пакет SDK Windows Azure 2.2, не поддерживает версию 2013-08-15. Пользователи, которые будут применять эту версию эмулятора хранилища, получат ошибки 400 - Bad Request.

Службы хранилища принимают запросы, в которых указаны разные версии различных операций. Указать, какую версию операции следует использовать, можно заданием заголовка запроса x-ms-version. Код может вызывать более старые версии операции, либо можно изменить код для вызова более новой версии. Документация для каждой операции описывает отличия в поведении между разными версиями операции.

Значение заголовка запроса x-ms-version необходимо указывать в формате ГГГГ-ММ-ДД. Пример.

Request Headers:
x-ms-version: 2013-08-15

В настоящее время доступны следующие версии служб хранилища Windows Azure:

Для запросов, которые не используют подпись коллективного доступа, в службах хранения Windows Azure не требуется указание в запросе заголовка x-ms-version. Однако рекомендуется включать этот заголовок в каждый запрос, особенно в запросы с проверкой подлинности. Кроме того, рекомендуется установить версию по умолчанию для службы BLOB-объектов с помощью операции Set Blob Service Properties (REST API).

Клиентская программа, которая использует URL-адрес подписи коллективного доступа, может столкнуться с непредвиденным поведением в случае, если в URL-адресе SAS указана версия службы хранилища более поздняя, чем в клиентской программе. В коде, подготавливающем и распределяющем URL-адреса подписи коллективного доступа, должны быть указаны версии, применимые для клиентского ПО, которое делает запросы к службе хранилища.

Анонимные запросы в службу BLOB-объектов и удостоверенные запросы ко всем службам могут иметь или не иметь указанной определенной версии. В следующем списке показано, как оцениваются эти запросы и как запрос обрабатывается.

  1. Если запрос содержит действительный заголовок x-ms-version, то служба хранилища использует указанную версию. Все запросы к службам таблиц и очередей, не использующие подписанный URL-адрес, должны иметь определенный заголовок x-ms-version.

  2. Если запрос в службу BLOB-объектов не имеет заголовка x-ms-version, но владелец установил версию по умолчанию с помощью Set Blob Service Properties (REST API), используется указанная владельцем версия по умолчанию.

  3. Если запрос в службу BLOB-объектов не имеет заголовка x-ms-version и версия по умолчанию с помощью Set Blob Service Properties (REST API) не была установлена, то используется самая ранняя версия службы BLOB-объектов, исключая случаи, когда контейнер в последний раз был открыт для общего доступа операцией Задание списка управления доступом для контейнера (REST API), выполненной с помощью версии 2009-09-19 или более новой. В этом случае запрос использует версию 2009-09-19.

В службе BLOB-объектов подписи коллективного доступа были введены в версии 2009-07-17. В службах таблиц и очередей подписи коллективного доступа были введены в версии 2012-02-12. До версии 2012-02-12 службы таблиц и очередей подтверждали подлинность запросов только с помощью SharedKey и SharedKeyLite.

Управление версиями влияет на обработку запросов с подписью коллективного доступа в двух аспектах.

  • Определяется версия для интерпретации параметров и поведения подписи коллективного доступа.

  • Определяется версия для выполнения операций хранилища. Например, в версиях до 2011-08-18 операция Get Blob (REST API) не возвращает заголовок Accept-Ranges.

В версии 2012-02-12 и более новой подписи коллективного доступа требуют параметра signedversion, а этот параметр не может появиться в запросах, использующих предыдущие версии. Если подпись коллективного доступа включает параметр signedversion, указанная версия используется и для интерпретации параметров SAS, и для выполнения операций хранилища. По возможности рекомендуется использовать версию 2012-02-12 или более новую с параметром signedversion. Дополнительные сведения о signedversion и других параметрах подписей общего доступа см. в разделе Constructing the Shared Access Signature URI (REST API).

Подписи коллективного доступа к службам таблиц и очередей всегда включают параметр signedversion. В этом разделе описывается, как служба BLOB-объектов использует заголовок запроса x-ms-version, когда подпись коллективного доступа не включает параметр signedversion. Если в запросе в службу BLOB-объектов отсутствует параметр signedversion, запрос должен использовать версию более старую, чем 2012-02-12, и для интерпретации параметров SAS для запроса используется версия 2009-07-17.

Когда запрос SAS не включает параметр signedversion, служба BLOB-объектов использует следующие правила для определения версии, используемой для интерпретации параметров и поведения SAS, а также для определения версии для выполнения операций хранилища.

  1. Если запрос с SAS к службе BLOB-объектов имеет действительный заголовок x-ms-version и не имеет поля signedversion, то для интерпретации параметров SAS используется версия 2009-07-17, а для выполнения операций службы хранилища BLOB-объектов используется версия, указанная в x-ms-version.

  2. Если запрос SAS к службе BLOB-объектов не имеет заголовка x-ms-version и не содержит параметра signedversion, но владелец задал версию по умолчанию для этого типа службы хранилища с помощью Set Blob Service Properties (REST API), используется версия 2009-07-17 для оценки и интерпретации параметров SAS и указанная владельцем версия по умолчанию для выполнения операций службы хранилища BLOB-объектов.

  3. Если запрос с SAS к службе BLOB-объектов не имеет заголовка x-ms-version и не имеет параметра signedversion, а владелец не задал версию по умолчанию, то служба BLOB-объектов использует версию 2009-07-17 для интерпретации параметров SAS. Если контейнер является общедоступным и его ограничения доступа заданы операцией Задание списка управления доступом для контейнера (REST API), которая использовала версию 2009-09-19 или более новую, для выполнения операций службы хранилища BLOB-объектов используется версия 2009-09-19.

  4. Если запрос с SAS к службе BLOB-объектов не имеет заголовка x-ms-version и не имеет параметра signedversion, а владелец не задал версию по умолчанию, то служба хранилища использует версию 2009-07-17 для интерпретации параметров SAS. Если ограничения доступа для контейнера не были заданы операцией Задание списка управления доступом для контейнера (REST API), использующей версию 2009-09-19 или более новую, операции хранилища выполняются с помощью самой ранней версии службы BLOB-объектов.

В следующей таблице приведены правила для различных сценариев.

 

Значение заголовка x-ms-version Значение параметра signedversion Версия, используемая для интерпретации параметров и поведения SAS Версия, используемая для выполнения операций хранилища

Нет

Нет

Для ресурсов службы BLOB-объектов - самая ранняя версия SAS (2009-07-17).

Ошибка для служб таблиц и очередей.

Для ресурсов службы BLOB-объектов используется 2009-09-19, если для контейнера установлен общий доступ операцией Задание списка управления доступом для контейнера (REST API), использующей версию 2009-09-19 или более новую, в противном случае используется самая ранняя версия службы BLOB-объектов.

Ошибка для служб таблиц и очередей.

2011-08-18

Нет

Для ресурсов службы BLOB-объектов - самая ранняя версия SAS (2009-07-17).

Ошибка для служб таблиц и очередей.

Для ресурсов службы BLOB-объектов - 2011-08-18.

Ошибка для служб таблиц и очередей.

2012-02-12

Нет

Для ресурсов службы BLOB-объектов - самая ранняя версия SAS (2009-07-17).

Ошибка для служб таблиц и очередей.

Для ресурсов службы BLOB-объектов - 2012-02-12.

Ошибка для служб таблиц и очередей.

Нет

2012-02-12

2012-02-12

2012-02-12

2012-02-12

2012-02-12

2012-02-12

2012-02-12

2011-08-18

2012-02-12

2012-02-12

2012-02-12

Будущая версия

2012-02-12

2012-02-12

2012-02-12

Будущая версия А

Будущая версия Б

Будущая версия Б

Будущая версия Б

См. также

Была ли вам полезна эта информация?
(1500 символов осталось)
Спасибо за ваш отзыв
Показ:
© 2014 Microsoft. Все права защищены.