Megosztás a következőn keresztül:


Tárolók listázása

A List Containers művelet a megadott tárfiók alatti tárolók listáját adja vissza.

Kérés

A kérést a List Containers következőképpen hozhatja létre. A HTTPS használata ajánlott. Cserélje le a myaccount nevet a tárfiók nevére.

Metódus Kérés URI-ja HTTP-verzió
GET https://myaccount.blob.core.windows.net/?comp=list HTTP/1.1

Vegye figyelembe, hogy az URI-nak mindig tartalmaznia kell a perjelet (/), hogy elkülönítse a gazdagép nevét az URI elérési útjától és lekérdezési részeitől. A művelet esetében az List Containers URI elérési útja üres.

Emulált tárolási szolgáltatás kérése

Amikor kérést küld az emulált tárolási szolgáltatásra, adja meg az emulátor gazdagépnevét és Azure Blob Storage portot 127.0.0.1:10000, majd az emulált tárfiók nevét.

Metódus Kérés URI-ja HTTP-verzió
GET http://127.0.0.1:10000/devstoreaccount1?comp=list HTTP/1.1

Vegye figyelembe, hogy az emulált tárterület csak a 2 GiB-ig tartó blobméreteket támogatja.

További információ: Az Azurite emulátor használata a helyi Azure Storage-fejlesztéshez , valamint a Storage emulátor és az Azure Storage-szolgáltatások közötti különbségek.

URI-paraméterek

A kérelem URI-ján a következő további paramétereket adhatja meg.

Paraméter Leírás
prefix Választható. Az eredményeket úgy szűri, hogy csak a megadott előtaggal kezdődő nevű tárolókat adja vissza.
marker Választható. Sztringérték, amely a következő listázási művelettel visszaadandó tárolók listájának részét azonosítja. A művelet a válasz törzsében NextMarker lévő értéket adja vissza, ha a listázási művelet nem adja vissza az összes olyan tárolót, amely az aktuális oldallal együtt szerepel. Az értéket a paraméter értékeként marker használhatja NextMarker egy későbbi hívásban a listaelemek következő oldalának lekéréséhez.

A jelölő értéke átlátszatlan az ügyfél számára.
maxresults Választható. Megadja a visszaadni kívánt tárolók maximális számát. Ha a kérés nem ad meg maxresults, vagy 5000-nél nagyobb értéket ad meg, a kiszolgáló legfeljebb 5000 elemet ad vissza.

Vegye figyelembe, hogy ha a listázási művelet átlép egy partícióhatárt, a szolgáltatás egy folytatási jogkivonatot ad vissza az eredmények fennmaradó részének lekéréséhez. Ezért lehetséges, hogy a szolgáltatás kevesebb eredményt ad vissza, mint amit maxresultsa , vagy az alapértelmezett értéke 5000.

Ha a paraméter nullánál kisebb vagy egyenlő értékre van állítva, a kiszolgáló a 400-ás állapotkódot adja vissza (Hibás kérés).
include={metadata,deleted,system} Választható. Egy vagy több adatkészletet ad meg, amely szerepel a válaszban:

- metadata: Vegye figyelembe, hogy az ezzel a paraméterrel kért metaadatokat a Blob Storage 2009-09-19 verziójának elnevezési korlátozásaival összhangban kell tárolni. Ezzel a verzióval kezdődően minden metaadatnévnek meg kell felelnie a C#-azonosítók elnevezési konvencióinak.
- deleted: 2019-12-12-es és újabb verzió. Megadja, hogy a helyreállíthatóan törölt tárolókat is bele kell foglalni a válaszba.
- system: 2020-10-02-es és újabb verzió. Megadja, hogy a rendszertárolók szerepeljenek-e a válaszban. Ezzel a beállítással listázhatja a rendszertárolókat, például $logs a és $changefeeda tárolókat. Vegye figyelembe, hogy a visszaadott rendszertárolók eltérőek lesznek attól függően, hogy mely szolgáltatásfunkciók vannak engedélyezve a tárfiókon.
timeout Választható. A timeout paraméter másodpercben van kifejezve. További információ: Időtúllépések beállítása a Blob Storage-műveletekhez.

