Esporta (0) Stampa
Espandi tutto

Controllo delle versioni per i servizi di archiviazione di Azure

Aggiornamento: maggio 2014

I servizi di archiviazione di Microsoft Azure supportano diverse versioni. Per effettuare una richiesta nei servizi di archiviazione, è pertanto necessario specificare la versione che si desidera utilizzare per l'operazione, a meno che la richiesta non sia anonima.

La versione corrente dei servizi di archiviazione di Azure è la 2014-02-14 e, quando possibile, è consigliabile utilizzare tale versione. Per un elenco di tutte le altre versioni supportate e per informazioni sull'utilizzo di ciascuna, vedere Azure Storage Services Versions 2013-08-15 and Earlier.

La versione 2014-02-14 prevede le modifiche seguenti:

  • Con il nuovo servizio file di Microsoft Azure, le macchine virtuali (VM) in esecuzione in un data center di Microsoft Azure possono montare un file system condiviso utilizzando il protocollo SMB e accedere al file system mediante API file di Windows standard. Più macchine virtuali, o ruoli in esecuzione in un servizio cloud, possono collegarsi contemporaneamente a tali file system, consentendo di condividere in modo facile i dati persistenti tra istanze e ruoli diversi. L'API REST del servizio file è simile all'API del servizio Blob e offre un modo per accedere ai file alternativo alle API file di Windows. Per altre informazioni, vedere File Service REST API.

  • Le firme di accesso condiviso ora supportano il parametro api-version, oltre al parametro SignedVersion (sv). Questi parametri conferiscono il controllo sulla versione dei servizi di archiviazione utilizzata per autenticare e autorizzare una richiesta e sulla versione utilizzata per eseguire l'operazione API. Vedere più avanti la sezione Richieste autenticate con una firma di accesso condiviso.

La modalità con cui si specifica la versione dei servizi di archiviazione da utilizzare per una richiesta dipende dal modo in cui la richiesta viene autenticata. Nelle sezioni riportate di seguito vengono illustrate le opzioni di autenticazione e la modalità per specificare la versione del servizio per ognuna di esse:

  1. Richieste con Chiave condivisa o Chiave condivisa versione Lite. Per autenticare una richiesta con Chiave condivisa o Chiave condivisa versione Lite, è necessario passare l'intestazione x-ms-version nella richiesta. Nel caso del servizio Blob, è possibile specificare la versione predefinita per tutte le richieste chiamando Set Blob Service Properties.

  2. Richieste con una firma di accesso condiviso È possibile specificare due opzioni di controllo delle versioni per una firma di accesso condiviso. Se specificata, l'intestazione api-version facoltativa indica quale versione del servizio utilizzare per eseguire l'operazione API. Il parametro SignedVersion (sv) specifica la versione del servizio da utilizzare per autorizzare e autenticare la richiesta effettuata con la firma di accesso condiviso. Se l'intestazione api-version non viene specificata, anche il valore del parametro SignedVersion (sv) indica la versione da utilizzare per eseguire l'operazione API.

  3. Richieste con accesso anonimo. In caso di accesso anonimo al servizio Blob, non viene passata alcuna versione. L'euristica relativa alla versione utilizzata per la richiesta è illustrata di seguito.

Per autenticare una richiesta con Chiave condivisa o Chiave condivisa versione Lite, specificare l'intestazione x-ms-version nella richiesta. Il valore dell'intestazione della richiesta x-ms-version deve essere specificato nel formato AAAA-MM-GG. Esempio:

Request Headers:
x-ms-version: 2014-02-14

