Create Container

Tramite l'operazione Create Container viene creato un nuovo contenitore con l'account specificato. Se un contenitore con lo stesso nome esiste già, l'operazione ha esito negativo.

Nella risorsa contenitore sono inclusi i metadati e le proprietà per quel contenitore. Non include un elenco dei BLOB nel contenitore.

Richiesta

È possibile costruire la Create Container richiesta come illustrato qui. È consigliabile usare HTTPS. Il nome del contenitore può includere solo caratteri minuscoli e deve seguire queste regole di denominazione. Nell'URL sostituire myaccount con il nome dell'account di archiviazione.

Metodo URI richiesta Versione HTTP
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container HTTP/1.1

Richiesta del servizio di archiviazione emulata

Quando si effettua una richiesta con il servizio di archiviazione emulato, specificare il nome host dell'emulatore e la porta di archiviazione BLOB come 127.0.0.1:10000, seguita dal nome dell'account di archiviazione emulato.

Metodo URI richiesta Versione HTTP
PUT http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container HTTP/1.1

Per altre informazioni, vedere Usare l'emulatore Azurite per lo sviluppo locale di Archiviazione di Azure.

Parametri URI

È possibile specificare i parametri aggiuntivi seguenti nell'URI della richiesta.

Parametro Descrizione
timeout Facoltativa. Il parametro timeout viene espresso in secondi. Per altre informazioni, vedere Impostare timeout per le operazioni di archiviazione BLOB.

Intestazioni della richiesta

Le intestazioni di richiesta obbligatorie e facoltative sono descritte nella tabella seguente:

Intestazione della richiesta Descrizione
Authorization Obbligatorio. Specifica lo schema di autorizzazione, il nome dell'account e la firma. Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure.
Date o x-ms-date Obbligatorio. Specifica l'ora UTC (Coordinated Universal Time) per la richiesta. Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure.
x-ms-version Obbligatorio per tutte le richieste autorizzate. Specifica la versione dell'operazione da usare per questa richiesta. Per altre informazioni, vedere Controllo delle versioni per i servizi di archiviazione di Azure.
x-ms-meta-name:value facoltativo. Coppia nome-valore da associare al contenitore come metadati. Nota: a partire dalla versione 2009-09-19, i nomi dei metadati devono rispettare le regole di denominazione per gli identificatori C#.
x-ms-blob-public-access facoltativo. Specifica se i dati nel contenitore possono essere accessibili pubblicamente e il livello di accesso. I valori possibili sono:

- container: specifica l'accesso in lettura pubblico completo per i dati del contenitore e del BLOB. I client possono enumerare i BLOB all'interno del contenitore tramite richiesta anonima, ma non possono enumerare i contenitori all'interno dell'account di archiviazione.
- blob: Specifica l'accesso in lettura pubblico per i BLOB. I dati BLOB all'interno di questo contenitore possono essere letti tramite richiesta anonima, ma i dati del contenitore non sono disponibili. I client non possono enumerare i BLOB all'interno del contenitore tramite una richiesta anonima.

Se questa intestazione non è inclusa nella richiesta, i dati del contenitore sono privati per il proprietario dell'account.
x-ms-client-request-id facoltativo. Fornisce un valore opaco generato dal client con un limite di caratteri di 1 kibibyte (KiB) registrato nei log quando la registrazione è configurata. È consigliabile usare questa intestazione per correlare le attività lato client con le richieste ricevute dal server. Per altre informazioni, vedere Monitorare Archiviazione BLOB di Azure.

Intestazioni di richiesta (ambiti di crittografia)

A partire dalla versione 2019-02-02, è possibile specificare le intestazioni seguenti in una richiesta per impostare un ambito di crittografia predefinito in un contenitore. Se si imposta un ambito di crittografia, viene usato automaticamente per crittografare tutti i BLOB caricati nel contenitore.

Intestazione della richiesta Descrizione
x-ms-default-encryption-scope Obbligatorio. Ambito di crittografia da impostare come impostazione predefinita nel contenitore.
x-ms-deny-encryption-scope-override Obbligatorio. I valori sono true o false. L'impostazione di questa intestazione consente di true garantire che ogni BLOB caricato in questo contenitore usi l'ambito di crittografia predefinito. Quando questa intestazione è false, un client può caricare un BLOB con un ambito di crittografia diverso dall'ambito predefinito.

Testo della richiesta

Nessuno.

Richiesta di esempio

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container HTTP/1.1  
  
Request Headers:  
x-ms-version: 2011-08-18  
x-ms-date: Sun, 25 Sep 2011 22:50:32 GMT  
x-ms-meta-Name: StorageSample  
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=  

Risposta

Nella risposta sono inclusi un codice di stato HTTP e un set di intestazioni per la risposta.

Codice stato

Un'operazione completata correttamente restituisce il codice di stato 201 (Creato).

Per informazioni sui codici di stato, vedere Codici di stato e di errore.

Intestazioni di risposta

La risposta per questa operazione include le intestazioni descritte nella tabella seguente. Nella risposta possono anche essere incluse intestazioni HTTP standard aggiuntive. Tutte le intestazioni standard sono conformi alla specifica del protocollo HTTP/1.1.

Intestazione risposta Descrizione
ETag Valore ETag per il contenitore. Se la versione della richiesta è 2011-08-18 o successiva, il valore ETag è racchiuso tra virgolette.
Last-Modified Restituisce la data e l'ora dell'ultima modifica del contenitore. Il formato data è conforme a RFC 1123. Per altre informazioni, vedere Rappresentazione dei valori di data/ora nelle intestazioni.

