Esporta (0) Stampa
Espandi tutto

Recupero delle proprietà dell'account di archiviazione

Aggiornamento: maggio 2014

L'operazione Get Storage Account Properties restituisce le proprietà di sistema per l'account di archiviazione specificato.

La richiesta di Get Storage Account Properties può essere specificata come indicato di seguito. Sostituire <subscription-id> con l'ID sottoscrizione e <storage-account-name> con il nome dell'account di archiviazione.

 

Metodo URI della richiesta

GET

https://management.core.windows.net/<subscription-id>/services/storageservices/<storage-account-name>

È necessario verificare che la richiesta effettuata al servizio di gestione sia sicura. Per altri dettagli, vedere Autenticazione di richieste di gestione dei servizi.

Nessuno.

Nella tabella seguente vengono descritte le intestazioni delle richieste.

 

Intestazione della richiesta Descrizione

x-ms-version

Obbligatorio. Specifica la versione dell'operazione da utilizzare per questa richiesta. Questa intestazione deve essere impostata su 01.10.09 o una versione successiva. Per altre informazioni sulle intestazioni di controllo delle versioni, vedere Controllo delle versioni di gestione del servizio.

Nella risposta sono inclusi un codice di stato HTTP, un set di intestazioni per la risposta e il corpo di una risposta.

Un'operazione completata correttamente restituisce il codice di stato 200 (OK). Per informazioni sui codici di stato, vedere Codici di stato e di errore relativi alla gestione dei servizi.

Nella risposta per questa operazione sono incluse le intestazioni riportate di seguito; inoltre, possono essere incluse intestazioni HTTP standard aggiuntive. Tutte le intestazioni standard sono conformi alla specifica del protocollo HTTP/1.1.

 

Intestazione della risposta Descrizione

x-ms-request-id

Valore che identifica in modo univoco una richiesta effettuata nel servizio di gestione.

Il formato del corpo della risposta è il seguente:


<?xml version="1.0" encoding="utf-8"?>
<StorageService xmlns="http://schemas.microsoft.com/windowsazure">
  <Url>storage-account-request-uri</Url>
  <ServiceName>storage-account-name</ServiceName>
  <StorageServiceProperties>
    <Description>description</Description>
    <AffinityGroup>affinity-group</AffinityGroup>
    <Location>location</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>
    </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>
  </StorageServiceProperties>
  <ExtendedProperties>
    <ExtendedProperty>
      <Name>property-name</Name>
      <Value>property-value</Value>
    </ExtendedProperty>
  </ExtendedProperties>
  <Capabilities>
    <Capability>storage-account-capability</Capability>
  </Capabilities>
</StorageService>

Nella tabella indicata di seguito vengono descritti gli elementi del corpo della risposta.

 

Nome elemento Descrizione

URL

Specifica l'URI dell'account di archiviazione.

ServiceName

Specifica il nome dell'account di archiviazione. Corrisponde al nome del prefisso DNS e può essere utilizzato per accedere a Blob, code e tabelle nell'account di archiviazione.

Ad esempio, se il nome del servizio è MyStorageAccount è possibile accedere ai contenitori Blob chiamando: http://MyStorageAccount.blob.core.windows.net/mycontainer/

StorageServiceProperties

Specifica le proprietà dell'account di archiviazione.

ExtendedProperties

Specifica il nome e il valore di una proprietà estesa che è stata aggiunta all'account di archiviazione.

Capability

Indica se l'account di archiviazione è in grado di eseguire operazioni correlate a macchine virtuali. In tal caso, l'elemento restituisce una stringa contenente PersistentVMRole. In caso contrario, questo elemento non sarà presente.

L'elemento Capability è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

Specifica le proprietà dell'account di archiviazione.

 

Nome elemento Descrizione

Descrizione

Facoltativo. Descrizione dell'account di archiviazione. La descrizione può contenere un massimo di 1024 caratteri.

L'elemento Description è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

AffinityGroup

Obbligatorio se Location non viene specificato. Nome di un gruppo di affinità esistente associato alla sottoscrizione. Questo nome è un GUID e può essere recuperato tramite l'elemento del nome del corpo della una risposta restituito dall'operazione Elencare i gruppi di affinità.

L'elemento AffinityGroup è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

Posizione

Obbligatorio se AffinityGroup non viene specificato. Posizione in cui verrà creato l'account di archiviazione.

