Vytvoření kontejneru

Operace Create Container vytvoří nový kontejner pod zadaným účtem. Pokud kontejner se stejným názvem již existuje, operace selže.

Prostředek kontejneru obsahuje metadata a vlastnosti daného kontejneru. Neobsahuje seznam objektů blob v kontejneru.

Žádost

Můžete vytvořit požadavek, Create Container jak je znázorněno tady. Doporučujeme použít https. Název kontejneru může obsahovat pouze malá písmena a musí dodržovat tato pravidla pojmenování. V adrese URL nahraďte myaccount názvem vašeho účtu úložiště.

Metoda Identifikátor URI žádosti Verze PROTOKOLU HTTP
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container HTTP/1.1

Žádost o službu emulovaného úložiště

Když vytvoříte požadavek na službu emulovaného úložiště, zadejte název hostitele emulátoru a port služby Blob Storage jako 127.0.0.1:10000a název emulovaného účtu úložiště.

Metoda Identifikátor URI žádosti Verze PROTOKOLU HTTP
PUT http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container HTTP/1.1

Další informace najdete v tématu Použití emulátoru Azurite pro místní vývoj služby Azure Storage.

Parametry identifikátoru URI

V identifikátoru URI požadavku můžete zadat následující další parametry.

Parametr Popis
timeout Nepovinný parametr. Parametr timeout je vyjádřen v sekundách. Další informace najdete v tématu Nastavení časových limitů pro operace služby Blob Storage.

Hlavičky požadavku

Požadované a volitelné hlavičky požadavků jsou popsané v následující tabulce:

Hlavička požadavku Popis
Authorization Povinná hodnota. Určuje schéma autorizace, název účtu a podpis. Další informace najdete v tématu Autorizace požadavků do služby Azure Storage.
Date nebo x-ms-date Povinná hodnota. Určuje čas koordinovaného univerzálního času (UTC) požadavku. Další informace najdete v tématu Autorizace požadavků do služby Azure Storage.
x-ms-version Povinné pro všechny autorizované žádosti. Určuje verzi operace, která se má použít pro tento požadavek. Další informace najdete v tématu Správa verzí pro služby Azure Storage.
x-ms-meta-name:value Nepovinný parametr. Pár název-hodnota, který se přidruží ke kontejneru jako metadata. Poznámka: Od verze 2009-09-19 musí názvy metadat splňovat pravidla pojmenování identifikátorů jazyka C#.
x-ms-blob-public-access Nepovinný parametr. Určuje, jestli lze k datům v kontejneru přistupovat veřejně, a úroveň přístupu. Mezi možné hodnoty patří:

- container: Určuje úplný veřejný přístup pro čtení pro data kontejnerů a objektů blob. Klienti můžou vytvořit výčet objektů blob v rámci kontejneru prostřednictvím anonymního požadavku, ale nemůžou vypsat kontejnery v rámci účtu úložiště.
- blob: Určuje veřejný přístup pro čtení pro objekty blob. Data objektů blob v tomto kontejneru je možné číst prostřednictvím anonymního požadavku, ale data kontejneru nejsou k dispozici. Klienti nemůžou vytvořit výčet objektů blob v kontejneru prostřednictvím anonymní žádosti.

Pokud tato hlavička není součástí požadavku, jsou data kontejneru pro vlastníka účtu soukromá.
x-ms-client-request-id Nepovinný parametr. Poskytuje klientem vygenerovanou neprůselnou hodnotu s limitem počtu znaků 1 kibibajt (KiB), který je zaznamenán v protokolech při konfiguraci protokolování. Důrazně doporučujeme použít tuto hlavičku ke korelaci aktivit na straně klienta s požadavky, které server přijímá. Další informace najdete v tématu Monitorování Azure Blob Storage.

Hlavičky požadavků (obory šifrování)

Od verze 2019-02-02 můžete u požadavku zadat následující hlavičky a nastavit výchozí obor šifrování kontejneru. Pokud nastavíte obor šifrování, automaticky se použije k šifrování všech objektů blob, které se nahrají do kontejneru.

Hlavička požadavku Popis
x-ms-default-encryption-scope Povinná hodnota. Obor šifrování, který se má nastavit jako výchozí pro kontejner.
x-ms-deny-encryption-scope-override Povinná hodnota. Hodnoty jsou true nebo false. Nastavením této hlavičky zajistíte true , že každý objekt blob nahraný do tohoto kontejneru bude používat výchozí obor šifrování. Pokud je falsetato hlavička , klient může nahrát objekt blob s jiným než výchozím oborem šifrování.

Text požadavku

Žádné

Ukázkový požadavek

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=  

Odpověď

Odpověď obsahuje stavový kód HTTP a sadu hlaviček odpovědi.

Stavový kód

Úspěšná operace vrátí stavový kód 201 (Vytvořeno).

Informace o stavových kódech najdete v tématu Stavové kódy a kódy chyb.

Hlavičky odpovědi

Odpověď na tuto operaci obsahuje hlavičky popsané v následující tabulce. Odpověď může také obsahovat další standardní hlavičky HTTP. Všechny standardní hlavičky odpovídají specifikaci protokolu HTTP/1.1.

