Hledání objektů blob podle značek
Operace Find Blobs by Tags
najde všechny objekty blob v účtu úložiště, jejichž značky odpovídají hledanému výrazu.
Žádost
Požadavek můžete sestavit Find Blobs by Tags
následujícím způsobem. Doporučujeme HTTPS. Nahraďte myaccount názvem vašeho účtu úložiště.
Identifikátor URI požadavku metody GET | Verze PROTOKOLU HTTP |
---|---|
https://myaccount.blob.core.windows.net?comp=blobs&where=<expression> |
HTTP/1.1 |
Parametry identifikátoru URI
V identifikátoru URI požadavku můžete zadat následující další parametry:
Parametr | Popis |
---|---|
expression |
Povinná hodnota. Filtruje sadu výsledků dotazu tak, aby zahrnovala pouze objekty blob, jejichž značky odpovídají zadanému výrazu. Další informace o tom, jak tento výraz vytvořit, najdete v tématu Poznámky. |
marker |
Nepovinný parametr. Řetězcová hodnota, která identifikuje část sady výsledků dotazu, která se má vrátit při další operaci. Operace vrátí hodnotu značky v těle odpovědi, pokud vrácená sada výsledků dotazu nebyla dokončena. Hodnotu značky je pak možné použít v následném volání a vyžádat si další sadu položek. Hodnota značky je pro klienta neprůžná. |
maxresults |
Nepovinný parametr. Určuje maximální počet objektů blob, které se mají vrátit. Pokud požadavek neurčí maxresults nebo nezadá hodnotu větší než 5 000, server vrátí až 5 000 položek. Pokud se mají vrátit další výsledky, služba vrátí token pokračování v elementu NextMarker response. V některých případech může služba vrátit méně výsledků, než maxresults určuje. Služba může také vrátit pokračovací token.Pokud maxresults nastavíte hodnotu menší nebo rovnou nule, zobrazí se kód odpovědi na chybu 400 (Chybný požadavek). |
timeout |
Nepovinný parametr. Vyjádřeno v sekundách. Další informace najdete v tématu Nastavení časových limitů pro operace služby Blob Storage. |
Hlavičky požadavku
Následující tabulka popisuje požadované a volitelné hlavičky požadavků:
Hlavička požadavku | Popis |
---|---|
Authorization |
Povinná hodnota. Určuje schéma autorizace, název účtu a podpis. Další informace najdete v tématu Autorizace požadavků do služby Azure Storage. |
Date nebo x-ms-date |
Povinná hodnota. Určuje formát UTC (Coordinated Universal Time). Další informace najdete v tématu Autorizace požadavků do služby Azure Storage. |
x-ms-version |
Povinné pro všechny autorizované žádosti, ale volitelné pro anonymní žádosti. Určuje verzi operace, která se má pro tento požadavek použít. Další informace najdete v tématu Správa verzí pro služby Azure Storage. |
x-ms-client-request-id |
Nepovinný parametr. Poskytuje klientem vygenerovanou neprůselnou hodnotu s limitem počtu znaků 1 kibibajt (KiB), který je zaznamenán v protokolech 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á. |
Text požadavku
Žádné
Odpověď
Odpověď obsahuje stavový kód HTTP, hlavičky odpovědi a tělo odpovědi.
Stavový kód
Úspěšná operace vrátí stavový kód 200 (OK).
Informace o stavových kódech najdete v tématu Stavové kódy a kódy chyb.
Hlavičky odpovědi
Odpověď na tuto operaci obsahuje následující hlavičky. Odpověď může také obsahovat další standardní hlavičky HTTP. Všechny standardní hlavičky odpovídají specifikaci protokolu HTTP/1.1.
Hlavička odpovědi | Description |
---|---|
Content-Type |
Určuje application/xml jako typ obsahu. |
Content-Length |
Určuje velikost vráceného dokumentu XML v bajtech. |
x-ms-request-id |
Jednoznačně identifikuje požadavek, který byl proveden. Můžete ho použít k řešení potíží s požadavkem. Další informace najdete v tématu Řešení potíží s operacemi rozhraní API. |
x-ms-version |
Označuje verzi Azure Blob Storage, která byla použita ke spuštění požadavku. |
Date |
Hodnota data a času UTC, která určuje čas, kdy služba odeslala odpověď. |
x-ms-client-request-id |
Dá se použít k řešení potíží s požadavky a odpovídajícími odpověďmi. Hodnota této hlavičky se rovná hodnotě x-ms-client-request-id hlavičky, pokud se nachází v požadavku a hodnota je maximálně 1 024 viditelných znaků ASCII. Pokud se hlavička x-ms-client-request-id v požadavku nenachází, nebude tato hlavička v odpovědi. |
Text odpovědi
Ve verzi 2020-04-08 a novější jsou odpovídající značky objektu blob zapouzdřené v elementu Tags
. Text odpovědi má následující formát:
<?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>
Text odpovědi je dokument XML ve správném formátu UTF-8.
Autorizace
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 Find Blobs by Tags
, jak je popsáno níže.
Důležité
Microsoft doporučuje používat Microsoft Entra ID se spravovanými identitami k autorizaci požadavků do služby Azure Storage. Microsoft Entra ID poskytuje v porovnání s autorizací pomocí sdíleného klíče vynikající zabezpečení a snadné použití.
Azure Storage podporuje autorizaci požadavků na data objektů blob pomocí Microsoft Entra ID. S Microsoft Entra ID můžete pomocí řízení přístupu na základě role v Azure (Azure RBAC) udělit oprávnění k objektu zabezpečení. Objektem zabezpečení může být uživatel, skupina, instanční objekt aplikace nebo spravovaná identita Azure. Objekt zabezpečení ověří Microsoft Entra ID, aby vrátil token OAuth 2.0. Token se pak dá použít k autorizaci požadavku na službu 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.
Oprávnění
Níže jsou uvedené akce RBAC nezbytné k volání Find Blobs by Tags
operace Microsoft Entra uživatelem, skupinou, spravovanou identitou nebo instančním objektem a předdefinovanou rolí Azure RBAC s nejnižšími oprávněními, která zahrnuje tuto akci:
- Akce Azure RBAC:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/filter/action
- Předdefinovaná role s nejnižšími oprávněními:Vlastník dat v objektech blob služby Storage
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
Operace Find Blobs by Tags
se podporuje v rozhraní REST API verze 2019-12-12-12 a novějších.
U účtů s povoleným hierarchickým oborem názvů se operace nepodporuje, Find Blobs by Tags
protože pro účty hierarchického oboru názvů se nepodporují značky objektů blob.
Sekundární index, který používá, Find Blobs by Tags
je nakonec konzistentní. Aktualizace do značek objektů blob přes Set Blob Tags
nemusí být okamžitě viditelná pro Find Blobs by Tags
operace.
Vytvoření hledaného výrazu
Parametr where
URI vyhledá objekty blob v účtu úložiště, jejichž značky odpovídají výrazu. Výraz se musí vyhodnotit jako true
, aby se objekt blob vrátil v sadě výsledků dotazu.
Služba úložiště podporuje podmnožinu gramatiky klauzule SQL WHERE
ANSI pro hodnotu parametru where=<expression>
dotazu. Služba úložiště podporuje následující operátory:
Operátor | Popis | Příklad |
---|---|---|
= |
Je rovno | &where=Status = 'In Progress' |
> |
Větší než | &where=LastModified > '2018-06-18 20:51:26Z' |
>= |
Větší než nebo rovno | &where=Priority >= '05' |
< |
Menší než | &where=Age < '032' |
<= |
Menší než nebo rovno | &where=Reviewer <= 'Smith' |
AND |
Logické a | &where=Name > 'C' AND Name < 'D' &where=Age > '032' AND Age < '100' |
@container |
Určení kontejneru | &where=@container='mycontainer' AND Name = 'C' |
Poznámka
Hodnota parametru where
URI musí být správně zakódovaná URI (včetně mezer a operátorů). Předchozí příklady tuto možnost z důvodu čitelnosti vynechaly.
Všechny hodnoty značek jsou řetězce. Podporované binární relační operátory používají lexikografické řazení hodnot značek. Pokud chcete podporovat jiné než řetězcové datové typy, včetně čísel a kalendářních dat, musíte použít odpovídající odsazení a řazení formátování. Hodnoty značek musí být uzavřeny v jednoduchých uvozovkách.
Pokud jsou názvy značek běžnými identifikátory SQL, mohou být přítomny bez uvozování. Pokud obsahují nějaké speciální znaky, musí být oddělené dvojitými uvozovkami (například "TagName"
= TagValue
). Názvy značek doporučujeme vždy uzavřít do dvojitých uvozovek.
Služba úložiště odmítne všechny požadavky, které obsahují neplatný výraz s kódem chyby 400 (Chybný požadavek).
Fakturace
Požadavky na ceny můžou 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 služby Azure Storage. Za tyto žádosti se účtují poplatky za každou transakci. Typ transakce ovlivňuje způsob účtování za účet. Například transakce čtení se načítají do jiné kategorie fakturace než transakce zápisu. Následující tabulka uvádí kategorii fakturace pro Find Blobs by Tags
žádosti založené na typu účtu úložiště:
Operace | Typ účtu úložiště | Kategorie fakturace |
---|---|---|
Hledání objektů blob podle značek | Objekt blob bloku úrovně Premium Standard pro obecné účely v2 Standard pro obecné účely v1 |
Výpis a Create operací kontejneru |
Informace o cenách pro zadanou kategorii fakturace najdete v tématu Azure Blob Storage Ceny.
Viz také
Správa a hledání dat na Azure Blob Storage pomocí značek indexu objektů blob
Autorizace požadavků do Služby Azure Storage
Stavové kódy a kódy chyb
Kódy chyb služby Blob Storage