L'elemento Location è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

Label

Obbligatorio. Nome per il servizio ospitato con codifica Base 64. Il nome può contenere un massimo di 100 caratteri. Nome utilizzabile per identificare l'account di archiviazione per motivi di rilevamento.

L'elemento Label è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

Stato

Stato dell'account di archiviazione. I valori possibili sono:

  • Creating

  • Created

  • Deleting

  • Deleted

  • Changing

  • ResolvingDns

L'elemento Status è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

Endpoint

Specifica gli endpoint dell'account di archiviazione.

GeoReplicationEnabled

Indica se i dati dell'account di archiviazione vengono replicati in più di una posizione geografica in modo da abilitare la resilienza in caso di perdita irreversibile di servizio. Il valore è true se la replica geo è abilitata; in caso contrario false.

L'elemento GeoReplicationEnabled è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

GeoPrimaryRegion

Indica l'area geografica primaria in cui è presente attualmente l'account di archiviazione.

L'elemento GeoPrimaryRegion è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

StatusOfPrimary

Indica se l'area di archiviazione primaria è disponibile.

I valori possibili sono:

  • Available

  • Unavailable

L'elemento StatusOfPrimary è disponibile solo se si utilizza la versione 01.11.13 o una versione successiva.

LastGeoFailoverTime

Timestamp che indica l'istanza più recente di un failover nell'area secondaria. In caso di più failover vengono conservate solo la data e l'ora del failover più recente.

Il formato del timestamp restituito è: [anno a 4 cifre]-[mese a 2 cifre]-[giorno a 2 cifre]T[minuti a 2 cifre]:[secondi a 2 cifre]:[7 cifre di precisione]Z

Esempio: <LastGeoFailoverTime>2010-01-18T13:15:30.0000000Z</LastGeoFailoverTime>

LastGeoFailoverTime non viene restituito se non è presente un'istanza di un failover.

L'elemento LastGeoFailoverTime è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

GeoSecondaryRegion

Indica l'area geografica in cui viene replicato l'account di archiviazione.

L'elemento GeoSecondaryRegion non viene restituito se la replica geo è "off" per l'account.

L'elemento GeoSecondaryRegion è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

StatusOfSecondary

Indica se l'area di archiviazione secondaria è disponibile.

I valori possibili sono:

  • Available

  • Unavailable

L'elemento StatusOfSecondary è disponibile solo se si utilizza la versione 01.11.13 o una versione successiva.

CreationTime

Specifica la data e l'ora di creazione dell'account di archiviazione.

CustomDomains

Specifica i domini personalizzati associati all'account di archiviazione.

L'elemento CustomDomains è disponibile solo se si utilizza la versione 2013-06-01 o una versione successiva.

SecondaryReadEnabled

Indica se è abilitata la lettura secondaria per l'account di archiviazione.

I valori possibili sono:

  • true

  • false

L'elemento SecondaryReadEnabled è disponibile solo se si utilizza la versione 01.11.13 o una versione successiva.

SecondaryEndpoints

Specifica gli endpoint secondari dell'account di archiviazione.

L'elemento SecondaryEndpoints è disponibile solo se si utilizza la versione 01.11.13 o una versione successiva.

Specifica gli endpoint dell'account di archiviazione.

 

Nome elemento Descrizione

Endpoint

Contiene l'endpoint del servizio Blob nel formato seguente: https:// <storage-service-name>.blob.core.windows.net

L'elemento Endpoint è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva. Con la versione 2014-04-01 o precedente vengono restituiti endpoint HTTP.

Endpoint

Contiene l'endpoint del servizio coda nel formato seguente: https:// <storage-service-name>.queue.core.windows.net

L'elemento Endpoint è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva. Con la versione 2014-04-01 o precedente vengono restituiti endpoint HTTP.

Endpoint

Contiene l'endpoint del servizio tabelle nel formato seguente: https://<storage-service-name>.table.core.windows.net

L'elemento Endpoint è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva. Con la versione 2014-04-01 o precedente vengono restituiti endpoint HTTP.

Specifica i domini personalizzati associati all'account di archiviazione.

 

Nome elemento Descrizione

CustomDomain

Specifica le informazioni relative a un dominio personalizzato associato all'account di archiviazione.

Nome

Specifica il nome del dominio personalizzato.