Hlavička odpovědi Description
ETag Značka ETag pro kontejner. Pokud je verze požadavku 2011-08-18 nebo novější, je hodnota ETag uzavřena v uvozovkách.
Last-Modified Vrátí datum a čas poslední změny kontejneru. Formát data se řídí dokumentem RFC 1123. Další informace najdete v tématu Reprezentace hodnot data a času v záhlavích.

Každá operace, která upraví kontejner nebo jeho vlastnosti nebo metadata, aktualizuje čas poslední změny. Operace s objekty blob nemají vliv na čas poslední změny kontejneru.
x-ms-request-id Jedinečně identifikuje požadavek, který byl proveden. Můžete ho použít k řešení potíží s požadavkem. Další informace najdete v tématu Řešení potíží s operacemi rozhraní API.
x-ms-version Označuje verzi služby Blob Storage, která se používá ke spuštění požadavku. Tato hlavička se vrátí pro požadavky provedené ve verzi 2009-09-19 nebo novější.
Date Hodnota data a času UTC vygenerovaná službou, která označuje čas, kdy byla odpověď zahájena.
x-ms-client-request-id Dá se použít k řešení potíží s požadavky a odpovídajícími odpověďmi. Hodnota této hlavičky se rovná hodnotě hlavičky, pokud je v požadavku, a hodnota neobsahuje více než 1024 viditelných x-ms-client-request-id znaků ASCII. Pokud hlavička x-ms-client-request-id v požadavku není, nebude v odpovědi přítomná.

Text odpovědi

Žádné

Ukázková odpověď

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  

Autorizace

Při volání jakékoli operace přístupu k datům ve službě Azure Storage se vyžaduje autorizace. Operaci můžete autorizovat, Create Container jak je popsáno níže.

Azure Storage podporuje autorizaci požadavků na data objektů blob pomocí Microsoft Entra ID. S Microsoft Entra ID můžete pomocí řízení přístupu na základě role v Azure (Azure RBAC) udělit oprávnění k objektu zabezpečení. Objektem zabezpečení může být uživatel, skupina, instanční objekt aplikace nebo spravovaná identita Azure. Objekt zabezpečení je ověřen Microsoft Entra ID, aby vrátil token OAuth 2.0. Token se pak dá použít k autorizaci požadavku na službu Blob Service.

Další informace o autorizaci pomocí Microsoft Entra ID najdete v tématu Autorizace přístupu k objektům blob pomocí Microsoft Entra ID.

Oprávnění

Níže jsou uvedené akce RBAC potřebné k volání operace Microsoft Entra uživatele, skupiny nebo instančního Create Container objektu a předdefinované role Azure RBAC s nejnižšími oprávněními, která zahrnuje tuto akci:

Další informace o přiřazování rolí pomocí Azure RBAC najdete v tématu Přiřazení role Azure pro přístup k datům objektů blob.

Poznámky

Kontejnery se vytvoří okamžitě v rámci účtu úložiště. Není možné vnořit jeden kontejner do jiného.

Volitelně můžete pro svůj účet úložiště vytvořit výchozí nebo kořenový kontejner. Kořenový kontejner umožňuje odkazovat na objekt blob z nejvyšší úrovně hierarchie účtu úložiště bez odkazu na název kontejneru.

Pokud chcete přidat kořenový kontejner do účtu úložiště, vytvořte kontejner s názvem $root. Sestavte požadavek následujícím způsobem:

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=  

Metadata pro kontejner můžete zadat při jeho vytváření tím, že do požadavku zahrnete jednu nebo více hlaviček metadat. Formát hlavičky metadat je x-ms-meta-name:value.

Pokud se kontejner se stejným názvem odstraňuje při Create Container volání, server vrátí stavový kód 409 (konflikt) a poskytne další informace o chybě, které značí, že se kontejner odstraňuje.

Fakturace

Žádosti o ceny můžou pocházet od klientů, kteří používají rozhraní BLOB Storage API, a to buď přímo prostřednictvím rozhraní REST API služby Blob Storage, nebo z klientské knihovny Služby Azure Storage. Tyto požadavky načítají poplatky za transakci. Typ transakce ovlivňuje způsob účtování poplatku za účet. Například transakce čtení se načítají do jiné kategorie fakturace než transakce zápisu. Následující tabulka ukazuje kategorii fakturace pro Create Container žádosti založené na typu účtu úložiště:

Operace Typ účtu úložiště Kategorie fakturace
Vytvoření kontejneru Objekt blob bloku úrovně Premium
Standard pro obecné účely v2
Standard pro obecné účely v1
Operace se seznamem a vytvořením kontejneru

Informace o cenách pro zadanou kategorii fakturace najdete v tématu Azure Blob Storage Ceny.

Viz také

Autorizace žádostí do Služby Azure Storage
Stavové kódy a kódy chyb
Kódy chyb služby Blob Storage
Pojmenování a odkaz na kontejnery, objekty blob a metadata
Nastavení a načtení vlastností a metadat pro prostředky objektů blob
Nastavit seznam ACL kontejneru