Trovare BLOB per tag
L'operazione Find Blobs by Tags
trova tutti i BLOB nell'account di archiviazione i cui tag corrispondono a un'espressione di ricerca.
Richiesta
È possibile costruire la Find Blobs by Tags
richiesta come indicato di seguito. È consigliabile usare HTTPS. Sostituire myaccount con il nome dell'account di archiviazione.
URI della richiesta del metodo GET | Versione HTTP |
---|---|
https://myaccount.blob.core.windows.net?comp=blobs&where=<expression> |
HTTP/1.1 |
Parametri URI
Nell'URI della richiesta puoi specificare i parametri seguenti:
Parametro | Descrizione |
---|---|
expression |
Obbligatorio. Filtra il set di risultati in modo da includere solo i BLOB i cui tag corrispondono all'espressione specificata. Per altre informazioni su come costruire questa espressione, vedere Osservazioni. |
marker |
facoltativo. Valore stringa che identifica la parte del set di risultati da restituire con l'operazione successiva. L'operazione restituisce un valore marcatore all'interno del corpo della risposta se il set di risultati restituito non è stato completato. Il valore del marcatore può quindi essere usato in una chiamata successiva per richiedere il set successivo di elementi. Il valore marcatore risulta opaco al client. |
maxresults |
facoltativo. Specifica il numero massimo di BLOB da restituire. Se la richiesta non specifica maxresults o specifica un valore maggiore di 5.000, il server restituisce fino a 5.000 elementi. Se sono presenti risultati aggiuntivi da restituire, il servizio restituisce un token di continuazione nell'elemento NextMarker di risposta. In alcuni casi, il servizio potrebbe restituire meno risultati di quanto maxresults specificato. Il servizio potrebbe anche restituire un token di continuazione.L'impostazione di maxresults su un valore minore o uguale a zero restituisce il codice di risposta 400 (Richiesta non valida). |
timeout |
facoltativo. Espresso in secondi. Per altre informazioni, vedere Impostare i timeout per le operazioni di archiviazione BLOB. |
Intestazioni della richiesta
La tabella seguente descrive le intestazioni di richiesta obbligatorie e facoltative:
Intestazione della richiesta | Descrizione |
---|---|
Authorization |
Obbligatorio. Specifica lo schema di autorizzazione, il nome dell'account e la firma. Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure. |
Date o x-ms-date |
Obbligatorio. Specifica la data per la richiesta nel fuso orario UTC (Coordinated Universal Time). Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure. |
x-ms-version |
Obbligatorio per tutte le richieste autorizzate, ma facoltativo per le richieste anonime. Specifica la versione dell'operazione da usare per questa richiesta. Per altre informazioni, vedere Controllo delle versioni per i servizi di archiviazione di Azure. |
x-ms-client-request-id |
facoltativo. Fornisce un valore opaco generato dal client con un limite di caratteri di 1 kibibyte (KiB) registrato nei log al momento della configurazione della registrazione. È consigliabile usare questa intestazione per correlare le attività lato client alle richieste ricevute dal server. |
Testo della richiesta
Nessuno.
Risposta
La risposta include un codice di stato HTTP, intestazioni di risposta e un corpo della risposta.
Codice stato
Un'operazione completata correttamente restituisce 200 (OK).
Per informazioni sui codici di stato, vedere Codici di stato e di errore.
Intestazioni di risposta
Nella risposta per questa operazione sono incluse le intestazioni riportate di seguito; La risposta potrebbe includere anche intestazioni HTTP standard aggiuntive. Tutte le intestazioni standard sono conformi alla specifica del protocollo HTTP/1.1.
Intestazione risposta | Descrizione |
---|---|
Content-Type |
Specifica application/xml come tipo di contenuto. |
Content-Length |
Specifica le dimensioni del documento XML restituito, in byte. |
x-ms-request-id |
Identifica in modo univoco la richiesta effettuata. È possibile usarlo per risolvere i problemi della richiesta. Per altre informazioni, vedere Risolvere i problemi relativi alle operazioni api. |
x-ms-version |
Indica la versione di Archiviazione BLOB di Azure utilizzata per eseguire la richiesta. |
Date |
Valore di data/ora UTC che indica l'ora in cui il servizio ha inviato la risposta. |
x-ms-client-request-id |
Può essere usato per risolvere i problemi relativi alle richieste e alle risposte corrispondenti. Il valore di questa intestazione è uguale al valore dell'intestazione x-ms-client-request-id , se è presente nella richiesta e il valore è al massimo 1.024 caratteri ASCII visibili. Se l'intestazione x-ms-client-request-id non è presente nella richiesta, questa intestazione non sarà presente nella risposta. |
Corpo della risposta
Nella versione 2020-04-08 e successive i tag corrispondenti del BLOB vengono incapsulati all'interno di un Tags
elemento. Il formato del corpo della risposta è il seguente:
<?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>
Il corpo della risposta è un documento XML UTF-8 ben formato.
Autorizzazione
L'autorizzazione è necessaria quando si chiama un'operazione di accesso ai dati in Archiviazione di Azure. È possibile autorizzare l'operazione Find Blobs by Tags
come descritto di seguito.
Importante
Microsoft consiglia di usare Microsoft Entra ID con identità gestite per autorizzare le richieste ad Archiviazione di Azure. Microsoft Entra ID offre maggiore sicurezza e facilità d'uso rispetto all'autorizzazione con chiave condivisa.
Archiviazione di Azure supporta l'uso di Microsoft Entra ID per autorizzare le richieste ai dati BLOB. Con Microsoft Entra ID è possibile usare il controllo degli accessi in base al ruolo di Azure per concedere le autorizzazioni a un'entità di sicurezza. L'entità di sicurezza può essere un utente, un gruppo, un'entità servizio applicazione o un'identità gestita di Azure. L'entità di sicurezza viene autenticata da Microsoft Entra ID per restituire un token OAuth 2.0. Il token può quindi essere usato per autorizzare una richiesta relativa al servizio BLOB.
Per altre informazioni sull'autorizzazione tramite Microsoft Entra ID, vedere Autorizzare l'accesso ai BLOB usando Microsoft Entra ID.
Autorizzazioni
Di seguito è riportata l'azione di controllo degli accessi in base al ruolo necessaria per un Microsoft Entra utente, un gruppo, un gruppo, un'identità gestita o un'entità servizio per chiamare l'operazione Find Blobs by Tags
e il ruolo controllo degli accessi in base al ruolo di Azure con privilegi minimi che include questa azione:
- Azione controllo degli accessi in base al ruolo di Azure:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/filter/action
- Ruolo predefinito con privilegi minimi:Proprietario dati BLOB di archiviazione
Per altre informazioni sull'assegnazione dei ruoli tramite il controllo degli accessi in base al ruolo di Azure, vedere Assegnare un ruolo di Azure per l'accesso ai dati BLOB.
Commenti
L'operazione Find Blobs by Tags
è supportata nell'API REST versione 2019-12-12 e successive.
Per gli account con spazio dei nomi gerarchico abilitato, l'operazione Find Blobs by Tags
non è supportata perché i tag BLOB non sono supportati per gli account dello spazio dei nomi gerarchico.
L'indice secondario utilizzato Find Blobs by Tags
è alla fine coerente. Aggiornamenti ai tag BLOB tramite Set Blob Tags
potrebbe non essere immediatamente visibile alle Find Blobs by Tags
operazioni.
Creazione di un'espressione di ricerca
Il where
parametro URI trova i BLOB nell'account di archiviazione i cui tag corrispondono a un'espressione. L'espressione deve restituire true
un BLOB nel set di risultati.
Il servizio di archiviazione supporta un subset della grammatica della clausola SQL WHERE
ANSI per il valore del where=<expression>
parametro di query. Il servizio di archiviazione supporta gli operatori seguenti:
Operatore | Descrizione | Esempio |
---|---|---|
= |
Uguale | &where=Status = 'In Progress' |
> |
Maggiore di | &where=LastModified > '2018-06-18 20:51:26Z' |
>= |
Maggiore o uguale a | &where=Priority >= '05' |
< |
Minore di | &where=Age < '032' |
<= |
Minore o uguale a | &where=Reviewer <= 'Smith' |
AND |
Logico e | &where=Name > 'C' AND Name < 'D' &where=Age > '032' AND Age < '100' |
@container |
Specificare un contenitore | &where=@container='mycontainer' AND Name = 'C' |
Nota
Il valore del where
parametro URI deve essere codificato correttamente con URI (inclusi gli spazi e gli operatori). Gli esempi precedenti omettono questo valore per la leggibilità.
Tutti i valori di tag sono stringhe. Gli operatori relazionali binari supportati usano un ordinamento lessicografico dei valori dei tag. Per supportare tipi di dati non stringa, inclusi numeri e date, è necessario usare la spaziatura interna e la formattazione ordinabile appropriata. I valori dei tag devono essere racchiusi tra virgolette singole.
Se i nomi dei tag sono identificatori SQL normali, possono essere presenti senza escape. Se contengono caratteri speciali, devono essere delimitati da virgolette doppie ,ad esempio "TagName"
= TagValue
. È consigliabile racchiudere sempre i nomi di tag tra virgolette doppie.
Il servizio di archiviazione rifiuterà qualsiasi richiesta contenente un'espressione non valida con codice di errore 400 (richiesta non valida).
Fatturazione
Le richieste di determinazione dei prezzi possono provenire dai client che usano le API di archiviazione BLOB, direttamente tramite l'API REST di Archiviazione BLOB o da una libreria client di Archiviazione di Azure. Queste richieste accumulano addebiti per transazione. Il tipo di transazione influisce sul modo in cui viene addebitato l'account. Ad esempio, le transazioni di lettura si accumulano in una categoria di fatturazione diversa rispetto alle transazioni di scrittura. La tabella seguente illustra la categoria di fatturazione per Find Blobs by Tags
le richieste in base al tipo di account di archiviazione:
Operazione | Tipo di account di archiviazione | Categoria di fatturazione |
---|---|---|
Trovare BLOB per tag | BLOB in blocchi Premium Utilizzo generico v2 Standard Standard per utilizzo generico v1 |
Elencare e Create operazioni del contenitore |
Per informazioni sui prezzi per la categoria di fatturazione specificata, vedere prezzi Archiviazione BLOB di Azure.
Vedi anche
Gestire e trovare dati in Archiviazione BLOB di Azure con tag di indice BLOB
Autorizzare le richieste ad Archiviazione di Azure
Stato e codici errore
Codici di errore di Archiviazione BLOB