ShareServiceClient クラス
アカウント レベルでファイル共有サービスと対話するクライアント。
このクライアントは、アカウントのプロパティの取得と構成、およびアカウント内の共有の一覧表示、作成、削除を行う操作を提供します。 特定の共有に関連する操作の場合は、 関数を使用してそのエンティティのクライアントを get_share_client 取得することもできます。
その他のオプションの構成については、 ここをクリックしてください。
- 継承
-
azure.storage.fileshare._shared.base_client.StorageAccountHostsMixinShareServiceClient
コンストラクター
ShareServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, *, token_intent: Literal['backup'] | None = None, **kwargs: Any)
パラメーター
- account_url
- str
ファイル共有ストレージ アカウントの URL。 URL パスに含まれるその他のエンティティ (共有やファイルなど) は破棄されます。 この URL は、必要に応じて SAS トークンを使用して認証できます。
- credential
認証に使用する資格情報。 アカウント URL に SAS トークンが既に含まれている場合、これは省略可能です。 値には、SAS トークン文字列、azure.core.credentials の AzureSasCredential または AzureNamedKeyCredential のインスタンス、アカウント共有アクセス キー、または azure.identity からの TokenCredentials クラスのインスタンスを指定できます。 リソース URI に SAS トークンが既に含まれている場合、明示的な資格情報を優先して無視されます
- ただし、競合する SAS トークンによって ValueError が発生する AzureSasCredential の場合を除きます。 AzureNamedKeyCredential のインスタンスを使用する場合は、"name" をストレージ アカウント名に、"key" をストレージ アカウント キーにする必要があります。
- token_intent
- Literal['backup']
認証に TokenCredential を使用する場合は必須で、他の形式の認証では無視されます。 TokenCredential 認証を使用する場合のすべての要求の意図を指定します。 次のいずれかの値になります。
backup - 要求はバックアップ/管理者の種類の操作を目的としており、すべてのファイル/ディレクトリ ACL がバイパスされ、完全なアクセス許可が付与されることを意味します。 ユーザーには、必要な RBAC アクセス許可も必要です。
- allow_trailing_dot
- bool
true の場合、末尾のドットはターゲット URI からトリミングされません。
- allow_source_trailing_dot
- bool
true の場合、末尾のドットはソース URI からトリミングされません。
- api_version
- str
要求に使用する Storage API バージョン。 既定値は、現在の SDK と互換性のある最新のサービス バージョンです。 古いバージョンに設定すると、機能の互換性が低下する可能性があります。
バージョン 12.1.0 の新機能。
- secondary_hostname
- str
セカンダリ エンドポイントのホスト名。
- max_range_size
- int
ファイルのアップロードに使用される最大範囲サイズ。 既定値は 4*1024*1024
です。
例
URL と資格情報を使用して共有サービス クライアントを作成します。
from azure.storage.fileshare import ShareServiceClient
share_service_client = ShareServiceClient(
account_url=self.account_url,
credential=self.access_key
)
メソッド
close |
このメソッドは、クライアントによって開かれたソケットを閉じる方法です。 コンテキスト マネージャーで を使用する場合は使用する必要はありません。 |
create_share |
指定したアカウントの下に新しい共有を作成します。 同じ名前の共有が既に存在する場合、操作は失敗します。 新しく作成された共有と対話するクライアントを返します。 |
delete_share |
指定した共有を削除対象としてマークします。 共有は後でガベージ コレクション中に削除されます。 |
from_connection_string |
接続文字列から ShareServiceClient を作成します。 |
get_service_properties |
Azure Storage Analyticsを含むストレージ アカウントのファイル共有サービスのプロパティを取得します。 |
get_share_client |
指定した共有と対話するクライアントを取得します。 共有がまだ存在している必要はありません。 |
list_shares |
指定したアカウントの dict に似た ShareProperties の自動ページング iterable を返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従い、すべての共有が返されたときに停止します。 |
set_service_properties |
Azure Storage Analyticsを含むストレージ アカウントのファイル共有サービスのプロパティを設定します。 要素 (hour_metricsなど) が None のままの場合、その機能に対するサービスの既存の設定は保持されます。 |
undelete_share |
論理的に削除された共有を復元します。 操作は、削除アイテム保持ポリシーで設定された指定した日数以内に使用された場合にのみ成功します。 バージョン 12.2.0 の新機能: この操作は API バージョン '2019-12-12' で導入されました。 |
close
このメソッドは、クライアントによって開かれたソケットを閉じる方法です。 コンテキスト マネージャーで を使用する場合は使用する必要はありません。
close()
create_share
指定したアカウントの下に新しい共有を作成します。 同じ名前の共有が既に存在する場合、操作は失敗します。 新しく作成された共有と対話するクライアントを返します。
create_share(share_name: str, **kwargs) -> ShareClient
パラメーター
- quota
- int
クォータ (バイト単位)。
- timeout
- int
操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。
戻り値
新しく作成された共有の ShareClient。
の戻り値の型 :
例
ファイル共有サービスで共有を作成します。
file_service.create_share(share_name="fileshare1")
delete_share
指定した共有を削除対象としてマークします。 共有は後でガベージ コレクション中に削除されます。
delete_share(share_name: ShareProperties | str, delete_snapshots: bool | None = False, **kwargs) -> None
パラメーター
- timeout
- int
操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。
の戻り値の型 :
例
ファイル共有サービスで共有を削除します。
file_service.delete_share(share_name="fileshare1")
from_connection_string
接続文字列から ShareServiceClient を作成します。
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
パラメーター
- credential
認証に使用する資格情報。 アカウント URL に SAS トークンが既に含まれている場合、これは省略可能です。 値には、SAS トークン文字列、azure.core.credentials の AzureSasCredential または AzureNamedKeyCredential のインスタンス、アカウント共有アクセス キー、または azure.identity からの TokenCredentials クラスのインスタンスを指定できます。 リソース URI に SAS トークンが既に含まれている場合、明示的な資格情報を優先して無視されます
- ただし、競合する SAS トークンによって ValueError が発生する AzureSasCredential の場合を除きます。 AzureNamedKeyCredential のインスタンスを使用する場合は、"name" をストレージ アカウント名に、"key" をストレージ アカウント キーにする必要があります。
戻り値
ファイル共有サービス クライアント。
の戻り値の型 :
例
接続文字列を使用して共有サービス クライアントを作成します。
from azure.storage.fileshare import ShareServiceClient
share_service_client = ShareServiceClient.from_connection_string(self.connection_string)
get_service_properties
Azure Storage Analyticsを含むストレージ アカウントのファイル共有サービスのプロパティを取得します。
get_service_properties(**kwargs: Any) -> Dict[str, Any]
パラメーター
- timeout
- int
操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。
戻り値
分析ログ、時間/分メトリック、cors ルールなどのファイル サービス プロパティを含むディクショナリ。
の戻り値の型 :
例
ファイル共有サービスのプロパティを取得します。
properties = file_service.get_service_properties()
get_share_client
指定した共有と対話するクライアントを取得します。 共有がまだ存在している必要はありません。
get_share_client(share: ShareProperties | str, snapshot: Dict[str, Any] | str | None = None) -> ShareClient
パラメーター
- snapshot
- str
操作するオプションの共有スナップショット。 これは、スナップショット ID 文字列、または から<xref:azure.storage.fileshare.create_snapshot>返される応答です。
戻り値
ShareClient。
の戻り値の型 :
例
共有クライアントを取得します。
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
指定したアカウントの dict に似た ShareProperties の自動ページング iterable を返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従い、すべての共有が返されたときに停止します。
list_shares(name_starts_with: str | None = None, include_metadata: bool | None = False, include_snapshots: bool | None = False, **kwargs) -> ItemPaged[ShareProperties]
パラメーター
- include_deleted
- bool
削除された共有を応答で返すように指定します。 これは、共有の論理的な削除が有効なアカウントに対してのみ行われます。
- timeout
- int
操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。
戻り値
ShareProperties の iterable (自動ページング) です。
の戻り値の型 :
例
ファイル共有サービスの共有を一覧表示します。
# 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
Azure Storage Analyticsを含むストレージ アカウントのファイル共有サービスのプロパティを設定します。 要素 (hour_metricsなど) が None のままの場合、その機能に対するサービスの既存の設定は保持されます。
set_service_properties(hour_metrics: Metrics | None = None, minute_metrics: Metrics | None = None, cors: List[CorsRule] | None = None, protocol: ShareProtocolSettings | None = None, **kwargs) -> None
パラメーター
- cors
- list(CorsRule)
リストには、最大 5 つの CorsRule 要素を含めることができます。 空のリストを指定すると、すべての CORS ルールが削除され、サービスに対して CORS が無効になります。
- timeout
- int
操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。
の戻り値の型 :
例
ファイル共有サービスのプロパティを設定します。
# 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
論理的に削除された共有を復元します。
操作は、削除アイテム保持ポリシーで設定された指定した日数以内に使用された場合にのみ成功します。
バージョン 12.2.0 の新機能: この操作は API バージョン '2019-12-12' で導入されました。
undelete_share(deleted_share_name: str, deleted_share_version: str, **kwargs: Any) -> ShareClient
パラメーター
- timeout
- int
操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-file-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。
戻り値
削除されていない共有の ShareClient。
の戻り値の型 :
属性
api_version
要求に使用される Storage API のバージョン。
location_mode
クライアントが現在使用している場所モード。
既定では、これは "プライマリ" になります。 オプションには、"primary" と "secondary" が含まれます。
primary_endpoint
完全なプライマリ エンドポイント URL。
primary_hostname
プライマリ エンドポイントのホスト名。
secondary_endpoint
完全なセカンダリ エンドポイント URL (構成されている場合)。
使用できない場合は、ValueError が発生します。 セカンダリ ホスト名を明示的に指定するには、インスタンス化時に省略可能な secondary_hostname キーワード (keyword) 引数を使用します。
例外
secondary_hostname
セカンダリ エンドポイントのホスト名。
使用できない場合、これは None になります。 セカンダリ ホスト名を明示的に指定するには、インスタンス化時に省略可能な secondary_hostname キーワード (keyword) 引数を使用します。
url
SAS トークン (使用されている場合) を含む、このエンティティへの完全なエンドポイント URL。
これは、現在 location_modeの に応じて、プライマリ エンドポイントまたはセカンダリ エンドポイントのいずれかになります。 :returns: SAS トークン (使用されている場合) を含む、このエンティティへの完全なエンドポイント URL。 :rtype: str
Azure SDK for Python