Kérésfejlécek

Az alábbi táblázat a szükséges és nem kötelező kérelemfejléceket ismerteti.

Kérelem fejléce Leírás
Authorization Kötelező. Megadja az engedélyezési sémát, a fióknevet és az aláírást. További információ: Kérések engedélyezése az Azure Storage-ba.
Date vagy x-ms-date Kötelező. Megadja a kérés egyezményes világidő (UTC) formátumban kifejezett időpontját. További információ: Kérések engedélyezése az Azure Storage-ba.
x-ms-version Minden engedélyezett kéréshez szükséges. A kérelemhez használni kívánt művelet verzióját adja meg. További információ: Az Azure Storage-szolgáltatások verziószámozása.
x-ms-client-request-id Választható. Ügyfél által generált, átlátszatlan értéket biztosít egy 1 kib-os (KiB) karakterkorláttal, amelyet a naplózás konfigurálásakor rögzít a naplókban. Javasoljuk, hogy ezt a fejlécet használva korrelálja az ügyféloldali tevékenységeket a kiszolgáló által kapott kérésekkel. További információ: Monitorozási Azure Blob Storage.

A kérés törzse

Nincsenek.

Reagálás

A válasz tartalmaz egy HTTP-állapotkódot, egy válaszfejléceket és egy XML formátumú választörzset.

Állapotkód

A sikeres művelet a 200-ra (OK) vonatkozó állapotkódot adja vissza. Az állapotkódokkal kapcsolatos információkért lásd: Állapot- és hibakódok.

Válaszfejlécek

A műveletre adott válasz a következő fejléceket tartalmazza. A válasz további szabványos HTTP-fejléceket is tartalmaz. Minden szabványos fejléc megfelel a HTTP/1.1 protokoll specifikációjának.

Válaszfejléc Description
Content-Type Standard HTTP/1.1 fejléc. Azt a formátumot adja meg, amelyben a rendszer visszaadja az eredményeket. Ez az érték jelenleg a .application/xml
x-ms-request-id Ez a fejléc egyedileg azonosítja a végrehajtott kérést, és a kérés hibaelhárításához használható. További információ: API-műveletek hibaelhárítása.
x-ms-version A Blob Storage kérés futtatásához használt verzióját jelzi. A rendszer ezt a fejlécet adja vissza a 2009-09-19-es és újabb verzióval kapcsolatos kérésekhez.
Date Utc dátum/idő érték, amely a válasz indításának időpontját jelzi. A szolgáltatás létrehozza ezt az értéket.
x-ms-client-request-id Ezzel a fejlécmel elháríthatja a kéréseket és a megfelelő válaszokat. A fejléc értéke megegyezik a fejléc értékével x-ms-client-request-id , ha az szerepel a kérelemben. Az érték legfeljebb 1024 látható ASCII-karakter lehet. Ha a x-ms-client-request-id fejléc nem szerepel a kérelemben, akkor ez a fejléc nem jelenik meg a válaszban.

Választörzs

A válasz törzsének formátuma a következő.

