ShareServiceClient Klasse
Ein Client, der mit dem Dateifreigabedienst auf Kontoebene interagiert.
Dieser Client bietet Vorgänge zum Abrufen und Konfigurieren der Kontoeigenschaften sowie zum Auflisten, Erstellen und Löschen von Freigaben innerhalb des Kontos. Bei Vorgängen im Zusammenhang mit einer bestimmten Freigabe kann auch ein Client für diese Entität mithilfe der get_share_client -Funktion abgerufen werden.
Weitere optionale Konfigurationen finden Sie hier.
- Vererbung
-
azure.storage.fileshare._shared.base_client.StorageAccountHostsMixinShareServiceClient
Konstruktor
ShareServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, *, token_intent: Literal['backup'] | None = None, **kwargs: Any)
Parameter
- account_url
- str
Die URL des Dateifreigabespeicherkontos. Alle anderen Entitäten, die im URL-Pfad enthalten sind (z. B. Freigabe oder Datei), werden verworfen. Diese URL kann optional mit einem SAS-Token authentifiziert werden.
- credential
Die Anmeldeinformationen, mit denen die Authentifizierung erfolgt. Dies ist optional, wenn die Konto-URL bereits über ein SAS-Token verfügt. Der Wert kann eine SAS-Tokenzeichenfolge, ein instance einer AzureSasCredential- oder AzureNamedKeyCredential-Instanz von azure.core.credentials, ein freigegebener Zugriffsschlüssel für ein Konto oder ein instance einer TokenCredentials-Klasse aus azure.identity sein. Wenn der Ressourcen-URI bereits ein SAS-Token enthält, wird dies zugunsten expliziter Anmeldeinformationen ignoriert.
- außer im Fall von AzureSasCredential, bei dem die in Konflikt stehenden SAS-Token einen ValueError auslösen. Wenn Sie eine instance von AzureNamedKeyCredential verwenden, sollte "name" der Name des Speicherkontos und "key" der Speicherkontoschlüssel sein.
- token_intent
- Literal['backup']
Erforderlich, wenn TokenCredential für die Authentifizierung verwendet wird und für andere Authentifizierungsformen ignoriert wird. Gibt die Absicht für alle Anforderungen an, wenn die TokenCredential-Authentifizierung verwendet wird . Mögliche Werte:
Sicherung: Gibt an, dass Anforderungen für Vorgänge vom Sicherungs-/Administratortyp vorgesehen sind, was bedeutet, dass alle Datei-/Verzeichnis-ACLs umgangen und vollständige Berechtigungen erteilt werden. Der Benutzer muss auch über die erforderliche RBAC-Berechtigung verfügen.
- allow_trailing_dot
- bool
Wenn true, wird der nachfolgende Punkt nicht vom Ziel-URI gekürzt.
- allow_source_trailing_dot
- bool
Wenn true, wird der nachfolgende Punkt nicht vom Quell-URI gekürzt.
- api_version
- str
Die Speicher-API-Version, die für Anforderungen verwendet werden soll. Der Standardwert ist die neueste Dienstversion, die mit dem aktuellen SDK kompatibel ist. Die Einstellung auf eine ältere Version kann zu einer geringeren Featurekompatibilität führen.
Neu in Version 12.1.0.
- secondary_hostname
- str
Der Hostname des sekundären Endpunkts.
- max_range_size
- int
Die maximale Bereichsgröße, die für einen Dateiupload verwendet wird. Standardwert ist 4*1024*1024
.
Beispiele
Erstellen Sie den Freigabedienstclient mit URL und Anmeldeinformationen.
from azure.storage.fileshare import ShareServiceClient
share_service_client = ShareServiceClient(
account_url=self.account_url,
credential=self.access_key
)
Methoden
close |
Diese Methode besteht darin, die vom Client geöffneten Sockets zu schließen. Es muss nicht verwendet werden, wenn sie mit einem Kontext-Manager verwendet wird. |
create_share |
Erstellt eine neue Freigabe unter dem angegebenen Konto. Wenn eine Freigabe mit demselben Namen bereits vorhanden ist, misslingt der Vorgang. Gibt einen Client zurück, mit dem mit der neu erstellten Freigabe interagieren soll. |
delete_share |
Markiert die angegebene Freigabe zum Löschen. Die Freigabe wird später während der Garbage Collection gelöscht. |
from_connection_string |
Erstellen Sie ShareServiceClient aus einer Verbindungszeichenfolge. |
get_service_properties |
Ruft die Eigenschaften des Dateifreigabediensts eines Speicherkontos ab, einschließlich Azure Storage Analytics. |
get_share_client |
Rufen Sie einen Client für die Interaktion mit der angegebenen Freigabe ab. Die Freigabe muss noch nicht vorhanden sein. |
list_shares |
Gibt auto-paging iterable of dict-like ShareProperties unter dem angegebenen Konto zurück. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken und beendet, wenn alle Freigaben zurückgegeben wurden. |
set_service_properties |
Legt die Eigenschaften des Dateifreigabediensts eines Speicherkontos fest, einschließlich Azure Storage Analytics. Wenn ein Element (z. B. hour_metrics) als None belassen wird, werden die vorhandenen Einstellungen für den Dienst für diese Funktionalität beibehalten. |
undelete_share |
Stellt vorläufig gelöschte Freigabe wieder her. Der Vorgang ist nur erfolgreich, wenn er innerhalb der angegebenen Anzahl von Tagen verwendet wird, die in der Aufbewahrungsrichtlinie für Löschvorgänge festgelegt ist. Neu in Version 12.2.0: Dieser Vorgang wurde in der API-Version "2019-12-12" eingeführt. |
close
Diese Methode besteht darin, die vom Client geöffneten Sockets zu schließen. Es muss nicht verwendet werden, wenn sie mit einem Kontext-Manager verwendet wird.
close()
create_share
Erstellt eine neue Freigabe unter dem angegebenen Konto. Wenn eine Freigabe mit demselben Namen bereits vorhanden ist, misslingt der Vorgang. Gibt einen Client zurück, mit dem mit der neu erstellten Freigabe interagieren soll.
create_share(share_name: str, **kwargs) -> ShareClient
Parameter
Ein Diktat mit name_value Paaren, die der Freigabe als Metadaten zugeordnet werden sollen. Beispiel:{'Category':'test'}
- quota
- int
Kontingent in Bytes.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein ShareClient für die neu erstellte Freigabe.
Rückgabetyp
Beispiele
Erstellen Sie eine Freigabe im Dateifreigabedienst.
file_service.create_share(share_name="fileshare1")
delete_share
Markiert die angegebene Freigabe zum Löschen. Die Freigabe wird später während der Garbage Collection gelöscht.
delete_share(share_name: ShareProperties | str, delete_snapshots: bool | None = False, **kwargs) -> None
Parameter
- share_name
- str oder ShareProperties
Die zu löschende Freigabe. Dies kann entweder der Name der Freigabe oder ein instance von ShareProperties sein.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Rückgabetyp
Beispiele
Löschen Sie eine Freigabe im Dateifreigabedienst.
file_service.delete_share(share_name="fileshare1")
from_connection_string
Erstellen Sie ShareServiceClient aus einer Verbindungszeichenfolge.
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parameter
- credential
Die Anmeldeinformationen, mit denen die Authentifizierung erfolgt. Dies ist optional, wenn die Konto-URL bereits über ein SAS-Token verfügt. Der Wert kann eine SAS-Tokenzeichenfolge, ein instance einer AzureSasCredential- oder AzureNamedKeyCredential-Instanz von azure.core.credentials, ein freigegebener Zugriffsschlüssel für ein Konto oder ein instance einer TokenCredentials-Klasse aus azure.identity sein. Wenn der Ressourcen-URI bereits ein SAS-Token enthält, wird dies zugunsten expliziter Anmeldeinformationen ignoriert.
- außer im Fall von AzureSasCredential, bei dem die in Konflikt stehenden SAS-Token einen ValueError auslösen. Wenn Sie eine instance von AzureNamedKeyCredential verwenden, sollte "name" der Name des Speicherkontos und "key" der Speicherkontoschlüssel sein.
Gibt zurück
Ein Client des Dateifreigabediensts.
Rückgabetyp
Beispiele
Erstellen Sie den Freigabedienstclient mit Verbindungszeichenfolge.
from azure.storage.fileshare import ShareServiceClient
share_service_client = ShareServiceClient.from_connection_string(self.connection_string)
get_service_properties
Ruft die Eigenschaften des Dateifreigabediensts eines Speicherkontos ab, einschließlich Azure Storage Analytics.
get_service_properties(**kwargs: Any) -> Dict[str, Any]
Parameter
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein Wörterbuch mit Dateidiensteigenschaften wie Analyseprotokollierung, Stunden-/Minutenmetriken, Cors-Regeln usw.
Rückgabetyp
Beispiele
Abrufen von Dateifreigabediensteigenschaften.
properties = file_service.get_service_properties()
get_share_client
Rufen Sie einen Client für die Interaktion mit der angegebenen Freigabe ab. Die Freigabe muss noch nicht vorhanden sein.
get_share_client(share: ShareProperties | str, snapshot: Dict[str, Any] | str | None = None) -> ShareClient
Parameter
- share
- str oder ShareProperties
Die Freigabe. Dies kann entweder der Name der Freigabe oder ein instance von ShareProperties sein.
- snapshot
- str
Eine optionale Freigabe Momentaufnahme, für die der Betrieb ausgeführt werden soll. Dies kann die Momentaufnahme-ID-Zeichenfolge oder die von <xref:azure.storage.fileshare.create_snapshot>zurückgegebene Antwort sein.
Gibt zurück
Ein ShareClient.
Rückgabetyp
Beispiele
Ruft den Freigabeclient ab.
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
Gibt auto-paging iterable of dict-like ShareProperties unter dem angegebenen Konto zurück. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken und beendet, wenn alle Freigaben zurückgegeben wurden.
list_shares(name_starts_with: str | None = None, include_metadata: bool | None = False, include_snapshots: bool | None = False, **kwargs) -> ItemPaged[ShareProperties]
Parameter
- name_starts_with
- str
Filtert die Ergebnisse so, dass nur Freigaben zurückgegeben werden, deren Namen mit dem angegebenen name_starts_with beginnen.
- include_metadata
- bool
Gibt an, dass Freigabemetadaten in der Antwort zurückgegeben werden.
- include_snapshots
- bool
Gibt an, dass die Freigabe in der Antwort zurückgegeben Momentaufnahme.
- include_deleted
- bool
Gibt an, dass gelöschte Freigaben in der Antwort zurückgegeben werden. Dies gilt nur für freigabefähige Konten mit aktiviertem vorläufigem Löschen.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein iterierbares (automatisches Paging) von ShareProperties.
Rückgabetyp
Beispiele
Listen Sie Freigaben im Dateifreigabedienst auf.
# 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
Legt die Eigenschaften des Dateifreigabediensts eines Speicherkontos fest, einschließlich Azure Storage Analytics. Wenn ein Element (z. B. hour_metrics) als None belassen wird, werden die vorhandenen Einstellungen für den Dienst für diese Funktionalität beibehalten.
set_service_properties(hour_metrics: Metrics | None = None, minute_metrics: Metrics | None = None, cors: List[CorsRule] | None = None, protocol: ShareProtocolSettings | None = None, **kwargs) -> None
Parameter
- hour_metrics
- Metrics
Die Stundenmetrikeneinstellungen bieten eine Zusammenfassung der Anforderungsstatistiken, die nach API gruppiert sind, in stündlich aggregierten Dateien.
- minute_metrics
- Metrics
Die Minutenmetrikeneinstellungen stellen Anforderungsstatistiken für jede Minute für Dateien bereit.
- cors
- list(CorsRule)
Sie können bis zu fünf CorsRule-Elemente in die Liste aufnehmen. Wenn eine leere Liste angegeben wird, werden alle CORS-Regeln gelöscht, und CORS wird für den Dienst deaktiviert.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Rückgabetyp
Beispiele
Legt Eigenschaften des Dateifreigabediensts fest.
# 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
Stellt vorläufig gelöschte Freigabe wieder her.
Der Vorgang ist nur erfolgreich, wenn er innerhalb der angegebenen Anzahl von Tagen verwendet wird, die in der Aufbewahrungsrichtlinie für Löschvorgänge festgelegt ist.
Neu in Version 12.2.0: Dieser Vorgang wurde in der API-Version "2019-12-12" eingeführt.
undelete_share(deleted_share_name: str, deleted_share_version: str, **kwargs: Any) -> ShareClient
Parameter
- deleted_share_name
- str
Gibt den Namen der wiederherzustellenden gelöschten Freigabe an.
- deleted_share_version
- str
Gibt die Version der wiederherzustellenden gelöschten Freigabe an.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein ShareClient für die nicht gelöschte Freigabe.
Rückgabetyp
Attribute
api_version
Die Version der Speicher-API, die für Anforderungen verwendet wird.
location_mode
Der Standortmodus, den der Client derzeit verwendet.
Standardmäßig ist dies "primär". Zu den Optionen gehören "primär" und "sekundär".
primary_endpoint
Die vollständige URL des primären Endpunkts.
primary_hostname
Der Hostname des primären Endpunkts.
secondary_endpoint
Die vollständige sekundäre Endpunkt-URL, falls konfiguriert.
Wenn kein Wertfehler verfügbar ist, wird ein ValueError ausgelöst. Um einen sekundären Hostnamen explizit anzugeben, verwenden Sie das optionale secondary_hostname Schlüsselwort (keyword) Argument für die Instanziierung.
Ausnahmen
secondary_hostname
Der Hostname des sekundären Endpunkts.
Falls nicht verfügbar, ist dies Keine. Um einen sekundären Hostnamen explizit anzugeben, verwenden Sie das optionale secondary_hostname Schlüsselwort (keyword) Argument für die Instanziierung.
url
Die vollständige Endpunkt-URL für diese Entität, einschließlich SAS-Token, falls verwendet.
Dies kann entweder der primäre Endpunkt oder der sekundäre Endpunkt sein, abhängig vom aktuellen location_mode. :returns: Die vollständige Endpunkt-URL für diese Entität, einschließlich SAS-Token, falls verwendet. :rtype: str
Azure SDK for Python