Namnge och referera till containrar, blobar och metadata
I det här avsnittet beskrivs namngivning och hänvisning till containrar, blobar, metadata och ögonblicksbilder. Ett lagringskonto kan innehålla noll eller fler containrar. En container innehåller egenskaper, metadata och noll eller fler blobar. Om ditt konto har ett hierarkiskt namnområde kan en container också innehålla noll eller fler kataloger och dessa kataloger kan innehålla noll eller fler blobar. En blob är en enskild entitet som består av binära data, egenskaper och metadata.
Resursnamn
URI:n för att referera till en container eller en blob måste vara unik. Eftersom varje kontonamn är unikt kan två konton ha containrar med samma namn. Inom ett visst lagringskonto måste dock varje container ha ett unikt namn. Varje blob i en viss container måste också ha ett unikt namn i containern.
Om du försöker skapa en container eller blob med ett namn som bryter mot namngivningsreglerna misslyckas begäran med statuskod 400 (felaktig begäran).
Blob- och containernamn skickas till Blob-tjänsten i en URL. Vissa tecken måste vara procentkodade för att visas i en URL med UTF-8 (föredraget) eller MBCS. Den här kodningen sker automatiskt när du använder Azure Storage-klientbiblioteken. Det finns dock vissa tecken som inte är giltiga i URL-sökvägar även när de kodas. Om dessa tecken visas i blob- eller containernamn kan begäran misslyckas. En lista över dessa tecken finns i Unicode-tecken som inte rekommenderas för användning i container- eller blobnamn.
Kodpunkter som \uE000, även om de är giltiga i NTFS-filnamn, är inte giltiga Unicode-tecken, så de kan inte användas. Dessutom är vissa ASCII- eller Unicode-tecken, till exempel kontrolltecken (0x00 till 0x1F, \u0081osv.), inte heller tillåtna.
Ytterligare regler för Unicode-strängar i HTTP/1.1 finns i RFC 2616, avsnitt 2.2: Grundläggande regler och RFC 3987.
Containernamn
Ett containernamn måste vara ett giltigt DNS-namn som följer följande namngivningsregler:
Containernamn måste börja eller sluta med en bokstav eller siffra och får endast innehålla bokstäver, siffror och bindestreck/minustecken (-).
Varje bindestreck/minustecken (-) måste omedelbart föregås och följas av en bokstav eller siffra. på varandra följande bindestreck tillåts inte i containernamn.
Alla bokstäver i ett containernamn måste vara gemener.
Containernamn måste vara mellan 3 och 63 tecken långa.
Katalognamn
Om ditt konto har ett hierarkiskt namnområde måste ett katalognamn följa följande namngivningsregler:
Ett katalognamn kan innehålla valfri kombination av tecken.
Ett katalognamn måste vara minst ett tecken långt och får inte vara längre än 1 024 tecken.
Katalognamn är skiftlägeskänsliga.
Reserverade URL-tecken måste vara korrekt undantagna.
Not
Undvik katalognamn som slutar med en punkt (.), ett snedstreck (/), ett omvänt snedstreck (\) eller en sekvens eller kombination av de två. Inga sökvägssegment ska sluta med en punkt (.).
Blobnamn
Ett blobnamn måste följa följande namngivningsregler. Dessa regler gäller även för blobar i konton som har ett hierarkiskt namnområde, om inget annat anges.
Ett blobnamn kan innehålla valfri kombination av tecken.
Ett blobnamn måste vara minst ett tecken långt och får inte vara längre än 1 024 tecken för blobar i Azure Storage.
Azure Storage-emulatorn stöder blobnamn på upp till 256 tecken. Mer information finns i Använda Azure Storage-emulatorn för utveckling och testning.
Blobnamn är skiftlägeskänsliga.
Reserverade URL-tecken måste vara korrekt undantagna.
Det finns begränsningar för antalet sökvägssegment som består av ett blobnamn. Ett sökvägssegment är strängen mellan avgränsartecken i följd (till exempel ett snedstreck
/
) som motsvarar katalogen eller den virtuella katalogen. Följande begränsningar för sökvägssegment gäller för blobnamn:- Om lagringskontot inte har hierarkiskt namnområde aktiverat får antalet sökvägssegment som består av blobnamnet inte överstiga 254.
- Om lagringskontot har hierarkiskt namnområde aktiverat får antalet sökvägssegment som består av blobnamnet inte överstiga 63 (inklusive sökvägssegment för kontonamn och containernamn).
Not
Undvik blobnamn som slutar med en punkt (.), ett snedstreck (/), ett omvänt snedstreck (\) eller en sekvens eller kombination av de två. Inga sökvägssegment ska sluta med en punkt (.).
Som standard baseras Blob-tjänsten på ett platt lagringsschema, inte på ett hierarkiskt schema. Du kan dock ange ett tecken eller en stränggränsare i ett blobnamn för att skapa en virtuell hierarki. I följande lista visas till exempel giltiga och unika blobnamn. Observera att en sträng kan vara giltig både som ett blobnamn och som ett virtuellt katalognamn i samma container:
/a
/a.txt
/a/b
/a/b.txt
Du kan dra nytta av avgränsartecknet när du räknar upp blobar.
Metadatanyckel och värdenamn
Metadata för en container eller blobresurs lagras som namn/värde-par som är associerade med resursen. Metadatanyckelnamn måste följa följande namngivningsregler:
Måste börja med en bokstav eller understreck
Följande tecken kan vara bokstäver, siffror eller understreck
Metadatanyckelnamnet måste vara giltigt ASCII
Metadatavärdenamn måste också vara giltiga ASCII. Observera att metadatanamn bevarar det skiftläge som de skapades med, men är skiftlägeskänsliga när de anges eller läss. Om två eller flera metadatahuvuden med samma namn skickas för en resurs returnerar Blob-tjänsten statuskod 400 (felaktig begäran).
Resurs-URI-syntax
Varje resurs har en motsvarande bas-URI, som refererar till själva resursen.
För lagringskontot innehåller bas-URI:n endast namnet på kontot:
https://myaccount.blob.core.windows.net
För en container innehåller bas-URI:n namnet på kontot och namnet på containern:
https://myaccount.blob.core.windows.net/mycontainer
För en blob innehåller bas-URI:n namnet på kontot, namnet på containern och namnet på bloben:
https://myaccount.blob.core.windows.net/mycontainer/myblob
Ett lagringskonto kan ha en rotcontainer, en standardcontainer som kan utelämnas från URI:n. En blob i rotcontainern kan refereras utan att namnge containern, eller så kan rotcontainern uttryckligen refereras till med dess namn ($root
). Mer information finns i Arbeta med rotcontainerns. Följande URI:er refererar båda till en blob i rotcontainern:
https://myaccount.blob.core.windows.net/myblob
https://myaccount.blob.core.windows.net/$root/myblob
Blobögonblicksbilder
En ögonblicksbild är en skrivskyddad version av en blob som lagras som den var när ögonblicksbilden skapades. Du kan använda ögonblicksbilder för att skapa en säkerhetskopia eller kontrollpunkt för en blob. Ett blobnamn för ögonblicksbilder innehåller basblob-URI:n plus ett datum-tid-värde som anger när ögonblicksbilden skapades.
Anta till exempel att en blob har följande URI:
https://myaccount.blob.core.windows.net/mycontainer/myblob
URI:n för en ögonblicksbild av den bloben skapas på följande sätt:
https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime>
Unicode-tecken rekommenderas inte för användning i container- eller blobnamn
Följande tabell innehåller en lista över Unicode-tecken som inte rekommenderas för användning i container- eller blobnamn. Dessa tecken, när de används i kombination med andra tecken i den här listan, kan misslyckas UTF-8- eller MBCS-avkodning, vilket leder till att begäran till Blob-tjänsten misslyckas.
Unicode-tecken |
---|
U+0080 |
U+0082 |
U+0083 |
U+0084 |
U+0085 |
U+0086 |
U+0087 |
U+0088 |
U+0089 |
U+008A |
U+008B |
U+008C |
U+008E |
U+0091 |
U+0092 |
U+0093 |
U+0094 |
U+0095 |
U+0096 |
U+0097 |
U+0098 |
U+0099 |
U+009A |
U+009B |
U+009C |
U+009E |
U+009F |
U+FDD1 |
U+FDD2 |
U+FDD3 |
U+FDD4 |
U+FDD5 |
U+FDD6 |
U+FDD7 |
U+FDD8 |
U+FDD9 |
U+FDDA |
U+FDDB |
U+FDDC |
U+FDDE |
U+FDDF |
U+FDE0 |
U+FDE1 |
U+FDE2 |
U+FDE3 |
U+FDE4 |
U+FDE5 |
U+FDE6 |
U+FDE7 |
U+FDE8 |
U+FDE9 |
U+FDEA |
U+FDEB |
U+FDEC |
U+FDED |
U+FDEE |
U+FDEF |
U+FFF0 |
U+FFF1 |
U+FFF2 |
U+FFF3 |
U+FFF4 |
U+FFF5 |
U+FFF6 |
U+FFF7 |
U+FFF8 |
U+FFF9 |
U+FFFA |
U+FFFB |
U+FFFC |
U+FFFD |
U+FFFE |
U+FFFF |
U+1FFFE |
U+1FFFF |
U+2FFFE |
U+2FFFF |
U+3FFFE |
U+3FFFF |
U+5FFFE |
U+5FFFF |
U+6FFFE |
U+6FFFF |
U+7FFFE |
U+7FFFF |
U+9FFFE |
U+9FFFF |
U+AFFFE |
U+AFFFF |
U+BFFFE |
U+BFFFF |
U+DFFFE |
U+DFFFF |
U+EFFFE |
U+EFFFF |
U+FFFFE |
U+FFFFF |