Le seguenti regole indicano le modalità con cui vengono valutate le richieste quando si utilizza Chiave condivisa o Chiave condivisa versione Lite per determinare la versione da utilizzare durante l'elaborazione della richiesta.

  • Se una richiesta presenta un'intestazione x-ms-version valida, il servizio di archiviazione utilizza la versione specificata. Tutte le richieste ai servizi tabelle e di accodamento che non utilizzano una firma di accesso condiviso devono specificare un'intestazione x-ms-version. Tutte le richieste dirette al servizio Blob che non utilizzano una firma di accesso condiviso devono specificare un'intestazione x-ms-version, a meno che non sia stata impostata la versione predefinita, come illustrato di seguito.

  • Se una richiesta al servizio Blob non presenta un'intestazione x-ms-version, ma il proprietario dell'account ha impostato una versione predefinita utilizzando Set Blob Service Properties, come versione per la richiesta viene utilizzata la versione predefinita specificata.

Una firma di accesso condiviso generata utilizzando la versione 2014-02-14 supporta due opzioni di controllo delle versioni:

  • Il parametro di query api-version definisce la versione del protocollo REST da utilizzare per l'elaborazione di una richiesta effettuata mediante la firma di accesso condiviso.

  • Il parametro di query SignedVersion (sv) definisce la versione della firma di accesso condiviso da utilizzare per l'autenticazione e l'autorizzazione.

Il parametro di query SignedVersion viene utilizzato per l'autenticazione e l'autorizzazione quando un client effettua una richiesta mediante la firma di accesso condiviso. I parametri di autenticazione e autorizzazione come si, sr, sp, sig, st, se, tn, spk, srk, epk ed erk vengono tutti interpretati utilizzando la versione 2014-02-14.

I parametri del protocollo REST, quali rscc, rscd, rsce, rscl e rsct, vengono applicati utilizzando la versione fornita nell'intestazione del parametro api-version. Se l'intestazione api-version non viene specificata, viene utilizzata la versione del servizio fornita per SignedVersion.

Si noti che il parametro api-version non fa parte dell'elemento StringToSign nell'autenticazione, come illustrato in Creazione dell'URI di una firma di accesso condiviso.

La tabella riportata di seguito illustra lo schema di controllo delle versioni utilizzato dal servizio per l'autenticazione e l'autorizzazione e per la chiamata del protocollo REST quando il parametro SignedVersion è impostato sulla versione 2014-02-14 o successive.

 

Valore del parametro api-version Versione utilizzata per l'autenticazione e l'autorizzazione Versione utilizzata per il comportamento del protocollo

Non specificato

Versione specificata nel parametro sv

Versione specificata nel parametro sv

Qualsiasi versione valida dei servizi di archiviazione nel formato XXXX-XX-XX

Versione specificata nel parametro sv

Versione valida dei servizi di archiviazione XXXX-XX-XX

Esempio 1

La seguente richiesta di esempio chiama List Blobs con sv=2014-02-14 e senza il parametro api-version.

https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list&sv=2014-02-14&si=readpolicy&sig=a39 %2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d

In questo caso, il servizio autentica e autorizza la richiesta utilizzando la versione 2014-02-14 ed esegue anche l'operazione utilizzando la versione 2014-02-14.

Esempio 2

La seguente richiesta di esempio chiama List Blobs con sv=2014-02-14 e con il parametro api-version.

https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list&sv=2014-02-14&si=readpolicy&sig=a39 %2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d&api-version=2012-02-12

In questo caso, il servizio autentica e autorizza la richiesta utilizzando la versione 2014-02-14 ed esegue l'operazione utilizzando la versione 2012-02-12.

noteNota
La libreria client di archiviazione .NET imposterà sempre la versione del protocollo REST (nel parametro api-version) sulla versione su cui si basa.

Se una richiesta al servizio Blob non specifica l'intestazione x-ms-version e la versione predefinita per il servizio non è stata impostata mediante Set Blob Service Properties, per elaborare la richiesta viene utilizzata la versione meno recente del servizio Blob. Se però il contenitore è stato reso pubblico con un'operazione Set Container ACL eseguita utilizzando la versione 2009-09-19 o una versione più recente, la richiesta viene elaborata utilizzando la versione 2009-09-19.

Vedere anche

Mostra:
© 2014 Microsoft