Skapa container
Åtgärden Create Container
skapar en ny container under det angivna kontot. Om containern med samma namn redan finns misslyckas åtgärden.
Containerresursen innehåller metadata och egenskaper för containern. Den innehåller inte någon lista över blobarna i containern.
Förfrågan
Du kan skapa begäran enligt Create Container
nedan. Vi rekommenderar att du använder HTTPS. Namnet på containern kan bara innehålla gemener och måste följa dessa namngivningsregler. I URL:en ersätter du myaccount med namnet på ditt lagringskonto.
Metod | URI för förfrågan | HTTP-version |
---|---|---|
PUT |
https://myaccount.blob.core.windows.net/mycontainer?restype=container |
HTTP/1.1 |
Emulerad lagringstjänstbegäran
När du gör en begäran mot den emulerade lagringstjänsten anger du emulatorns värdnamn och Blob Storage-port som 127.0.0.1:10000
följt av namnet på det emulerade lagringskontot.
Metod | URI för förfrågan | HTTP-version |
---|---|---|
PUT |
http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container |
HTTP/1.1 |
Mer information finns i Använda Azurite-emulatorn för lokal Azure Storage-utveckling.
URI-parametrar
Du kan ange följande ytterligare parametrar för begärande-URI:n.
Parameter | Beskrivning |
---|---|
timeout |
Valfritt. Parametern timeout uttrycks i sekunder. Mer information finns i Ange tidsgränser för Blob Storage-åtgärder. |
Begärandehuvuden
De obligatoriska och valfria begärandehuvudena beskrivs i följande tabell:
Begärandehuvud | Beskrivning |
---|---|
Authorization |
Krävs. Anger auktoriseringsschema, kontonamn och signatur. Mer information finns i Auktorisera begäranden till Azure Storage. |
Date eller x-ms-date |
Krävs. Anger UTC-tid (Coordinated Universal Time) för begäran. Mer information finns i Auktorisera begäranden till Azure Storage. |
x-ms-version |
Krävs för alla auktoriserade begäranden. Anger vilken version av åtgärden som ska användas för den här begäran. Mer information finns i Versionshantering för Azure Storage-tjänsterna. |
x-ms-meta-name:value |
Valfritt. Ett namn/värde-par som ska associeras med containern som metadata. Obs! Från och med version 2009-09-19 måste metadatanamn följa namngivningsreglerna för C#-identifierare. |
x-ms-blob-public-access |
Valfritt. Anger om data i containern kan nås offentligt och åtkomstnivån. Möjliga värden är: - container : Anger fullständig offentlig läsåtkomst för container- och blobdata. Klienter kan räkna upp blobar i containern via anonym begäran, men de kan inte räkna upp containrar i lagringskontot.- blob: Anger offentlig läsåtkomst för blobar. Blobdata i den här containern kan läsas via anonym begäran, men containerdata är inte tillgängliga. Klienter kan inte räkna upp blobar i containern via anonym begäran.Om det här huvudet inte ingår i begäran är containerdata privata för kontoägaren. |
x-ms-client-request-id |
Valfritt. Tillhandahåller ett klientgenererat, täckande värde med en teckengräns på 1 kibibyte (KiB) som registreras i loggarna när loggning har konfigurerats. Vi rekommenderar starkt att du använder det här huvudet för att korrelera aktiviteter på klientsidan med begäranden som servern tar emot. Mer information finns i Övervaka Azure Blob Storage. |
Begärandehuvuden (krypteringsomfång)
Från och med version 2019-02-02 kan du ange följande rubriker på en begäran för att ange ett standardkrypteringsomfång för en container. Om du anger ett krypteringsomfång används det automatiskt för att kryptera alla blobar som laddas upp till containern.
Begärandehuvud | Beskrivning |
---|---|
x-ms-default-encryption-scope |
Krävs. Krypteringsomfånget som ska anges som standard för containern. |
x-ms-deny-encryption-scope-override |
Krävs. Värdena är true eller false . Om du anger det här huvudet till ser du till true att alla blobar som laddas upp till den här containern använder standardkrypteringsomfånget. När det här huvudet är false kan en klient ladda upp en blob med ett annat krypteringsomfång än standardomfånget. |
Begärandetext
Inga.
Exempelbegäran
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=
Svarsåtgärder
Svaret innehåller en HTTP-statuskod och en uppsättning svarshuvuden.
Statuskod
En lyckad åtgärd returnerar statuskoden 201 (skapad).
Information om statuskoder finns i Status och felkoder.
Svarshuvuden
Svaret för den här åtgärden innehåller rubrikerna som beskrivs i följande tabell. Svaret kan även innehålla ytterligare HTTP-standardhuvuden. Alla standardhuvuden överensstämmer med http/1.1-protokollspecifikationen.
Svarsrubrik | Description |
---|---|
ETag |
ETag för containern. Om begärandeversionen är 2011-08-18 eller senare omges ETag-värdet av citattecken. |
Last-Modified |
Returnerar datum och tid då containern senast ändrades. Datumformatet följer RFC 1123. Mer information finns i Representation of date/time values in headers (Representation av datum-/tidsvärden i rubriker). Alla åtgärder som ändrar containern eller dess egenskaper eller metadata uppdaterar den senaste ändringstiden. Åtgärder på blobar påverkar inte den senaste ändringstiden för containern. |
x-ms-request-id |
Identifierar begäran som gjordes unikt. Du kan använda den för att felsöka begäran. Mer information finns i Felsöka API-åtgärder |
x-ms-version |
Anger den Blob Storage-version som används för att köra begäran. Det här huvudet returneras för begäranden som görs mot version 2009-09-19 eller senare. |
Date |
Datum-/tidsvärdet UTC som genereras av tjänsten, vilket anger den tid då svaret initierades. |
x-ms-client-request-id |
Kan användas för att felsöka begäranden och motsvarande svar. Värdet för det här huvudet är lika med värdet x-ms-client-request-id för huvudet om det finns i begäran och värdet inte innehåller fler än 1 024 synliga ASCII-tecken.
x-ms-client-request-id Om rubriken inte finns i begäran visas inte huvudet i svaret. |
Själva svaret
Inga.
Exempelsvar
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
Auktorisering
Auktorisering krävs när du anropar en dataåtkomståtgärd i Azure Storage. Du kan auktorisera åtgärden enligt beskrivningen Create Container
nedan.
Viktigt
Microsoft rekommenderar att du använder Microsoft Entra ID med hanterade identiteter för att auktorisera begäranden till Azure Storage. Microsoft Entra ID ger överlägsen säkerhet och användarvänlighet jämfört med auktorisering av delad nyckel.
Azure Storage stöder användning av Microsoft Entra ID för att auktorisera begäranden till blobdata. Med Microsoft Entra ID kan du använda rollbaserad åtkomstkontroll i Azure (Azure RBAC) för att bevilja behörigheter till ett säkerhetsobjekt. Säkerhetsobjektet kan vara en användare, grupp, programtjänstens huvudnamn eller en hanterad Azure-identitet. Säkerhetsobjektet autentiseras av Microsoft Entra ID för att returnera en OAuth 2.0-token. Token kan sedan användas för att auktorisera en begäran mot Blob-tjänsten.
Mer information om auktorisering med Microsoft Entra ID finns i Auktorisera åtkomst till blobar med Microsoft Entra ID.
Behörigheter
Nedan visas den RBAC-åtgärd som krävs för att en Microsoft Entra användare, grupp, hanterad identitet eller tjänstens huvudnamn ska anropa Create Container
åtgärden och den minst privilegierade inbyggda Azure RBAC-rollen som inkluderar den här åtgärden:
- Azure RBAC-åtgärd:Microsoft.Storage/storageAccounts/blobServices/containers/write
- Minst privilegierad inbyggd roll:Storage Blob Data-deltagare
Mer information om hur du tilldelar roller med Azure RBAC finns i Tilldela en Azure-roll för åtkomst till blobdata.
Kommentarer
Containrar skapas omedelbart i lagringskontot. Det går inte att kapsla en container i en annan.
Du kan också skapa en standard- eller rotcontainer för ditt lagringskonto. Rotcontainern gör det möjligt att referera till en blob från den översta nivån i lagringskontohierarkin, utan att referera till containernamnet.
Om du vill lägga till rotcontainern i lagringskontot skapar du en container med namnet $root
. Skapa begäran enligt följande:
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=
Du kan ange metadata för en container när du skapar den genom att inkludera en eller flera metadatahuvuden i begäran. Formatet för metadatahuvudet är x-ms-meta-name:value
.
Om en container med samma namn tas bort när Create Container
anropas returnerar servern statuskoden 409 (konflikt) och den innehåller ytterligare felinformation som anger att containern tas bort.
Fakturering
Prisbegäranden kan komma från klienter som använder Blob Storage-API:er, antingen direkt via REST-API:et för Blob Storage eller från ett Azure Storage-klientbibliotek. Dessa begäranden ackumulerar avgifter per transaktion. Typen av transaktion påverkar hur kontot debiteras. Lästransaktioner till exempel tillfaller en annan faktureringskategori än skrivtransaktioner. I följande tabell visas faktureringskategorin för Create Container
begäranden baserat på lagringskontotypen:
Åtgärd | Typ av lagringskonto | Faktureringskategori |
---|---|---|
Skapa container | Premium-blockblob Standard generell användning v2 Standard generell användning v1 |
Lista och Skapa containeråtgärder |
Mer information om priser för den angivna faktureringskategorin finns i Azure Blob Storage Prissättning.
Se även
Auktorisera begäranden till Azure Storage
Status- och felkoder
Felkoder för Blob Storage
Namn och referenscontainrar, blobar och metadata
Ange och hämta egenskaper och metadata för blobresurser
Ange container-ACL