Список учетных записей хранилища
List Storage Accounts
Операция перечисляет учетные записи хранилища, доступных в указанной подписки.
Запрос
List Storage Accounts
Можно составить следующим образом. Замените <subscription-id>
с вашим идентификатором подписки.
Метод | URI запроса |
---|---|
GET | https://management.core.windows.net/<subscription-id>/services/storageservices |
Необходимо убедиться, что запрос к службе управления безопасен. Дополнительные сведения см. в разделе Проверка подлинности запросов управления службами.
Параметры URI
Отсутствует.
Заголовки запроса
В следующей таблице описаны заголовки запросов.
Заголовок запроса | Описание |
---|---|
x-ms-version |
Обязательно. Задает версию операции, используемой для этого запроса. Этот заголовок должен быть установлен 2009-10-01 или более поздней версии. Дополнительные сведения об управлении версиями заголовков см. в разделе Управление версиями службы управления. |
Текст запроса
Отсутствует.
Ответ
Ответ включает код состояния HTTP, набор заголовков ответа и текст ответа.
Код состояния
Успешная операция возвращает код состояния 200 (ОК).
Сведения о кодах состояния см. в разделе состояние службы управления и коды ошибок.
Заголовки ответа
Ответ для этой операции включает следующие заголовки. Ответ может также включать дополнительные стандартные заголовки HTTP. Все стандартные заголовки соответствуют спецификации протокола HTTP/1.1.
Заголовок ответа | Описание |
---|---|
x-ms-request-id |
Значение, которое однозначно определяет запрос к службе управления. |
Текст ответа
Текст ответа имеет следующий формат:
<?xml version="1.0" encoding="utf-8"?> <StorageServices xmlns=”https://schemas.microsoft.com/windowsazure”> <StorageService> <Url>storage-service-address</Url> <ServiceName>storage-service-name</ServiceName> <StorageServiceProperties> <Description>description</Description> <AffinityGroup>affinity-group</AffinityGroup> <Location>location-of-storage-account</Location> <Label>base64-encoded-label</Label> <Status>status</Status> <Endpoints> <Endpoint>storage-service-blob-endpoint</Endpoint> <Endpoint>storage-service-queue-endpoint</Endpoint> <Endpoint>storage-service-table-endpoint</Endpoint> <Endpoint>storage-service-file-endpoint</Endpoint> </Endpoints> <GeoReplicationEnabled>geo-replication-indicator</GeoReplicationEnabled> <GeoPrimaryRegion>primary-region</GeoPrimaryRegion> <StatusOfPrimary>primary-status</StatusOfPrimary> <LastGeoFailoverTime>DateTime</LastGeoFailoverTime> <GeoSecondaryRegion>secondary-region</GeoSecondaryRegion> <StatusOfSecondary>secondary-status</StatusOfSecondary> <CreationTime>time-of-creation</CreationTime> <CustomDomains> <CustomDomain> <Name>name-of-custom-domain</Name> </CustomDomain> </CustomDomains> <SecondaryReadEnabled>secondary-read-indicator</SecondaryReadEnabled> <SecondaryEndpoints> <Endpoint>storage-secondary-service-blob-endpoint</Endpoint> <Endpoint>storage-secondary-service-queue-endpoint</Endpoint> <Endpoint>storage-secondary-service-table-endpoint</Endpoint> </SecondaryEndpoints> <AccountType>type-of-storage-account</AccountType> </StorageServiceProperties> <ExtendedProperties> <ExtendedProperty> <Name>property-name</Name> <Value>property-value</Value> </ExtendedProperty> </ExtendedProperties> </StorageService> </StorageServices>
В следующей таблице описаны элементы текста ответа.
Имя элемента | Описание |
---|---|
URL-адрес | Указывает URI учетной записи хранилища. |
ServiceName | Указывает имя учетной записи хранилища. Это имя — имя префикса DNS, и оно может использоваться для получения доступа к BLOB-объектам, очередям и таблицам в учетной записи хранения. Например, если имя службы MyStorageAccount может получить доступ к контейнерам больших двоичных объектов, вызвав: http://MyStorageAccount.blob.core.windows.net/mycontainer/ |
StorageServiceProperties | Указывает свойства учетной записи хранилища. |
ExtendedProperties | Указывает имя и значение расширенного свойства, добавленного в учетную запись хранилища. |
StorageServiceProperties
Указывает свойства учетной записи хранилища.
Имя элемента | Описание |
---|---|
Описание | Необязательно. Описание учетной записи хранения. Длина описания может быть до 1024 символов.Description Элемент только в версии 2012-03-01 или более поздней версии. |
Территориальная группа | Обязателен, если Location не указан. Имя существующей территориальной группы, связанной с этой подпиской. Это имя является идентификатором GUID и может быть получено считыванием элемента name текста ответа, возвращаемого Перечисление территориальных групп операции.AffinityGroup Элемент только в версии 2012-03-01 или более поздней версии. |
Местоположение | Обязателен, если AffinityGroup не указан. Расположение, где будет создана учетная запись хранения.Location Элемент только в версии 2012-03-01 или более поздней версии. |
Метка | Обязательно. Имя для размещенной службы в кодировке Base 64. Имя может быть длиной до 100 символов. Это имя может определять учетную запись хранения в целях отслеживания.Label Элемент только в версии 2012-03-01 или более поздней версии. |
Status | Состояние учетной записи хранения. Возможные значения: - Creating - Created - Deleting - Deleted - Changing - ResolvingDns Status Элемент только в версии 2012-03-01 или более поздней версии. |
Конечные точки | Конечные точки BLOB-объектов, таблиц, очередей и файлов. Примечание 1. Конечная точка файл находится в режиме предварительного просмотра и возвращается только для подписок, поддержкой предварительного просмотра. Также Обратите внимание, что Примечание 2: Standard_ZRS типа счета, возвращается только конечная точка большого двоичного объекта. Кроме того, тип ZRS поддерживает только блочные, но не страничные BLOB-объекты, и поэтому он несовместим с виртуальными машинами IaaS. Примечание 3. Для типа учетной записи Premium_LRS возвращается только конечная точка BLOB-объекта. |
GeoReplicationEnabled | Показывает, реплицируются ли данные в учетной записи хранения по более чем одному географическому местоположению для обеспечения устойчивости в случае катастрофической потери службы. Значение равно true Если географическая репликация включена; в противном случае false .GeoReplicationEnabled Элемент только в версии 2012-03-01 или более поздней версии и заменен элементом AccountType, начиная с версии 2014-06-01 или более поздней версии. |
GeoPrimaryRegion | Показывает основной географический регион, в котором учетная запись хранения существует в настоящее время.GeoPrimaryRegion Элемент только в версии 2012-03-01 или более поздней версии. |
StatusOfPrimary | Показывает, доступен ли основной регион хранилища. Возможные значения: - Available - Unavailable StatusOfPrimary Элемент только в версии 2013-11-01 или более поздней версии. |
LastGeoFailoverTime | Отметка времени, которая показывает самый новый экземпляр отработки отказа в дополнительном регионе. В случае нескольких отработок отказа сохраняется только последняя отметка даты и времени. Формат возвращаемой отметки времени: [формате 4DigitYear]-[2DigitMonth]-[2DigitDay] T [2DigitMinute]: [2DigitSecond]: [7DigitsOfPrecision] Z Например: < LastGeoFailoverTime > 2010-01-18T13:15:30.0000000Z < / LastGeoFailoverTime > LastGeoFailoverTime не возвращается при отсутствии экземпляра отработки отказа. LastGeoFailoverTime Элемент только в версии 2012-03-01 или более поздней версии. |
GeoSecondaryRegion | Указывает географический регион, в котором реплицируется учетная запись хранения. Элемент GeoSecondaryRegion не возвращается, если для географической репликации в этой учетной записи задано значение off. GeoSecondaryRegion Элемент только в версии 2012-03-01 или более поздней версии. |
StatusOfSecondary | Указывает, доступен ли дополнительный регион хранилища.StatusOfSecondary Элемент только в версии 2013-11-01 или более поздней версии.Возможные значения: - Available - Unavailable |
CreationTime | Указывает время создания учетной записи хранилища. |
CustomDomains | Задает настраиваемые домены, связанные с учетной записью хранилища.CustomDomains Элемент только в версии 2013-06-01 или более поздней версии. |
SecondaryReadEnabled | Указывает, включено ли вторичное чтение для учетной записи хранилища. Возможные значения: - true - false SecondaryReadEnabled Элемент только в версии 2013-11-01 или более поздней версии и заменен элементом AccountType, начиная с версии 2014-06-01 или более поздней версии. |
SecondaryEndpoints | Указывает вторичные конечные точки учетной записи хранилища.SecondaryEndpoints Элемент только в версии 2013-11-01 или более поздней версии. |
AccountType | Указывает, поддерживает ли учетная запись локально избыточное хранилище, геоизбыточное хранилище, хранилище, избыточное в пределах зоны, или геоизбыточное хранилище с доступом на чтение. Возможные значения: - Standard_LRS - Standard_ZRS - Standard_GRS - Standard_RAGRS - Premium_LRS AccountType Элемент только в версии 2014-06-01 или более поздней версии и заменяет элементы SecondaryReadEnabled и GeoReplicationEnabled.Premium_LRS Элемент только в версии 2014-10-01 или более поздней версии. |
Конечные точки
Указывает конечные точки учетной записи хранилища.
Имя элемента | Описание |
---|---|
Конечная точка | Содержит конечную точку службы BLOB-объектов в следующем формате: https://<storage-service-name>.blob.core.windows.net Endpoint Элемент только в версии 2012-03-01 или более поздней версии. Конечные точки HTTP, возвращаются в версии не выше 2014-04-01. |
Конечная точка | Содержит конечную точку службы очередей в следующем формате: https://<storage-service-name>.queue.core.windows.net Endpoint Элемент только в версии 2012-03-01 или более поздней версии. Конечные точки HTTP, возвращаются в версии не выше 2014-04-01. |
Конечная точка | Содержит конечную точку службы таблиц в следующем формате: https://<storage-service-name>.table.core.windows.net Endpoint Элемент только в версии 2012-03-01 или более поздней версии. Конечные точки HTTP, возвращаются в версии не выше 2014-04-01. |
Конечная точка | Содержит конечную точку службы файлов в следующем формате: https://<storage-service-name>.file.core.windows.net Endpoint Элемент только в версии 2012-03-01 или более поздней версии. Конечные точки HTTP, возвращаются в версии не выше 2014-04-01. |
CustomDomains
Задает настраиваемые домены, связанные с учетной записью хранилища.
Имя элемента | Описание |
---|---|
CustomDomain | Задает сведения о настраиваемом домене, связанном с учетной записью хранилища. |
Название | Указывает имя настраиваемого домена. |
SecondaryEndpoints
Указывает вторичные конечные точки учетной записи хранилища.
Имя элемента | Описание |
---|---|
Конечная точка | Содержит конечную точку дополнительная служба BLOB-объектов в следующем формате: https://<storage-secondary-service-name>.blob.core.windows.net Конечные точки HTTP, возвращаются в версии не выше 2014-04-01. |
Конечная точка | Содержит конечную точку службы очередей в следующем формате: https://<storage-secondary-service-name>.queue.core.windows.net Конечные точки HTTP, возвращаются в версии не выше 2014-04-01. |
Конечная точка | Содержит конечную точку службы таблиц в следующем формате: https://<storage-secondary-service-name>.table.core.windows.net Конечные точки HTTP, возвращаются в версии не выше 2014-04-01. |
ExtendedProperties
Указывает имя и значение расширенного свойства, добавленного в учетную запись хранилища.
Имя элемента | Описание |
---|---|
Название | Необязательно. Представляет собой имя расширенного свойства учетной записи хранения. Каждое расширенное свойство должно иметь и заданное имя, и значение. Может быть максимум 50 пар из имени и значения расширенных свойств. Максимальная длина имени элемента — 64 символа, в имени допустимы только буквенно-цифровые символы и знаки подчеркивания и имя должно начинаться с буквы. Попытка использовать другие символы, начать имя не с буквы или ввести имя, которое уже имеется у другого расширенного свойства в той же учетной записи хранения, приведет к ошибке с кодом состояния 400 (неправильный запрос). Name Элемент только в версии 2012-03-01 или более поздней версии. |
Значение | Необязательно. Представляет собой значение расширенного свойства учетной записи хранения. Каждое расширенное свойство должно иметь и заданное имя, и значение. Можно задать не более 50 пар из имени и значения расширенных свойств, максимальное значение каждого расширенного свойства — 255 символов.Value Элемент только в версии 2012-03-01 или более поздней версии. |
Примечания
Если x-ms-version
— 2012-03-01 или более поздней версии и территориальная группа была создана в одном из устаревших Anywhere US
, Anywhere Europe
, Anywhere Asia
областей, Location
элемент возвращает расположение, где территориальная группа в данный момент.
List Storage Accounts
Операция может использоваться для получения URI для других операций в учетных записях хранения, такие как Получение свойств учетной записи хранения, Получение ключей учетной записи хранения, Удаление учетной записи хранения, и Обновление учетной записи хранения.
Пример
Программа в следующем примере получает идентификатор подписки, связанный отпечаток сертификата управления и строку версии операции и выводит список учетных записей хранения на консоль. Инициализация msVersion
, subscriptionId
, и thumbprint
переменных с собственными значениями для запуска примера кода. В этом примере используется x-ms-version
2011-10-01.
using System; using System.Collections.Generic; using System.Net; using System.Security.Cryptography.X509Certificates; using System.Xml; using System.Xml.Linq; class Program { static void Main(string[] args) { string msVersion = "2011-10-01"; string subscriptionId = "subscription-id-guid"; string thumbprint = "certificate-thumbprint"; try { // Obtain the certificate with the specified thumbprint X509Certificate2 certificate = GetCertificate(thumbprint); ListStorageAccountsExample(subscriptionId, certificate, msVersion); } catch (Exception ex) { Console.WriteLine("Exception caught in Main:"); Console.WriteLine(ex.Message); } } public static X509Certificate2 GetCertificate(string thumbprint) { List<StoreLocation> locations = new List<StoreLocation> { StoreLocation.CurrentUser, StoreLocation.LocalMachine }; foreach (var location in locations) { X509Store store = new X509Store("My", location); try { store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly); X509Certificate2Collection certificates = store.Certificates.Find( X509FindType.FindByThumbprint, thumbprint, false); if (certificates.Count == 1) { return certificates[0]; } } finally { store.Close(); } } throw new ArgumentException(string.Format( "A certificate with thumbprint '{0}' could not be located.", thumbprint)); } public static void ListStorageAccountsExample( string subscriptionId, X509Certificate2 certificate, string version) { string uriFormat = "https://management.core.windows.net/{0}/services/storageservices"; Uri uri = new Uri(String.Format(uriFormat, subscriptionId)); HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(uri); request.Method = "GET"; request.Headers.Add("x-ms-version", version); request.ClientCertificates.Add(certificate); request.ContentType = "application/xml"; XDocument responseBody = null; HttpStatusCode statusCode; HttpWebResponse response; try { response = (HttpWebResponse)request.GetResponse(); } catch (WebException ex) { // GetResponse throws a WebException for 400 and 500 status codes response = (HttpWebResponse)ex.Response; } statusCode = response.StatusCode; if (response.ContentLength > 0) { using (XmlReader reader = XmlReader.Create(response.GetResponseStream())) { responseBody = XDocument.Load(reader); } } response.Close(); if (statusCode.Equals(HttpStatusCode.OK)) { XNamespace wa = "https://schemas.microsoft.com/windowsazure"; XElement storageServices = responseBody.Element(wa + "StorageServices"); int storageCount = 0; foreach (XElement storageService in storageServices.Elements(wa + "StorageService")) { string url = storageService.Element(wa + "Url").Value; string serviceName = storageService.Element(wa + "ServiceName").Value; Console.WriteLine( "Location[{0}]{1} Name: {2}{1} DisplayName: {3}", storageCount++, Environment.NewLine, url, serviceName); } } else { Console.WriteLine("Call to List Storage Accounts returned an error:"); Console.WriteLine("Status Code: {0} ({1}):{2}{3}", (int)statusCode, statusCode, Environment.NewLine, responseBody.ToString(SaveOptions.OmitDuplicateNamespaces)); } return; } }