<?xml version="1.0" encoding="utf-8"?>  
<EnumerationResults ServiceEndpoint="https://myaccount.blob.core.windows.net">  
  <Prefix>string-value</Prefix>  
  <Marker>string-value</Marker>  
  <MaxResults>int-value</MaxResults>  
  <Containers>  
    <Container>  
      <Name>container-name</Name>  
      <Version>container-version</Version>
      <Deleted>true</Deleted>
      <Properties>  
        <Last-Modified>date/time-value</Last-Modified>  
        <Etag>etag</Etag>  
        <LeaseStatus>locked | unlocked</LeaseStatus>  
        <LeaseState>available | leased | expired | breaking | broken</LeaseState>  
        <LeaseDuration>infinite | fixed</LeaseDuration> 
        <PublicAccess>container | blob</PublicAccess>
        <HasImmutabilityPolicy>true | false</HasImmutabilityPolicy>
        <HasLegalHold>true | false</HasLegalHold>
        <DeletedTime>datetime</DeletedTime>
        <RemainingRetentionDays>no-of-days</RemainingRetentionDays>
      </Properties>  
      <Metadata>  
        <metadata-name>value</metadata-name>  
      </Metadata>  
    </Container>  
  </Containers>  
  <NextMarker>marker-value</NextMarker>  
</EnumerationResults>  

LeaseStatus, LeaseStateés LeaseDuration csak a 2012-02-12-es és újabb verzióban jelenik meg.

A 2013-08-15-ös verziótól kezdve az AccountNameEnumerationResults elem attribútuma átnevezve a következőre ServiceEndpoint: . Az URL elem szintén el lett távolítva az Container elemből. A 2013-08-15 előtti verziók esetében a tároló mező által URL megadott URL-címe nem tartalmazza a paramétert restype=container . Ha ezt az értéket használja az enumerált tárolókra vonatkozó további kérések igényléséhez, mindenképpen fűzze hozzá ezt a paramétert, hogy jelezze, hogy az erőforrás típusa tároló.

A Prefix, Markerés MaxResults elem csak akkor jelenik meg, ha megadja őket az URI-ben. Az NextMarker elem csak akkor rendelkezik értékkel, ha a listaeredmények nem fejeződnek be.

Az Metadata elem csak akkor jelenik meg, ha megadja a paramétert include=metadata az URI-n. Metadata Az elemen belül az egyes név-érték párok értéke a pár nevének megfelelő elemen belül jelenik meg.

Ha egy metaadat-név-érték pár megsérti a 2009-09-19 verzió által kikényszerített elnevezési korlátozásokat, a válasz törzse egy elemen belül x-ms-invalid-name jelzi a problémás nevet. Az alábbi XML-töredék a következőt mutatja:

  
<Metadata>  
  <MyMetadata1>first value</MyMetadata1>  
  <MyMetadata2>second value</MyMetadata2>  
  <x-ms-invalid-name>invalid-metadata-name</x-ms-invalid-name>  
</Metadata>  
  

A 2016-05-31-es verziótól kezdve a tároló nyilvános engedélyeit a PublicAccess tulajdonság tartalmazza. Azt jelzi, hogy a tárolóban lévő adatok nyilvánosan elérhetők-e, és hogy milyen szintű hozzáférés érhető el. A lehetséges értékek a következők:

  • container: A tároló- és blobadatok teljes nyilvános olvasási hozzáférését jelzi. Az ügyfelek névtelen kéréssel számba tudják venni a blobokat a tárolón belül, de a tárfiókon belül nem lehet számba venni a tárolókat.
  • blob: A blobok nyilvános olvasási hozzáférését jelzi. A tárolón belüli blobadatok névtelen kéréssel olvashatók, de a tároló adatai nem érhetők el. Az ügyfelek nem tudnak blobokat számba kérni a tárolóban névtelen kéréssel.

Ha ez a tulajdonság nincs megadva a <properties> szakaszban, a tároló privát a fióktulajdonos számára.

HasImmutabilityPolicy és HasLegalHold csak a 2017-11-09-es és újabb verzióban jelenik meg. HasImmutabilityPolicy akkor van, true ha a tárolón egy módosíthatatlansági szabályzat van beállítva, máskülönben false . HasLegalHold akkor van, true ha a tárolón egy vagy több jogi mentesség van, és false egyéb esetben.

Megjegyzés

A 2009-09-19-es verziótól kezdődően a válasz törzse List Containers a tároló utolsó módosítási idejét adja vissza egy nevű Last-Modifiedelemben. A korábbi verziókban ezt az elemet nevezték el.LastModified