Specifica gli endpoint secondari dell'account di archiviazione.

 

Nome elemento Descrizione

Endpoint

Contiene l'endpoint del servizio secondario Blob nel formato seguente: https://<storage-secondary-service-name>.blob.core.windows.net

Con la versione 2014-04-01 o precedente vengono restituiti endpoint HTTP.

Endpoint

Contiene l'endpoint del servizio coda nel formato seguente: https://<storage-secondary-service-name>.queue.core.windows.net

Con la versione 2014-04-01 o precedente vengono restituiti endpoint HTTP.

Endpoint

Contiene l'endpoint del servizio tabelle nel formato seguente: https://<storage-secondary-service-name>.table.core.windows.net

Con la versione 2014-04-01 o precedente vengono restituiti endpoint HTTP.

Specifica il nome e il valore di una proprietà estesa che è stata aggiunta all'account di archiviazione.

 

Nome elemento Descrizione

Nome

Facoltativo. Rappresenta il nome di una proprietà estesa dell'account di archiviazione. Ogni proprietà estesa deve contenere un nome e un valore definiti. È possibile avere un massimo di 50 coppie nome/valore per le proprietà estese.

La lunghezza massima dell'elemento Name è di 64 caratteri. Nel nome sono validi solo i caratteri alfanumerici e i caratteri di sottolineatura. Il nome deve iniziare con una lettera. Se si tenta di utilizzare altri caratteri, di immettere un elemento Name che inizia con un carattere diverso da una lettera o di specificare un nome identico a quello di un'altra proprietà estesa appartenente allo stesso account di archiviazione, si verificherà un errore con codice di stato 400 (Richiesta non valida).

L'elemento Name è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

Valore

Facoltativo. Rappresenta il valore di una proprietà estesa dell'account di archiviazione. Ogni proprietà estesa deve contenere un nome e un valore definiti. È possibile avere un massimo di 50 coppie nome/valore per le proprietà estese e il valore di ciascuna proprietà contiene un massimo di 255 caratteri.

L'elemento Value è disponibile solo se si utilizza la versione 01.03.12 o una versione successiva.

La replica geo può essere abilitata quando si crea o si aggiorna un account di archiviazione.

Se x-ms-version è 2012-03-01 o una versione successiva e il gruppo di affinità è stato creato in una delle aree deprecate Anywhere US, Anywhere Europe, Anywhere Asia, l'elemento Location restituisce la posizione in cui è allocato il gruppo di affinità.

Il programma di esempio seguente accetta l'ID sottoscrizione, un'identificazione digitale del certificato di gestione associato, la stringa della versione dell'operazione e il nome dell'account di archiviazione, quindi visualizza le proprietà dell'account di archiviazione restituite nella console. Inizializzare le variabili msVersion, subscriptionId, thumbprint e serviceName con valori personalizzati per eseguire il codice di esempio.

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-12-01";
        string subscriptionId = "subscription-id-guid";
        string thumbprint = "certificate-thumbprint";
        string serviceName = "myexamplestorage1";
        try
        {
            // Obtain the certificate with the specified thumbprint
            X509Certificate2 certificate = GetCertificate(thumbprint);
            GetStorageAccountPropertiesExample(
                subscriptionId, certificate, msVersion, serviceName);
        }
        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 GetStorageAccountPropertiesExample(
        string subscriptionId,
        X509Certificate2 certificate,
        string version,
        string serviceName)
    {
        string uriFormat = "https://management.core.windows.net/{0}/services/storageservices/{1}";
        Uri uri = new Uri(String.Format(uriFormat, subscriptionId, serviceName));
 
        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 = "http://schemas.microsoft.com/windowsazure";
            XElement storageService = responseBody.Element(wa + "StorageService");
            Console.WriteLine(
                "Storage Account Properties for {0}:{1}{2}",
                serviceName, Environment.NewLine, 
                storageService.ToString(SaveOptions.OmitDuplicateNamespaces));
        }
        else
        {
            Console.WriteLine("Call to GetStorageAccountProperties returned an error:");
            Console.WriteLine("Status Code: {0} ({1}):{2}{3}",
                (int)statusCode, statusCode, Environment.NewLine,
                responseBody.ToString(SaveOptions.OmitDuplicateNamespaces));
        }
        return;
    }
}

Mostra:
© 2014 Microsoft