BlobServiceClient Classe
Un client per interagire con il servizio BLOB a livello di account.
Questo client fornisce operazioni per recuperare e configurare le proprietà dell'account e l'elenco, creare ed eliminare contenitori all'interno dell'account. Per le operazioni relative a un contenitore o BLOB specifico, i client per tali entità possono essere recuperati anche usando le funzioni di get_client .
Per altre configurazioni facoltative, fare clic qui.
- Ereditarietà
-
azure.storage.blob._shared.base_client.StorageAccountHostsMixinBlobServiceClientazure.storage.blob._encryption.StorageEncryptionMixinBlobServiceClient
Costruttore
BlobServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
Parametri
- account_url
- str
URL dell'account di archiviazione BLOB. Tutte le altre entità incluse nel percorso URL (ad esempio contenitore o BLOB) verranno rimosse. Questo URL può essere autenticato facoltativamente con un token di firma di accesso condiviso.
- credential
Credenziali con cui eseguire l'autenticazione. Questo è facoltativo se l'URL dell'account ha già un token di firma di accesso condiviso. Il valore può essere una stringa di token sas, un'istanza di AzureSasCredential o AzureNamedKeyCredential da azure.core.credential, una chiave di accesso condiviso dell'account o un'istanza di una classe TokenCredentials da azure.identity. Se l'URI della risorsa contiene già un token di firma di accesso condiviso, questo verrà ignorato a favore di una credenziale esplicita
- tranne nel caso di AzureSasCredential, in cui i token sas in conflitto genereranno un valoreError. Se si usa un'istanza di AzureNamedKeyCredential, "name" deve essere il nome dell'account di archiviazione e "key" deve essere la chiave dell'account di archiviazione.
- api_version
- str
Versione dell'API di archiviazione da usare per le richieste. Il valore predefinito è la versione del servizio più recente compatibile con l'SDK corrente. L'impostazione su una versione precedente può comportare una riduzione della compatibilità delle funzionalità.
Novità nella versione 12.2.0.
- secondary_hostname
- str
Nome host dell'endpoint secondario.
- max_block_size
- int
Dimensioni massime del blocco per il caricamento di un BLOB a blocchi in blocchi. Il valore predefinito è 41024 1024o 4 MB.
- max_single_put_size
- int
Se le dimensioni del BLOB sono inferiori o uguali max_single_put_size, il BLOB verrà caricato con una sola richiesta PUT http. Se la dimensione del BLOB è maggiore di max_single_put_size, il BLOB verrà caricato in blocchi. Il valore predefinito è 641024 1024o 64 MB.
- min_large_block_upload_threshold
- int
Dimensioni minime di blocchi necessarie per usare l'algoritmo efficiente per la memoria durante il caricamento di un BLOB a blocchi. Il valore predefinito è 41024 1024+1.
- use_byte_buffer
- bool
Usare un buffer di byte per i caricamenti BLOB in blocchi. Il valore predefinito è False.
- max_page_size
- int
Dimensioni massime del blocco per il caricamento di un BLOB di pagine. Il valore predefinito è 41024 1024o 4 MB.
- max_single_get_size
- int
Le dimensioni massime per il download di un BLOB in una singola chiamata, la parte superata verrà scaricata in blocchi (potrebbe essere parallela). Il valore predefinito è32 1024 1024o 32 MB.
- max_chunk_get_size
- int
Dimensioni massime del blocco utilizzato per il download di un BLOB. Il valore predefinito è 41024 1024o 4 MB.
Metodi
close |
Questo metodo consiste nel chiudere i socket aperti dal client. Non è necessario usare quando si usa con un gestore di contesto. |
create_container |
Crea un nuovo contenitore nell'account specificato. Se il contenitore con lo stesso nome esiste già, verrà generato un oggetto ResourceExistsError. Questo metodo restituisce un client con cui interagire con il contenitore appena creato. |
delete_container |
Contrassegna il contenitore specificato per l'eliminazione. Il contenitore e tutti i BLOB in esso contenuti verranno eliminati in seguito durante un'operazione di Garbage Collection. Se il contenitore non viene trovato, verrà generato un oggetto ResourceNotFoundError. |
find_blobs_by_tags |
L'operazione Filtri BLOB consente ai chiamanti di elencare i BLOB in tutti i contenitori i cui tag corrispondono a un'espressione di ricerca specificata. Filtrare i BLOB esegue ricerche in tutti i contenitori all'interno di un account di archiviazione, ma può essere compreso nell'ambito dell'espressione in un singolo contenitore. |
from_connection_string |
Creare BLOBServiceClient da una stringa di connessione. |
get_account_information |
Ottiene informazioni correlate all'account di archiviazione. Le informazioni possono essere recuperate anche se l'utente ha una firma di accesso condiviso in un contenitore o un BLOB. Le chiavi nel dizionario restituito includono 'sku_name' e 'account_kind'. |
get_blob_client |
Ottenere un client per interagire con il BLOB specificato. Il BLOB non esiste già. |
get_container_client |
Ottenere un client per interagire con il contenitore specificato. Il contenitore non esiste già. |
get_service_properties |
Ottiene le proprietà del servizio BLOB di un account di archiviazione, tra cui Azure Analisi archiviazione. |
get_service_stats |
Recupera le statistiche correlate alla replica per il servizio BLOB. È disponibile solo quando la replica con ridondanza geografica di accesso in lettura è abilitata per l'account di archiviazione. Con la replica geograficamente ridondante, Archiviazione di Azure mantiene i dati durevoli in due posizioni. In entrambe le posizioni Archiviazione di Azure gestisce costantemente più repliche integre dei dati. La posizione in cui si leggono, creano, aggiornano o eliminano i dati è la posizione dell'account di archiviazione primaria. La posizione primaria esiste nell'area scelta al momento della creazione di un account tramite il portale di Azure Management Azure classico, ad esempio Stati Uniti centro-settentrionali. La posizione in cui i dati vengono replicati è la posizione secondaria. La posizione secondaria viene determinata automaticamente in base alla posizione primaria. Si tratta di un secondo data center che risiede nella stessa area geografica della posizione primaria. Dalla posizione secondaria è disponibile l'accesso in sola lettura se la replica geograficamente ridondante con accesso in lettura è abilitata per l'account di archiviazione. |
get_user_delegation_key |
Ottenere una chiave di delega utente allo scopo di firmare i token di firma di accesso condiviso. Una credenziale del token deve essere presente nell'oggetto del servizio per la riuscita della richiesta. |
list_containers |
Restituisce un generatore per elencare i contenitori nell'account specificato. Il generatore seguirà i token di continuazione restituiti dal servizio e arresterà quando tutti i contenitori sono stati restituiti. |
set_service_properties |
Imposta le proprietà del servizio BLOB di un account di archiviazione, tra cui Azure Analisi archiviazione. Se un elemento (ad esempio, analytics_logging) viene lasciato come Nessuno, le impostazioni esistenti nel servizio per tale funzionalità vengono mantenute. |
undelete_container |
Ripristina il contenitore eliminato in modo temporanea. L'operazione avrà esito positivo solo se viene usato entro il numero di giorni specificato impostato nei criteri di conservazione di eliminazione. Novità nella versione 12.4.0: questa operazione è stata introdotta nella versione API '2019-12-12'. |
close
Questo metodo consiste nel chiudere i socket aperti dal client. Non è necessario usare quando si usa con un gestore di contesto.
close()
create_container
Crea un nuovo contenitore nell'account specificato.
Se il contenitore con lo stesso nome esiste già, verrà generato un oggetto ResourceExistsError. Questo metodo restituisce un client con cui interagire con il contenitore appena creato.
create_container(name: str, metadata: Dict[str, str] | None = None, public_access: PublicAccess | str | None = None, **kwargs) -> ContainerClient
Parametri
Una dict con coppie nome-valore da associare al contenitore come metadati. Esempio: {'Category':'test'}
- public_access
- str oppure PublicAccess
I valori possibili includono: 'contenitore', 'BLOB'.
- container_encryption_scope
- dict oppure ContainerEncryptionScope
Specifica l'ambito di crittografia predefinito da impostare nel contenitore e usare per tutte le scritture future.
Novità nella versione 12.2.0.
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Tipo restituito
delete_container
Contrassegna il contenitore specificato per l'eliminazione.
Il contenitore e tutti i BLOB in esso contenuti verranno eliminati in seguito durante un'operazione di Garbage Collection. Se il contenitore non viene trovato, verrà generato un oggetto ResourceNotFoundError.
delete_container(container: ContainerProperties | str, lease: BlobLeaseClient | str | None = None, **kwargs) -> None
Parametri
- container
- str oppure ContainerProperties
Contenitore da eliminare. Può essere il nome del contenitore o un'istanza di ContainerProperties.
- lease
Se specificato, delete_container ha esito positivo solo se il lease del contenitore è attivo e corrisponde a questo ID. Obbligatorio se il contenitore ha un lease attivo.
- if_modified_since
- datetime
Valore DateTime. Azure prevede che il valore di data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo l'ora specificata.
- if_unmodified_since
- datetime
Valore DateTime. Azure prevede che il valore di data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.
- etag
- str
Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è cambiata e agire in base alla condizione specificata dal parametro match_condition .
- match_condition
- MatchConditions
Condizione di corrispondenza da utilizzare sul etag.
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Tipo restituito
find_blobs_by_tags
L'operazione Filtri BLOB consente ai chiamanti di elencare i BLOB in tutti i contenitori i cui tag corrispondono a un'espressione di ricerca specificata. Filtrare i BLOB esegue ricerche in tutti i contenitori all'interno di un account di archiviazione, ma può essere compreso nell'ambito dell'espressione in un singolo contenitore.
find_blobs_by_tags(filter_expression: str, **kwargs: Any) -> ItemPaged[FilteredBlob]
Parametri
- filter_expression
- str
Espressione per trovare BLOB i cui tag corrispondono alla condizione specificata. Ad esempio: ""yourtagname"='firsttag' e "yourtagname2"='secondtag'" Per specificare un contenitore, ad esempio. "@container='containerName' e "Name"='C'"
- results_per_page
- int
Risultato massimo per pagina quando si impagina.
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Restituisce
Risposta iterabile (paging automatico) di BLOBProperties.
Tipo restituito
from_connection_string
Creare BLOBServiceClient da una stringa di connessione.
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parametri
- credential
Credenziali con cui eseguire l'autenticazione. Questo è facoltativo se l'URL dell'account ha già un token di firma di accesso condiviso o la stringa di connessione ha già valori di chiave di accesso condiviso. Il valore può essere una stringa di token sas, un'istanza di AzureSasCredential o AzureNamedKeyCredential da azure.core.credential, una chiave di accesso condiviso dell'account o un'istanza di una classe TokenCredentials da azure.identity. Le credenziali fornite qui avranno la precedenza su quelle nella stringa di connessione. Se si usa un'istanza di AzureNamedKeyCredential, "name" deve essere il nome dell'account di archiviazione e "key" deve essere la chiave dell'account di archiviazione.
Restituisce
Client del servizio BLOB.
Tipo restituito
get_account_information
Ottiene informazioni correlate all'account di archiviazione.
Le informazioni possono essere recuperate anche se l'utente ha una firma di accesso condiviso in un contenitore o un BLOB. Le chiavi nel dizionario restituito includono 'sku_name' e 'account_kind'.
get_account_information(**kwargs: Any) -> Dict[str, str]
Restituisce
Una descrizione delle informazioni sull'account (SKU e tipo di account).
Tipo restituito
get_blob_client
Ottenere un client per interagire con il BLOB specificato.
Il BLOB non esiste già.
get_blob_client(container: ContainerProperties | str, blob: BlobProperties | str, snapshot: Dict[str, Any] | str | None = None, *, version_id: str | None = None) -> BlobClient
Parametri
- container
- str oppure ContainerProperties
Contenitore in cui si trova il BLOB. Può essere il nome del contenitore o un'istanza di ContainerProperties.
- blob
- str oppure BlobProperties
BLOB con cui interagire. Questo può essere il nome del BLOB o un'istanza di BlobProperties.
Snapshot BLOB facoltativo su cui operare. Questo può essere l'ID dello snapshot o un output del dizionario restituito da create_snapshot.
- version_id
- str
Il parametro id versione è un valore DateTime opaco su cui, quando presente, specifica la versione del BLOB da usare.
Restituisce
A BlobClient.
Tipo restituito
get_container_client
Ottenere un client per interagire con il contenitore specificato.
Il contenitore non esiste già.
get_container_client(container: ContainerProperties | str) -> ContainerClient
Parametri
- container
- str oppure ContainerProperties
Contenitore. Può essere il nome del contenitore o un'istanza di ContainerProperties.
Restituisce
ContenitoreClient.
Tipo restituito
get_service_properties
Ottiene le proprietà del servizio BLOB di un account di archiviazione, tra cui Azure Analisi archiviazione.
get_service_properties(**kwargs: Any) -> Dict[str, Any]
Parametri
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Restituisce
Oggetto contenente proprietà del servizio BLOB, ad esempio registrazione analisi, metriche orarie/minuti, regole cors e così via.
Tipo restituito
get_service_stats
Recupera le statistiche correlate alla replica per il servizio BLOB.
È disponibile solo quando la replica con ridondanza geografica di accesso in lettura è abilitata per l'account di archiviazione.
Con la replica geograficamente ridondante, Archiviazione di Azure mantiene i dati durevoli in due posizioni. In entrambe le posizioni Archiviazione di Azure gestisce costantemente più repliche integre dei dati. La posizione in cui si leggono, creano, aggiornano o eliminano i dati è la posizione dell'account di archiviazione primaria. La posizione primaria esiste nell'area scelta al momento della creazione di un account tramite il portale di Azure Management Azure classico, ad esempio Stati Uniti centro-settentrionali. La posizione in cui i dati vengono replicati è la posizione secondaria. La posizione secondaria viene determinata automaticamente in base alla posizione primaria. Si tratta di un secondo data center che risiede nella stessa area geografica della posizione primaria. Dalla posizione secondaria è disponibile l'accesso in sola lettura se la replica geograficamente ridondante con accesso in lettura è abilitata per l'account di archiviazione.
get_service_stats(**kwargs: Any) -> Dict[str, Any]
Parametri
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Restituisce
Statistiche del servizio Blob.
Tipo restituito
get_user_delegation_key
Ottenere una chiave di delega utente allo scopo di firmare i token di firma di accesso condiviso. Una credenziale del token deve essere presente nell'oggetto del servizio per la riuscita della richiesta.
get_user_delegation_key(key_start_time: datetime, key_expiry_time: datetime, **kwargs: Any) -> UserDelegationKey
Parametri
- key_expiry_time
- datetime
Valore DateTime. Indica quando la chiave smette di essere valida.
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Restituisce
Chiave di delega utente.
Tipo restituito
list_containers
Restituisce un generatore per elencare i contenitori nell'account specificato.
Il generatore seguirà i token di continuazione restituiti dal servizio e arresterà quando tutti i contenitori sono stati restituiti.
list_containers(name_starts_with: str | None = None, include_metadata: bool | None = False, **kwargs) -> ItemPaged[ContainerProperties]
Parametri
- name_starts_with
- str
Filtra i risultati per restituire solo contenitori i cui nomi iniziano con il prefisso specificato.
- include_metadata
- bool
Specifica che i metadati del contenitore da restituire nella risposta. Il valore predefinito è False.
- include_deleted
- bool
Specifica che i contenitori eliminati da restituire nella risposta. Si tratta di un account abilitato per il ripristino del contenitore. Il valore predefinito è False. .. versionadded:: 12.4.0
- include_system
- bool
Flag che specifica che i contenitori di sistema devono essere inclusi. .. versionadded:: 12.10.0
- results_per_page
- int
Numero massimo di nomi di contenitori da recuperare per chiamata API. Se la richiesta non specifica il server restituirà fino a 5.000 elementi.
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Restituisce
Iterabile (paging automatico) di ContainerProperties.
Tipo restituito
set_service_properties
Imposta le proprietà del servizio BLOB di un account di archiviazione, tra cui Azure Analisi archiviazione.
Se un elemento (ad esempio, analytics_logging) viene lasciato come Nessuno, le impostazioni esistenti nel servizio per tale funzionalità vengono mantenute.
set_service_properties(analytics_logging: BlobAnalyticsLogging | None = None, hour_metrics: Metrics | None = None, minute_metrics: Metrics | None = None, cors: List[CorsRule] | None = None, target_version: str | None = None, delete_retention_policy: RetentionPolicy | None = None, static_website: StaticWebsite | None = None, **kwargs) -> None
Parametri
- analytics_logging
- BlobAnalyticsLogging
Raggruppa le impostazioni di registrazione di Azure Analytics.
- hour_metrics
- Metrics
Le impostazioni delle metriche orarie forniscono un riepilogo delle statistiche richieste raggruppate dall'API in aggregazioni orarie per i BLOB.
- minute_metrics
- Metrics
Le impostazioni delle metriche minuti forniscono statistiche di richiesta per ogni minuto per i BLOB.
È possibile includere fino a cinque elementi CorsRule nell'elenco. Se viene specificato un elenco vuoto, tutte le regole CORS verranno eliminate e CORS verrà disabilitata per il servizio.
- target_version
- str
Indica la versione predefinita da usare per le richieste se non è specificata la versione di una richiesta in ingresso.
- delete_retention_policy
- RetentionPolicy
Il criterio di conservazione elimina specifica se conservare i BLOB eliminati. Specifica anche il numero di giorni e versioni del BLOB da mantenere.
- static_website
- StaticWebsite
Specifica se la funzionalità del sito Web statico è abilitata e, se sì, indica il documento di errore di indice e 404 da usare.
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Tipo restituito
undelete_container
Ripristina il contenitore eliminato in modo temporanea.
L'operazione avrà esito positivo solo se viene usato entro il numero di giorni specificato impostato nei criteri di conservazione di eliminazione.
Novità nella versione 12.4.0: questa operazione è stata introdotta nella versione API '2019-12-12'.
undelete_container(deleted_container_name: str, deleted_container_version: str, **kwargs: Any) -> ContainerClient
Parametri
- deleted_container_version
- str
Specifica la versione del contenitore eliminato da ripristinare.
- timeout
- int
Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.
Restituisce
Contenitore non specificatoClient.
Tipo restituito
Attributi
api_version
Versione dell'API di archiviazione usata per le richieste.
location_mode
Modalità percorso attualmente usata dal client.
Per impostazione predefinita, questo sarà "primario". Le opzioni includono "primary" e "secondary".
primary_endpoint
URL dell'endpoint primario completo.
primary_hostname
Nome host dell'endpoint primario.
secondary_endpoint
URL dell'endpoint secondario completo se configurato.
Se non è disponibile, verrà generato un valore ValueError. Per specificare in modo esplicito un nome host secondario, usare l'argomento della parola chiave facoltativo secondary_hostname nell'istanza.
Eccezioni
secondary_hostname
Nome host dell'endpoint secondario.
Se non è disponibile, questo sarà Nessuno. Per specificare in modo esplicito un nome host secondario, usare l'argomento della parola chiave facoltativo secondary_hostname nell'istanza.
url
URL completo dell'endpoint per questa entità, incluso il token di firma di accesso condiviso se usato.
Questo potrebbe essere l'endpoint primario o l'endpoint secondario a seconda dell'oggetto corrente location_mode. :restituisce: URL completo dell'endpoint per questa entità, incluso il token di firma di accesso condiviso se usato. :rtype: str
Azure SDK for Python