Qualsiasi operazione che comporta modifiche al contenitore o alle relative proprietà o metadati comporta l'aggiornamento dell'ora dell'ultima modifica. Le operazioni sui BLOB non influiscono sull'ora dell'ultima modifica del contenitore.
x-ms-request-id Identifica in modo univoco la richiesta effettuata. È possibile usarlo per risolvere la risoluzione dei problemi della richiesta. Per altre informazioni, vedere Risolvere i problemi relativi alle operazioni dell'API
x-ms-version Indica la versione di archiviazione BLOB usata per eseguire la richiesta. Questa intestazione viene restituita per le richieste effettuate rispetto alla versione 2009-09-19 o successiva.
Date Valore di data/ora UTC generato dal servizio, che indica l'ora in cui è stata avviata la risposta.
x-ms-client-request-id Può essere usato per risolvere le richieste e le risposte corrispondenti. Il valore di questa intestazione è uguale al valore dell'intestazione x-ms-client-request-id se presente nella richiesta e il valore non contiene più di 1024 caratteri ASCII visibili. Se l'intestazione x-ms-client-request-id non è presente nella richiesta, l'intestazione non sarà presente nella risposta.

Corpo della risposta

Nessuno.

Risposta di esempio

Response status:  
HTTP/1.1 201 Created  
  
Response headers:  
Transfer-Encoding: chunked  
Date: Sun, 25 Sep 2011 23:00:12 GMT  
ETag: “0x8CB14C3E29B7E82”  
Last-Modified: Sun, 25 Sep 2011 23:00:06 GMT  
x-ms-version: 2011-08-18  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  

Autorizzazione

L'autorizzazione è necessaria quando si chiama un'operazione di accesso ai dati in Archiviazione di Azure. È possibile autorizzare l'operazione Create Container come descritto di seguito.

Importante

Microsoft consiglia di usare Microsoft Entra ID con identità gestite per autorizzare le richieste ad Archiviazione di Azure. Microsoft Entra ID offre maggiore sicurezza e facilità d'uso rispetto all'autorizzazione con chiave condivisa.

Archiviazione di Azure supporta l'uso di Microsoft Entra ID per autorizzare le richieste ai dati BLOB. Con Microsoft Entra ID è possibile usare il controllo degli accessi in base al ruolo di Azure per concedere le autorizzazioni a un'entità di sicurezza. L'entità di sicurezza può essere un utente, un gruppo, un'entità servizio applicazione o un'identità gestita di Azure. L'entità di sicurezza viene autenticata da Microsoft Entra ID per restituire un token OAuth 2.0. Il token può quindi essere usato per autorizzare una richiesta relativa al servizio BLOB.

Per altre informazioni sull'autorizzazione tramite Microsoft Entra ID, vedere Autorizzare l'accesso ai BLOB usando Microsoft Entra ID.

Autorizzazioni

Di seguito è riportata l'azione di controllo degli accessi in base al ruolo necessaria per un Microsoft Entra utente, un gruppo, un gruppo, un'identità gestita o un'entità servizio per chiamare l'operazione Create Container e il ruolo controllo degli accessi in base al ruolo di Azure con privilegi minimi che include questa azione:

Per altre informazioni sull'assegnazione dei ruoli tramite il controllo degli accessi in base al ruolo di Azure, vedere Assegnare un ruolo di Azure per l'accesso ai dati BLOB.

Commenti

I contenitori vengono creati immediatamente all'interno dell'account di archiviazione. Non è possibile annidare un contenitore all'interno di un altro.

Se lo si desidera, è possibile creare un contenitore radice o predefinito per l'account di archiviazione. Il contenitore radice consente di fare riferimento a un BLOB dal livello principale della gerarchia dell'account di archiviazione, senza fare riferimento al nome del contenitore.

Per aggiungere il contenitore radice all'account di archiviazione, creare un contenitore denominato $root. Creare la richiesta nel modo seguente:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/$root?restype=container HTTP/1.1  
  
Request Headers:  
x-ms-version: 2011-08-18  
x-ms-date: Sun, 25 Sep 2011 22:50:32 GMT  
x-ms-meta-Name: StorageSample  
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=  

È possibile specificare i metadati per un contenitore durante la creazione includendo una o più intestazioni di metadati nella richiesta. Il formato per l'intestazione di metadati è x-ms-meta-name:value.

Se un contenitore con lo stesso nome viene eliminato quando Create Container viene chiamato, il server restituisce il codice di stato 409 (Conflitto) e fornisce informazioni aggiuntive sull'errore che indicano che il contenitore viene eliminato.

Fatturazione

Le richieste di determinazione dei prezzi possono provenire dai client che usano le API di archiviazione BLOB, direttamente tramite l'API REST di Archiviazione BLOB o da una libreria client di Archiviazione di Azure. Queste richieste accumulano addebiti per transazione. Il tipo di transazione influisce sul modo in cui viene addebitato l'account. Ad esempio, le transazioni di lettura si accumulano in una categoria di fatturazione diversa rispetto alle transazioni di scrittura. La tabella seguente illustra la categoria di fatturazione per Create Container le richieste in base al tipo di account di archiviazione:

Operazione Tipo di account di archiviazione Categoria di fatturazione
Create Container BLOB in blocchi Premium
Utilizzo generico v2 Standard
Standard per utilizzo generico v1
Elencare e Create operazioni del contenitore

Per informazioni sui prezzi per la categoria di fatturazione specificata, vedere prezzi Archiviazione BLOB di Azure.

Vedi anche

Autorizzare le richieste ad Archiviazione di Azure
Stato e codici errore
Codici di errore di Archiviazione BLOB
Nomi e riferimenti a contenitori, BLOB e metadati
Impostare e recuperare proprietà e metadati per le risorse BLOB
Set Container ACL