ShareServiceClient Classe
Um cliente para interagir com o Serviço de Compartilhamento de Arquivos no nível da conta.
Esse cliente fornece operações para recuperar e configurar as propriedades da conta, bem como listar, criar e excluir compartilhamentos dentro da conta. Para operações relacionadas a um compartilhamento específico, um cliente para essa entidade também pode ser recuperado usando a get_share_client função .
Para obter mais configurações opcionais, clique aqui.
- Herança
-
azure.storage.fileshare._shared.base_client.StorageAccountHostsMixinShareServiceClient
Construtor
ShareServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, *, token_intent: Literal['backup'] | None = None, **kwargs: Any)
Parâmetros
- account_url
- str
A URL para a conta de armazenamento de compartilhamento de arquivos. Todas as outras entidades incluídas no caminho da URL (por exemplo, compartilhamento ou arquivo) serão descartadas. Essa URL pode ser autenticada opcionalmente com um token SAS.
- credential
As credenciais com as quais autenticar. Isso será opcional se a URL da conta já tiver um token SAS. O valor pode ser uma cadeia de caracteres de token SAS, uma instância de um AzureSasCredential ou AzureNamedKeyCredential de azure.core.credentials, uma chave de acesso compartilhado de conta ou uma instância de uma classe TokenCredentials de azure.identity. Se o URI do recurso já contiver um token SAS, isso será ignorado em favor de uma credencial explícita
- exceto no caso de AzureSasCredential, em que os tokens SAS conflitantes gerarão um ValueError. Se estiver usando uma instância de AzureNamedKeyCredential, "name" deverá ser o nome da conta de armazenamento e "key" deverá ser a chave da conta de armazenamento.
- token_intent
- Literal['backup']
Necessário ao usar TokenCredential para autenticação e ignorado para outras formas de autenticação. Especifica a intenção para todas as solicitações ao usar a autenticação TokenCredential . Os valores possíveis são:
backup – especifica que as solicitações são destinadas a operações de tipo de backup/administrador, o que significa que todas as ACLs de arquivo/diretório são ignoradas e permissões completas são concedidas. O usuário também deve ter a permissão RBAC necessária.
- allow_trailing_dot
- bool
Se for true, o ponto à direita não será cortado do URI de destino.
- allow_source_trailing_dot
- bool
Se for true, o ponto à direita não será cortado do URI de origem.
- api_version
- str
A versão da API de Armazenamento a ser usada para solicitações. O valor padrão é a versão de serviço mais recente compatível com o SDK atual. A configuração para uma versão mais antiga pode resultar em redução da compatibilidade de recursos.
Novo na versão 12.1.0.
- secondary_hostname
- str
O nome do host do ponto de extremidade secundário.
- max_range_size
- int
O tamanho máximo do intervalo usado para um upload de arquivo. O padrão é 4*1024*1024
.
Exemplos
Crie o cliente de serviço de compartilhamento com a URL e a credencial.
from azure.storage.fileshare import ShareServiceClient
share_service_client = ShareServiceClient(
account_url=self.account_url,
credential=self.access_key
)
Métodos
close |
Esse método é para fechar os soquetes abertos pelo cliente. Ele não precisa ser usado ao usar com um gerenciador de contexto. |
create_share |
Cria um novo compartilhamento na conta especificada. Se o compartilhamento com o mesmo nome já existir, a operação falhará. Retorna um cliente com o qual interagir com o compartilhamento recém-criado. |
delete_share |
Marca o compartilhamento especificado para exclusão. O compartilhamento é excluído posteriormente durante a coleta de lixo. |
from_connection_string |
Crie ShareServiceClient a partir de uma cadeia de conexão. |
get_service_properties |
Obtém as propriedades do serviço de Compartilhamento de Arquivos de uma conta de armazenamento, incluindo a Análise de Armazenamento do Azure. |
get_share_client |
Faça com que um cliente interaja com o compartilhamento especificado. O compartilhamento ainda não precisa existir. |
list_shares |
Retorna iterável de paginação automática de ShareProperties semelhantes a ditados na conta especificada. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço e será interrompido quando todos os compartilhamentos forem retornados. |
set_service_properties |
Define as propriedades do serviço de Compartilhamento de Arquivos de uma conta de armazenamento, incluindo a Análise de Armazenamento do Azure. Se um elemento (por exemplo, hour_metrics) for deixado como Nenhum, as configurações existentes no serviço para essa funcionalidade serão preservadas. |
undelete_share |
Restaura o compartilhamento excluído temporariamente. A operação só será bem-sucedida se for usada dentro do número especificado de dias definido na política de retenção de exclusão. Novidade na versão 12.2.0: essa operação foi introduzida na versão da API '2019-12-12'. |
close
Esse método é para fechar os soquetes abertos pelo cliente. Ele não precisa ser usado ao usar com um gerenciador de contexto.
close()
create_share
Cria um novo compartilhamento na conta especificada. Se o compartilhamento com o mesmo nome já existir, a operação falhará. Retorna um cliente com o qual interagir com o compartilhamento recém-criado.
create_share(share_name: str, **kwargs) -> ShareClient
Parâmetros
Um dict com name_value pares a serem associados ao compartilhamento como metadados. Exemplo:{'Category':'test'}
- quota
- int
Cota em bytes.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.
Retornos
Um ShareClient para o Compartilhamento recém-criado.
Tipo de retorno
Exemplos
Crie um compartilhamento no serviço de compartilhamento de arquivos.
file_service.create_share(share_name="fileshare1")
delete_share
Marca o compartilhamento especificado para exclusão. O compartilhamento é excluído posteriormente durante a coleta de lixo.
delete_share(share_name: ShareProperties | str, delete_snapshots: bool | None = False, **kwargs) -> None
Parâmetros
- share_name
- str ou ShareProperties
O compartilhamento a ser excluído. Pode ser o nome do compartilhamento ou uma instância de ShareProperties.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.
Tipo de retorno
Exemplos
Exclua um compartilhamento no serviço de compartilhamento de arquivos.
file_service.delete_share(share_name="fileshare1")
from_connection_string
Crie ShareServiceClient a partir de uma cadeia de conexão.
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parâmetros
- credential
As credenciais com as quais autenticar. Isso será opcional se a URL da conta já tiver um token SAS. O valor pode ser uma cadeia de caracteres de token SAS, uma instância de um AzureSasCredential ou AzureNamedKeyCredential de azure.core.credentials, uma chave de acesso compartilhado de conta ou uma instância de uma classe TokenCredentials de azure.identity. Se o URI do recurso já contiver um token SAS, isso será ignorado em favor de uma credencial explícita
- exceto no caso de AzureSasCredential, em que os tokens SAS conflitantes gerarão um ValueError. Se estiver usando uma instância de AzureNamedKeyCredential, "name" deverá ser o nome da conta de armazenamento e "key" deverá ser a chave da conta de armazenamento.
Retornos
Um cliente de serviço de Compartilhamento de Arquivos.
Tipo de retorno
Exemplos
Crie o cliente de serviço de compartilhamento com a cadeia de conexão.
from azure.storage.fileshare import ShareServiceClient
share_service_client = ShareServiceClient.from_connection_string(self.connection_string)
get_service_properties
Obtém as propriedades do serviço de Compartilhamento de Arquivos de uma conta de armazenamento, incluindo a Análise de Armazenamento do Azure.
get_service_properties(**kwargs: Any) -> Dict[str, Any]
Parâmetros
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.
Retornos
Um dicionário que contém propriedades do serviço de arquivo, como log de análise, métricas de hora/minuto, regras de cors etc.
Tipo de retorno
Exemplos
Obter propriedades do serviço de compartilhamento de arquivos.
properties = file_service.get_service_properties()
get_share_client
Faça com que um cliente interaja com o compartilhamento especificado. O compartilhamento ainda não precisa existir.
get_share_client(share: ShareProperties | str, snapshot: Dict[str, Any] | str | None = None) -> ShareClient
Parâmetros
- share
- str ou ShareProperties
O compartilhamento. Pode ser o nome do compartilhamento ou uma instância de ShareProperties.
- snapshot
- str
Um compartilhamento opcional instantâneo no qual operar. Pode ser a cadeia de caracteres de ID instantâneo ou a resposta retornada de <xref:azure.storage.fileshare.create_snapshot>.
Retornos
Um ShareClient.
Tipo de retorno
Exemplos
Obtém o cliente de compartilhamento.
from azure.storage.fileshare import ShareServiceClient
file_service = ShareServiceClient.from_connection_string(self.connection_string)
# Get a share client to interact with a specific share
share = file_service.get_share_client("fileshare2")
list_shares
Retorna iterável de paginação automática de ShareProperties semelhantes a ditados na conta especificada. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço e será interrompido quando todos os compartilhamentos forem retornados.
list_shares(name_starts_with: str | None = None, include_metadata: bool | None = False, include_snapshots: bool | None = False, **kwargs) -> ItemPaged[ShareProperties]
Parâmetros
- name_starts_with
- str
Filtra os resultados para retornar apenas compartilhamentos cujos nomes começam com o name_starts_with especificado.
- include_metadata
- bool
Especifica que os metadados de compartilhamento sejam retornados na resposta.
- include_snapshots
- bool
Especifica que o compartilhamento instantâneo ser retornado na resposta.
- include_deleted
- bool
Especifica que os compartilhamentos excluídos sejam retornados na resposta. Isso é apenas para a conta habilitada para exclusão temporária de compartilhamento.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
Um iterável (paginação automática) do ShareProperties.
Tipo de retorno
Exemplos
Listar compartilhamentos no serviço de compartilhamento de arquivos.
# List the shares in the file service
my_shares = list(file_service.list_shares())
# Print the shares
for share in my_shares:
print(share)
set_service_properties
Define as propriedades do serviço de Compartilhamento de Arquivos de uma conta de armazenamento, incluindo a Análise de Armazenamento do Azure. Se um elemento (por exemplo, hour_metrics) for deixado como Nenhum, as configurações existentes no serviço para essa funcionalidade serão preservadas.
set_service_properties(hour_metrics: Metrics | None = None, minute_metrics: Metrics | None = None, cors: List[CorsRule] | None = None, protocol: ShareProtocolSettings | None = None, **kwargs) -> None
Parâmetros
- hour_metrics
- Metrics
As configurações de métricas de hora fornecem um resumo das estatísticas de solicitação agrupadas pela API em agregações por hora para arquivos.
- minute_metrics
- Metrics
As configurações de métricas de minuto fornecem estatísticas de solicitação para cada minuto para arquivos.
- cors
- list(CorsRule)
Você pode incluir até cinco elementos CorsRule na lista. Se uma lista vazia for especificada, todas as regras CORS serão excluídas e o CORS será desabilitado para o serviço.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Tipo de retorno
Exemplos
Define as propriedades do serviço de compartilhamento de arquivos.
# Create service properties
from azure.storage.fileshare import Metrics, CorsRule, RetentionPolicy
# Create metrics for requests statistics
hour_metrics = Metrics(enabled=True, include_apis=True, retention_policy=RetentionPolicy(enabled=True, days=5))
minute_metrics = Metrics(enabled=True, include_apis=True,
retention_policy=RetentionPolicy(enabled=True, days=5))
# Create CORS rules
cors_rule1 = CorsRule(['www.xyz.com'], ['GET'])
allowed_origins = ['www.xyz.com', "www.ab.com", "www.bc.com"]
allowed_methods = ['GET', 'PUT']
max_age_in_seconds = 500
exposed_headers = ["x-ms-meta-data*", "x-ms-meta-source*", "x-ms-meta-abc", "x-ms-meta-bcd"]
allowed_headers = ["x-ms-meta-data*", "x-ms-meta-target*", "x-ms-meta-xyz", "x-ms-meta-foo"]
cors_rule2 = CorsRule(
allowed_origins,
allowed_methods,
max_age_in_seconds=max_age_in_seconds,
exposed_headers=exposed_headers,
allowed_headers=allowed_headers)
cors = [cors_rule1, cors_rule2]
# Set the service properties
file_service.set_service_properties(hour_metrics, minute_metrics, cors)
undelete_share
Restaura o compartilhamento excluído temporariamente.
A operação só será bem-sucedida se for usada dentro do número especificado de dias definido na política de retenção de exclusão.
Novidade na versão 12.2.0: essa operação foi introduzida na versão da API '2019-12-12'.
undelete_share(deleted_share_name: str, deleted_share_version: str, **kwargs: Any) -> ShareClient
Parâmetros
- deleted_share_version
- str
Especifica a versão do compartilhamento excluído a ser restaurado.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
Um ShareClient para o compartilhamento não selecionado.
Tipo de retorno
Atributos
api_version
A versão da API de Armazenamento usada para solicitações.
location_mode
O modo de localização que o cliente está usando no momento.
Por padrão, isso será "primário". As opções incluem "primário" e "secundário".
primary_endpoint
A URL completa do ponto de extremidade primário.
primary_hostname
O nome do host do ponto de extremidade primário.
secondary_endpoint
A URL completa do ponto de extremidade secundário, se configurada.
Se não estiver disponível, um ValueError será gerado. Para especificar explicitamente um nome de host secundário, use o argumento opcional secondary_hostname palavra-chave na instanciação.
Exceções
secondary_hostname
O nome do host do ponto de extremidade secundário.
Se não estiver disponível, será Nenhum. Para especificar explicitamente um nome de host secundário, use o argumento opcional secondary_hostname palavra-chave na instanciação.
url
A URL completa do ponto de extremidade para essa entidade, incluindo o token SAS, se usado.
Isso pode ser o ponto de extremidade primário ou o ponto de extremidade secundário, dependendo do atual location_mode. :returns: a URL completa do ponto de extremidade para essa entidade, incluindo o token SAS, se usado. :rtype: str
Azure SDK for Python