A Version, Deleted, DeletedTimeés RemainingRetentiondays elem csak akkor jelenik meg a 2019-12-12-es és újabb verzióban, ha megadja a deleted lekérdezési paraméter includeértékét. Ezek az elemek csak akkor jelennek meg, ha a tároló helyreállíthatóan törölve van, és visszaállítható. A Version, Deleted, DeletedTimeés RemainingRetentiondays elem csak akkor jelenik meg a 2019-12-12-es és újabb verzióban, ha a törölt érték meg van adva a include lekérdezési paraméterhez, és ha a tároló helyreállíthatóan törölve van, és visszaállítható.

Engedélyezés

Az Azure Storage-ban bármilyen adathozzáférési művelet meghívásához engedélyezésre van szükség. A műveletet az List Containers alábbiak szerint engedélyezheti.

Fontos

A Microsoft azt javasolja, hogy Microsoft Entra ID felügyelt identitásokkal engedélyezze az Azure Storage-ra irányuló kéréseket. Microsoft Entra ID a megosztott kulcs engedélyezéséhez képest kiváló biztonságot és könnyű használatot biztosít.

Az Azure Storage támogatja az Microsoft Entra ID használatát a blobadatokra irányuló kérések engedélyezéséhez. A Microsoft Entra ID azure-beli szerepköralapú hozzáférés-vezérléssel (Azure RBAC) adhat engedélyeket egy biztonsági tagnak. A rendszerbiztonsági tag lehet felhasználó, csoport, alkalmazásszolgáltatásnév vagy Azure-beli felügyelt identitás. A rendszerbiztonsági tagot a Microsoft Entra ID hitelesíti egy OAuth 2.0-jogkivonat visszaadásához. A jogkivonat ezután a Blob szolgáltatással szembeni kérések engedélyezésére használható.

További információ a Microsoft Entra ID használatával történő engedélyezésről: Blobok hozzáférésének engedélyezése Microsoft Entra ID használatával.

Engedélyek

Az alábbiakban felsoroljuk azt az RBAC-műveletet, amely a művelet meghívásához List Containers szükséges Microsoft Entra felhasználóhoz, csoporthoz, felügyelt identitáshoz vagy szolgáltatásnévhez, valamint a legkevésbé emelt szintű beépített Azure RBAC-szerepkörhöz, amely tartalmazza ezt a műveletet:

A szerepkörök Azure RBAC-vel való hozzárendeléséről további információt az Azure-szerepkör hozzárendelése a blobadatokhoz való hozzáféréshez című témakörben talál.

Megjegyzések

Ha értéket ad meg a maxresults paraméterhez, és a visszaadandó tárolók száma meghaladja ezt az értéket, vagy meghaladja az alapértelmezett értéket maxresults, a válasz törzse tartalmazza az NextMarker elemet. (Ezt folytatási jogkivonatnak is nevezik).

NextMarker azt jelzi, hogy a következő tároló visszatér-e egy későbbi kérelemre. A következő elemkészlet visszaadásához adja meg a paraméter értékét NextMarker az marker URI-n a következő kéréshez. Vegye figyelembe, hogy a értékét NextMarker átlátszatlanként kell kezelni.

Ha a listázási művelet átlép egy partícióhatárt, akkor a szolgáltatás egy értéket ad vissza az NextMarker elemnek a következő partícióból származó eredmények fennmaradó részének lekéréséhez. Egynél több partícióra kiterjedő listaelem-művelet esetén a visszaadott elemek kisebb halmaza lesz visszaadva, mint az maxresults, vagy az alapértelmezett értéke 5000. Az alkalmazásnak mindig ellenőriznie kell az elem jelenlétét a NextMarker listaelem-művelet végrehajtásakor, és ennek megfelelően kell kezelnie.

A tárolók betűrendben jelennek meg a válasz törzsében.

