Vytvoření kontejneru

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

Prostředek kontejneru obsahuje metadata a vlastnosti pro daný kontejner. Neobsahuje seznam objektů blob v kontejneru.

Žádost

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

Metoda Požadavek na URI Verze protokolu HTTP
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container Protokol HTTP/1.1

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

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

Metoda Požadavek na URI Verze protokolu HTTP
PUT http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container Protokol HTTP/1.1

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

Parametry identifikátoru URI

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

Parameter Description
timeout Optional. 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 žádosti

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

Hlavička požadavku Description
Authorization Povinné. Určuje schéma autorizace, název účtu a podpis. Další informace najdete v tématu Autorizace požadavků na Azure Storage.
Date nebo x-ms-date Povinné. Určuje koordinovaný světový čas (UTC) pro požadavek. Další informace najdete v tématu Autorizace požadavků na Azure Storage.
x-ms-version Vyžadováno pro všechny autorizované požadavky. Určuje verzi operace, která má být použita pro tento požadavek. Další informace najdete v tématu Správa verzí pro služby Azure Storage.
x-ms-meta-name:value Optional. 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 Optional. Určuje, zda lze k datům v kontejneru přistupovat veřejně a jaká je úroveň přístupu. Mezi možné hodnoty patří:

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

Pokud tato hlavička není součástí požadavku, data kontejneru jsou soukromá pro vlastníka účtu.
x-ms-client-request-id Optional. Poskytuje klientem generovanou, neprůhlednou hodnotu s limitem znaků 1 kibibajt (KiB), který se zaznamenává do protokolů 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í služby Azure Blob Storage.

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

Od verze 2019-02-02 můžete v požadavku zadat následující hlavičky pro nastavení výchozího oboru šifrování v 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 Description
x-ms-default-encryption-scope Povinné. Rozsah šifrování, který se má nastavit jako výchozí v kontejneru.
x-ms-deny-encryption-scope-override Povinné. 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í.

Důležité

Pokud je x-ms-deny-encryption-scope-override kontejner nastavený na true, aktualizace objektů blob, které nemají rozsah šifrování nebo šifrovací klíče poskytnuté zákazníkem, nejsou v rámci tohoto kontejneru povoleny. Tyto objekty blob zůstávají čitelné a uživatelé mohou přesunout objekty blob z kontejneru do kontejneru bez zásad přepsání rozsahu šifrování, aby mohli provádět aktualizace.

Obsah 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=  

Odezva

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 naleznete v části Stavové kódy a kódy chyb.

Hlavičky odpovědi

Odpověď na tuto operaci obsahuje hlavičky, které jsou popsány v následující tabulce. Odpověď může obsahovat i 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ší, hodnota ETag je uzavřena v uvozovkách.
Last-Modified Vrátí datum a čas, kdy byl kontejner naposledy změněn. Formát data se řídí dokumentem RFC 1123. Další informace naleznete v tématu Reprezentace hodnot data a času v záhlavích.

Jakákoli operace, která mění 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 Jednoznačně identifikuje zadaný požadavek. Můžete jej použít k řešení potíží s požadavkem. Další informace naleznete 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 vrací pro požadavky odeslané proti 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 Lze použít k řešení problémů s požadavky a odpovídajícími odpověďmi. Hodnota této hlavičky se rovná hodnotě hlavičky x-ms-client-request-id , pokud je obsažena v požadavku, a hodnota neobsahuje více než 1024 viditelných znaků ASCII. Pokud hlavička x-ms-client-request-id v požadavku není, hlavička nebude v odpovědi k dispozici.

Obsah 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  

Authorization

Autorizace se vyžaduje při volání jakékoli operace přístupu k datům ve službě Azure Storage. Operaci můžete autorizovat Create Container níže popsaným způsobem.

Důležité

Microsoft doporučuje používat Microsoft Entra ID se spravovanými identitami k autorizaci požadavků na Azure Storage. Microsoft Entra ID poskytuje vynikající zabezpečení a snadné použití ve srovnání s autorizací sdíleného klíče.

Azure Storage podporuje použití Microsoft Entra ID k autorizaci přístupů k datům objektů blob. S Microsoft Entra ID můžete pomocí řízení přístupu na základě role v Azure (Azure RBAC) udělit oprávnění objektu zabezpečení. Zaregistrovaným objektem zabezpečení může být uživatel, skupina, instanční objekt aplikace nebo spravovaná identita Azure. Instanční objekt zabezpečení je ověřený pomocí ID Microsoft Entra pro vrácení tokenu OAuth 2.0. Token se pak dá použít k autorizaci požadavku ve službě 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.

Povolení

Níže jsou uvedeny akce RBAC potřebné k tomu, aby uživatel, skupina, spravovaná identita nebo instanční objekt Microsoft Entra mohl operaci volat Create Container , a předdefinovaná role Azure RBAC s nejnižšími oprávněními, která tuto akci zahrnuje:

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 vytvářejí okamžitě v rámci účtu úložiště. Není možné vnořit jednu nádobu do druhé.

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 odkazování na název kontejneru.

Chcete-li přidat kořenový kontejner do svého účtu úložiště, vytvořte kontejner s názvem $root. Vytvořte 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í tak, že do požadavku zahrnete jednu nebo více hlaviček metadat. Formát hlavičky metadat je x-ms-meta-name:value.

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

Fakturování

Požadavky na stanovení cen mohou pocházet od klientů, kteří používají rozhraní API služby Blob Storage, a to buď přímo prostřednictvím rozhraní REST API služby Blob Storage, nebo z klientské knihovny Azure Storage. Za tyto žádosti se účtují poplatky za transakci. Typ transakce má vliv na způsob účtování poplatků. Například transakce čtení narůstají do jiné fakturační kategorie než transakce zápisu. Následující tabulka uvádí kategorii fakturace pro Create Container požadavky na základě typu účtu úložiště:

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

Další informace o cenách pro zadanou kategorii fakturace najdete v tématu Ceny služby Azure Blob Storage.

Viz také

Autorizace požadavků na Azure Storage
Kódy stavu a 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
Nastavení seznamu ACL kontejneru