Blobok keresése címkék szerint
A Find Blobs by Tags
művelet megkeresi az összes olyan blobot a tárfiókban, amelynek címkéi megegyeznek egy keresési kifejezéssel.
Kérés
A kérést a Find Blobs by Tags
következőképpen hozhatja létre. A HTTPS használatát javasoljuk. Cserélje le a myaccount nevet a tárfiók nevére.
GET metóduskérés URI-ja | HTTP-verzió |
---|---|
https://myaccount.blob.core.windows.net?comp=blobs&where=<expression> |
HTTP/1.1 |
URI-paraméterek
A kérelem URI-ján a következő további paramétereket adhatja meg:
Paraméter | Leírás |
---|---|
expression |
Kötelező. Az eredményhalmazt úgy szűri, hogy csak azokat a blobokat tartalmazza, amelyek címkéi megegyeznek a megadott kifejezéssel. A kifejezés felépítéséről további információt a Megjegyzések című témakörben talál. |
marker |
Választható. Sztringérték, amely a következő művelettel visszaadandó eredményhalmaz részét azonosítja. A művelet egy jelölőértéket ad vissza a választörzsben, ha a visszaadott eredményhalmaz nem fejeződött be. A jelölőérték ezután egy későbbi hívásban is használható a következő elemkészlet 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 blobok maximális számát. Ha a kérelem nem ad meg maxresults vagy ad meg 5000-nél nagyobb értéket, a kiszolgáló legfeljebb 5000 elemet ad vissza. Ha további eredményeket szeretne visszaadni, a szolgáltatás egy folytatási jogkivonatot ad vissza a NextMarker válaszelemben. Bizonyos esetekben a szolgáltatás a megadottnál maxresults kevesebb eredményt ad vissza. A szolgáltatás egy folytatási jogkivonatot is visszaadhat.Ha nullánál kisebb vagy egyenlő értékre állítja maxresults be a hibát, a 400-ra (hibás kérelem) vonatkozó hibaválasz-kód jelenik meg. |
timeout |
Választható. Másodpercben kifejezve. További információ: Időtúllépések beállítása Blob Storage-műveletekhez. |
Kérésfejlécek
Az alábbi táblázat a szükséges és nem kötelező kérésfejlé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, de névtelen kérésekhez nem kötelező. 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. |
A kérés törzse
Nincsenek.
Reagálás
A válasz tartalmaz egy HTTP-állapotkódot, egy válaszfejlécet és egy 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 tartalmazhat. Minden szabványos fejléc megfelel a HTTP/1.1 protokoll specifikációjának.
Válaszfejléc | Description |
---|---|
Content-Type |
application/xml A tartalomtípust adja meg. |
Content-Length |
A visszaadott XML-dokumentum méretét adja meg bájtban. |
x-ms-request-id |
Egyedileg azonosítja a végrehajtott kérést. A kérés hibaelhárításához használhatja. További információ: API-műveletek hibaelhárítása. |
x-ms-version |
A kérés végrehajtásához használt Azure Blob Storage verzióját jelzi. |
Date |
Utc dátum/idő érték, amely azt jelzi, hogy a szolgáltatás mikor küldte el a választ. |
x-ms-client-request-id |
A kérések és a kapcsolódó válaszok hibaelhárítására használható. A fejléc értéke megegyezik a x-ms-client-request-id fejléc értékével, ha az szerepel a kérelemben, és az érték legfeljebb 1024 látható ASCII-karakter. 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 2020-04-08-es és újabb verziókban a blob megfelelő címkéi egy Tags
elembe vannak ágyazva. A válasz törzsének formátuma a következő:
<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint=http://myaccount.blob.core.windows.net/>
<Where>string-value</Where>
<Blobs>
<Blob>
<Name>blob-name</Name>
<ContainerName>container-name</ContainerName>
<Tags>
<TagSet>
<Tag>
<Key>matching-tag-name1</Key>
<Value>matching-tag-value1</Value>
</Tag>
<Tag>
<Key>matching-tag-name2</Key>
<Value>matching-tag-value2</Value>
</Tag>
</TagSet>
</Tags>
</Blob>
</Blobs>
<NextMarker />
</EnumerationResults>
A választörzs egy jól formázott UTF-8 XML-dokumentum.
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 Find Blobs by Tags
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 Find Blobs by Tags
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:
- Azure RBAC-művelet:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/filter/action
- Legkevésbé kiemelt beépített szerepkör:Storage-blobadatok tulajdonosa
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
A Find Blobs by Tags
műveletet a REST API 2019-12-12-es és újabb verziói támogatják.
A hierarchikus névtérrel rendelkező fiókok esetében a Find Blobs by Tags
művelet nem támogatott, mivel a blobcímkék nem támogatottak a hierarchikus névtérfiókok esetében.
A használt másodlagos index Find Blobs by Tags
végül konzisztens. előfordulhat, hogy Frissítések blobcímkéken keresztül Set Blob Tags
nem látható azonnal a műveletek számáraFind Blobs by Tags
.
Keresési kifejezés létrehozása
Az where
URI paraméter olyan blobokat keres a tárfiókban, amelyek címkéi megegyeznek egy kifejezéssel. A kifejezésnek ki kell értékelnie, hogy true
egy blob vissza legyen adva az eredményhalmazban.
A storage szolgáltatás támogatja az ANSI SQL-záradék WHERE
nyelvtanának egy részét a where=<expression>
lekérdezési paraméter értékéhez. A tárolási szolgáltatás a következő operátorokat támogatja:
Operátor | Leírás | Példa |
---|---|---|
= |
Egyenlő | &where=Status = 'In Progress' |
> |
Nagyobb, mint | &where=LastModified > '2018-06-18 20:51:26Z' |
>= |
Nagyobb vagy egyenlő mint | &where=Priority >= '05' |
< |
Kisebb mint | &where=Age < '032' |
<= |
Kisebb vagy egyenlő mint | &where=Reviewer <= 'Smith' |
AND |
Logikai és | &where=Name > 'C' AND Name < 'D' &where=Age > '032' AND Age < '100' |
@container |
Tároló megadása | &where=@container='mycontainer' AND Name = 'C' |
Megjegyzés
Az URI paraméter értékét where
megfelelően kell kódolni (szóközöket és operátorokat is beleértve). Az előző példák ezt kihagyják az olvashatóság érdekében.
Minden címkeérték sztring. A támogatott bináris relációs operátorok a címkeértékek lexikográfiai rendezését használják. A nem sztring típusú adattípusok( például számok és dátumok) támogatásához megfelelő kitöltést és rendezhető formázást kell használnia. A címkeértékeket szimpla idézőjelek közé kell foglalni.
Ha a címkenevek normál SQL-azonosítók, azok a menekülés nélkül is jelen lehetnek. Ha speciális karaktereket tartalmaznak, dupla idézőjelekkel kell elválasztani őket (például "TagName"
= TagValue
). Javasoljuk, hogy a címkeneveket mindig idézőjelek közé tegye.
A tárolási szolgáltatás elutasítja a 400-as hibakódú (hibás kérés) érvénytelen kifejezést tartalmazó kéréseket.
Számlázás
A díjszabási kérések olyan ügyfelektől származhatnak, amelyek Blob Storage API-kat használnak, közvetlenül a Blob Storage REST API-ból vagy egy Azure Storage-ügyfélkódtárból. 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 Find Blobs by Tags
mutatja be:
Művelet | Tárfiók típusa | Számlázási kategória |
---|---|---|
Blobok keresése címkék szerint | 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áról a Azure Blob Storage Díjszabás című témakörben talál további információt.
Lásd még
Adatok kezelése és keresése Azure Blob Storage blobindexcímkék használatával
Kérések engedélyezése az Azure Storage-nak
Állapot- és hibakódok
Blob Storage-hibakódok