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 di seguito. È 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 di servizio di archiviazione emulata

Quando si effettua una richiesta per il servizio di archiviazione emulato, specificare il nome host dell'emulatore e la porta di archiviazione BLOB come 127.0.0.1:10000, seguito 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 i 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 è possibile accedere pubblicamente ai dati nel contenitore e al 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 una 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 al momento della configurazione della registrazione. È consigliabile usare questa intestazione per correlare le attività lato client alle 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 predefinito nel contenitore.
x-ms-deny-encryption-scope-override Obbligatorio. I valori sono true o false. L'impostazione di questa intestazione su true garantisce 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 viene 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 i problemi della richiesta. Per altre informazioni, vedere Risolvere i problemi relativi alle operazioni 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 i problemi relativi alle richieste e alle 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 non è presente nella richiesta, l'intestazione x-ms-client-request-id 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 qualsiasi operazione di accesso ai dati in Archiviazione di Azure. È possibile autorizzare l'operazione Create Container come descritto di seguito.

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 usando Microsoft Entra ID, vedere Autorizzare l'accesso ai BLOB usando Microsoft Entra ID.

Autorizzazioni

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

Per altre informazioni sull'assegnazione dei ruoli tramite 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 quando lo si sta creando 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 di errore aggiuntive che indicano che il contenitore viene eliminato.

Fatturazione

Le richieste di prezzi possono derivare dai client che usano le API di archiviazione BLOB, direttamente tramite l'API REST dell'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. Nella tabella seguente viene illustrata 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 di blocchi Premium
Utilizzo generico v2 Standard
Utilizzo generico standard v1
Elencare e creare operazioni 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 dell'archiviazione BLOB
Contenitori di nome e riferimento, BLOB e metadati
Impostare e recuperare proprietà e metadati per le risorse BLOB
Set Container ACL