A List Containers művelet 30 másodperc után túllépi az időkorlátot.

Számlázás

A díjszabási kérések a Blob Storage API-kat használó ügyfelektől, közvetlenül a Blob Storage REST API-ból vagy egy Azure Storage-ügyfélkódtárból származhatnak. Ezek a kérések tranzakciónkénti díjakat halmoznak fel. A tranzakció típusa befolyásolja a fiók terhelését. Az olvasási tranzakciók például más számlázási kategóriába tartoznak, mint az írási tranzakciók. Az alábbi táblázat a tárfiók típusa alapján a kérelmek számlázási kategóriáját List Containers mutatja be:

Művelet Tárfiók típusa Számlázási kategória
Tárolók listázása Prémium szintű blokkblob
Standard általános célú v2
Standard általános célú v1
Tárolóműveletek listázása és Létrehozás

A megadott számlázási kategória díjszabásával kapcsolatos további információkért lásd: Azure Blob Storage Díjszabás.

Mintakérés és válasz

Az alábbi URI-minta egy fiók tárolóinak listáját kéri le, és a kezdeti művelet maximális eredményét háromra állítja vissza.

GET https://myaccount.blob.core.windows.net/?comp=list&maxresults=3 HTTP/1.1  

A rendszer a következő fejlécekkel küldi el a kérést:

x-ms-version: 2016-05-31  
x-ms-date: Wed, 26 Oct 2016 22:08:44 GMT  
Authorization: SharedKey myaccount:CY1OP3O3jGFpYFbTCBimLn0Xov0vt0khH/D5Gy0fXvg=  

Az állapotkód és a válaszfejlécek a következőképpen lesznek visszaadva:

HTTP/1.1 200 OK  
Transfer-Encoding: chunked  
Content-Type: application/xml  
Date: Wed, 26 Oct 2016 22:08:54 GMT  
x-ms-version: 2016-05-31  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  
  

A kérés válasz XML-je a következő. Vegye figyelembe, hogy az NextMarker elem a tárolók készletét követi, és tartalmazza a következő visszaadandó tároló nevét.

<?xml version="1.0" encoding="utf-8"?>  
<EnumerationResults ServiceEndpoint="https://myaccount.blob.core.windows.net/">  
  <MaxResults>3</MaxResults>  
  <Containers>  
    <Container>  
      <Name>audio</Name>  
      <Properties>  
        <Last-Modified>Wed, 26 Oct 2016 20:39:39 GMT</Last-Modified>  
        <Etag>0x8CACB9BD7C6B1B2</Etag> 
        <PublicAccess>container</PublicAccess> 
      </Properties>  
    </Container>  
    <Container>  
      <Name>images</Name>  
      <Properties>  
        <Last-Modified>Wed, 26 Oct 2016 20:39:39 GMT</Last-Modified>  
        <Etag>0x8CACB9BD7C1EEEC</Etag>  
      </Properties>  
    </Container>  
    <Container>  
      <Name>textfiles</Name>  
      <Properties>  
        <Last-Modified>Wed, 26 Oct 2016 20:39:39 GMT</Last-Modified>  
        <Etag>0x8CACB9BD7BACAC3</Etag>  
      </Properties>  
    </Container>  
  </Containers>  
  <NextMarker>video</NextMarker>  
</EnumerationResults>  

Az ezt követő listaművelet az alábbiak szerint határozza meg a jelölőt a kérelem URI-ján. A következő eredményhalmaz a jelölő által megadott tárolóval kezdődik.

https://myaccount.blob.core.windows.net/?comp=list&maxresults=3&marker=video  

Lásd még

Kérések engedélyezése az Azure Storage-ba
Állapot- és hibakódok
Blob Storage-hibakódok
Bloberőforrások számbavétele
Az Azure Storage emulátor használata fejlesztéshez és teszteléshez
Időtúllépések beállítása a Blob Storage-műveletekhez