Get Container ACL (Получение списка управления доступом для контейнера)
Операция Get Container ACL
получает разрешения для указанного контейнера. Разрешения показывают, имеется ли общий доступ к данным контейнера.
Начиная с версии 2009-09-19 разрешения контейнера предоставляют следующие возможности для управления доступом к контейнерам:
Полный общий доступ на чтение. Данные контейнера и больших двоичных объектов можно считывать с помощью анонимного запроса. Клиенты могут перечислять большие двоичные объекты в контейнере с помощью анонимного запроса, но не могут перечислять контейнеры в учетной записи хранения.
Общий доступ на чтение только для больших двоичных объектов. Данные BLOB-объектов в этом контейнере можно считать с помощью анонимного запроса, но данные контейнера недоступны. Клиенты не могут перечислять большие двоичные объекты в контейнере с помощью анонимного запроса.
Нет общего доступа на чтение. Данные контейнера и BLOB-объектов могут быть прочитаны только владельцем учетной записи.
Get Container ACL
также возвращает сведения о политиках доступа на уровне контейнера, указанных в контейнере, которые могут использоваться с подписанными URL-адресами. Дополнительные сведения см. в разделе Определение хранимой политики доступа.
Весь общий доступ к контейнеру анонимен, как и доступ с использованием подписанного URL-адреса.
Запрос
Запрос Get Container ACL
можно составить следующим образом. Рекомендуется использовать ПРОТОКОЛ HTTPS. Замените myaccount именем своей учетной записи хранения:
Метод | Универсальный код ресурса (URI) запроса | параметр "Версия HTTP" |
---|---|---|
GET/HEAD |
https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=acl |
HTTP/1.1 |
Запрос службы эмулированного хранилища
При выполнении запроса к эмулированной службе хранилища укажите имя узла эмулятора и порт хранилища BLOB-объектов как 127.0.0.1:10000
, а затем имя эмулированной учетной записи хранения:
Метод | Универсальный код ресурса (URI) запроса | параметр "Версия HTTP" |
---|---|---|
GET/HEAD |
http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=acl |
HTTP/1.1 |
Дополнительные сведения см. в статье Использование эмулятора Azurite для разработки и тестирования службы хранилища Azure.
Параметры универсального кода ресурса (URI)
В URI запроса можно указать следующие дополнительные параметры:
Параметр | Описание |
---|---|
timeout |
Необязательный элемент. Параметр timeout указывается в секундах. Дополнительные сведения см. в статье Настройка времени ожидания для операций с хранилищем BLOB-объектов. |
Коды ошибок запроса
Обязательные и необязательные заголовки запросов описаны в следующей таблице:
Заголовок запроса | Описание |
---|---|
Authorization |
Обязательный. Указывает схему авторизации, имя учетной записи и подпись. Дополнительные сведения см. в статье Авторизация запросов к Службе хранилища Azure. |
Date или x-ms-date |
Обязательный. Задает время запроса в формате UTC. Дополнительные сведения см. в статье Авторизация запросов к Службе хранилища Azure. |
x-ms-lease-id: <ID> |
Необязательно, версия 2012-02-12 и более поздние. Если он указан, выполняется успешно, Get Container ACL только если аренда контейнера активна и соответствует этому идентификатору. Если активная аренда отсутствует или идентификатор не совпадает, 412 (Precondition Failed) возвращается . |
x-ms-version |
Требуется для всех авторизованных запросов. Задает версию операции, используемой для этого запроса. Дополнительные сведения см. в разделе Управление версиями для служб хранилища Azure. |
x-ms-client-request-id |
Необязательный элемент. Предоставляет созданное клиентом непрозрачное значение с ограничением в 1 кибибайт (КиБ), которое записывается в журналы при настройке ведения журнала. Мы настоятельно рекомендуем использовать этот заголовок для сопоставления действий на стороне клиента с запросами, получаемыми сервером. Дополнительные сведения см. в разделе Мониторинг Хранилище BLOB-объектов Azure. |
Текст запроса
Нет.
Ответ
Ответ включает код состояния HTTP, набор заголовков ответа и текст ответа.
Код состояния
Успешная операция возвращает код состояния 200 (ОК).
Сведения о кодах состояния см. в разделе Коды состояния и ошибок.
Коды ошибок ответа
Ответ для этой операции включает следующие заголовки. Ответ может также включать дополнительные стандартные заголовки HTTP. Все стандартные заголовки соответствуют спецификации протокола HTTP/1.1.
Заголовок ответа | Описание |
---|---|
x-ms-blob-public-access |
Показывает, можно ли получить общий доступ к данным контейнера, а также уровень доступа. Возможные значения: - container : указывает полный общий доступ на чтение для данных контейнера и больших двоичных объектов. Клиенты могут перечислять большие двоичные объекты в контейнере с помощью анонимного запроса, но не могут перечислять контейнеры в учетной записи хранения.- blob: Указывает общий доступ на чтение для BLOB-объектов. Данные BLOB-объектов в этом контейнере можно считать с помощью анонимного запроса, но данные контейнера недоступны. Клиенты не могут перечислять большие двоичные объекты в контейнере с помощью анонимного запроса.- true: Только версии, предшествующие 31.05.2016. Указывает, что контейнер был помечен для полного общего доступа на чтение с помощью версии, предшествующей 19.09.2009. Начиная с версии 2016-05-31 это значение возвращается как container .Если этот заголовок не возвращается в ответе, контейнер является частным для владельца учетной записи. |
ETag |
Тег сущности для контейнера. Если версия запроса — 18.08.2011 или более поздняя, значение ETag заключено в кавычки. |
Last-Modified |
Возвращает дату и время последнего изменения контейнера. Дата в формате согласно RFC 1123. Дополнительные сведения см. в разделе Представление значений даты и времени в коде ошибок. Любая операция, которая изменяет контейнер или его свойства или обновляет время последнего изменения. Операции с большими двоичными объектами не влияют на время последнего изменения контейнера. |
x-ms-request-id |
Уникально идентифицирует выполненный запрос и может использоваться для устранения неполадок с запросом. Дополнительные сведения см. в статье Устранение неполадок с операциями API. |
x-ms-version |
Указывает версию службы, которая использовалась для выполнения запроса. Этот заголовок возвращается для запросов, выполненных в отношении версии 2009-09-19 и более поздних версий. |
Date |
Значение даты и времени в формате UTC, созданное службой, которое указывает время инициации ответа. |
x-ms-client-request-id |
Можно использовать для устранения неполадок с запросами и соответствующими ответами. Значение этого заголовка равно значению заголовка x-ms-client-request-id , если он присутствует в запросе и содержит не более 1024 видимых символов ASCII. Если заголовок x-ms-client-request-id отсутствует в запросе, этот заголовок отсутствует в ответе. |
Текст ответа
Если для контейнера была указана политика доступа на уровне контейнера, Get Container ACL
возвращает подписанный идентификатор и политику доступа в тексте ответа.
<?xml version="1.0" encoding="utf-8"?>
<SignedIdentifiers>
<SignedIdentifier>
<Id>unique-value</Id>
<AccessPolicy>
<Start>start-time</Start>
<Expiry>expiry-time</Expiry>
<Permission>abbreviated-permission-list</Permission>
</AccessPolicy>
</SignedIdentifier>
</SignedIdentifiers>
Пример ответа
Response Status:
HTTP/1.1 200 OK
Response Headers:
Transfer-Encoding: chunked
x-ms-blob-public-access: container
Date: Sun, 25 Sep 2011 20:28:22 GMT
ETag: "0x8CAFB82EFF70C46"
Last-Modified: Sun, 25 Sep 2011 19:42:18 GMT
x-ms-version: 2011-08-18
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
<?xml version="1.0" encoding="utf-8"?>
<SignedIdentifiers>
<SignedIdentifier>
<Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>
<AccessPolicy>
<Start>2009-09-28T08:49:37.0000000Z</Start>
<Expiry>2009-09-29T08:49:37.0000000Z</Expiry>
<Permission>rwd</Permission>
</AccessPolicy>
</SignedIdentifier>
</SignedIdentifiers>
Авторизация
Операция Get Container ACL
поддерживает только авторизацию с общим ключом.
Комментарии
Только владелец учетной записи может считывать данные в определенной учетной записи хранения, если только владелец учетной записи не указал, что большие двоичные объекты в контейнере доступны для общего доступа на чтение, или не сделал ресурсы в контейнере доступными с помощью подписанного URL-адреса.
Выставление счетов
Запросы на ценообразование могут поступать от клиентов, использующих API хранилища BLOB-объектов, напрямую через REST API хранилища BLOB-объектов или из клиентской библиотеки службы хранилища Azure. Эти запросы начисляют плату за транзакцию. Тип транзакции влияет на способ оплаты учетной записи. Например, транзакции чтения начисляются к категории выставления счетов, отличной от категории операций записи. В следующей таблице показана категория выставления счетов для Get Container ACL
запросов на основе типа учетной записи хранения.
Операция | Тип учетной записи хранения | Категория выставления счетов |
---|---|---|
Get Container ACL (Получение списка управления доступом для контейнера) | Блочный BLOB-объект (ценовая категории "Премиум") Общего назначения версии 2 (цен. категория "Стандартный") |
Другие операции |
Get Container ACL (Получение списка управления доступом для контейнера) | Стандартная общего назначения версии 1 | Операции чтения |
Дополнительные сведения о ценах на указанную категорию выставления счетов см. в разделе Цены на Хранилище BLOB-объектов Azure.
См. также раздел
Ограничение доступа к контейнерам и BLOB-объектам
Определение хранимой политики доступа
Set Container ACL
Авторизация запросов к службе хранилища Azure
Коды состояний и ошибок
Коды ошибок хранилища BLOB-объектов