Path - Lease

リース パス
リースを作成して管理し、パスへの書き込みと削除のアクセスを制限します。 この操作では、条件付き HTTP 要求がサポートされます。 詳細については、「BLOB サービス操作の条件ヘッダーの指定」を参照してください。

POST https://{accountName}.{dnsSuffix}/{filesystem}/{path}
POST https://{accountName}.{dnsSuffix}/{filesystem}/{path}?timeout={timeout}

URI パラメーター

名前 / 必須 説明
accountName
path True

string

Azure Storage のアカウント名。

dnsSuffix
path True

string

Azure Data Lake Storage エンドポイントの DNS サフィックス。

filesystem
path True

string

ファイルシステム識別子。

Regex pattern: ^[$a-z0-9](?!.*--)[-a-z0-9]{1,61}[a-z0-9]$

path
path True

string

ファイルまたはディレクトリのパス。

timeout
query

integer

int32

オプションの操作タイムアウト値 (秒単位)。 期間は、サービスが要求を受信したときに開始されます。 操作が完了する前にタイムアウト値が経過すると、操作は失敗します。

要求ヘッダー

名前 必須 説明
x-ms-lease-action True

PathLeaseAction

"acquire"、"break"、"change"、"renew"、"release" の 5 つのリース アクションがあります。 新しいリースを取得するには、"acquire" を使用し、"x-ms-proposed-lease-id" と "x-ms-lease-duration" を指定します。 既存のリースを中断するには、"break" を使用します。 リースが解除されると、リース中断期間の経過が許可され、その間は、ファイルに対して中断と解放を除くリース操作を実行できません。 リースが正常に中断されると、応答で新しいリースを取得できるようになるまでの時間 (秒単位) が示されます。 "change" を使用し、現在のリース ID を "x-ms-lease-id" に指定し、新しいリース ID を "x-ms-proposed-lease-id" に指定して、アクティブなリースのリース ID を変更します。 既存のリースを更新するには、"renew" を使用し、"x-ms-lease-id" を指定します。 リースを解放するには、"release" を使用し、"x-ms-lease-id" を指定します。

x-ms-lease-duration

integer

int32

リースを取得するにはリース期間が必要であり、リース期間を秒単位で指定します。 リース期間は、15 秒から 60 秒の間、または無限リースの場合は -1 である必要があります。

x-ms-lease-break-period

integer

int32

リース中断期間の期間は、リースを中断するために省略可能であり、リースの中断期間を秒単位で指定します。 リース中断期間は 0 ~ 60 秒である必要があります。

x-ms-lease-id

string

"x-ms-lease-action" が "renew"、"change"、または "release" の場合は必須です。 更新アクションとリリース アクションの場合、これは現在のリース ID と一致している必要があります。

Regex pattern: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

x-ms-proposed-lease-id

string

"x-ms-lease-action" が "acquire" または "change" の場合は必須です。 操作が成功した場合、リースはこのリース ID で取得されます。

Regex pattern: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

If-Match

string

省略可能。 ETag 値。 このヘッダーを指定すると、リソースの ETag が指定値と一致する場合に限り操作が実行されます。 ETag は引用符で囲む必要があります。

If-None-Match

string

省略可能。 ETag 値または特殊なワイルドカード ("*") 値。 このヘッダーを指定すると、リソースの ETag が指定値と一致しない場合に限り操作が実行されます。 ETag は引用符で囲む必要があります。

If-Modified-Since

string

省略可能。 日付と時刻の値。 指定した日時以降にリソースが変更された場合にのみ、このヘッダーを指定して操作を実行します。

If-Unmodified-Since

string

省略可能。 日付と時刻の値。 指定した日時以降にリソースが変更されていない場合にのみ、このヘッダーを指定して操作を実行します。

x-ms-client-request-id

string

トラブルシューティングと関連付けのために分析ログに記録された UUID。

Regex pattern: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

x-ms-date

string

要求に対して協定世界時 (UTC) を指定します。 これは、共有キーの承認を使用する場合に必要です。

x-ms-version

string

要求の処理に使用される REST プロトコルのバージョンを指定します。 これは、共有キーの承認を使用する場合に必要です。

応答

名前 説明
200 OK

"renew"、"change"、または "release" アクションが成功しました。

Headers

  • Date: string
  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-id: string
201 Created

新しいリースが作成されました。 "取得" アクションが成功しました。

Headers

  • Date: string
  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-id: string
202 Accepted

"中断" リース アクションが成功しました。

Headers

  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-time: string
Other Status Codes

DataLakeStorageError

エラーが発生しました。 使用可能な HTTP 状態、コード、およびメッセージ文字列を次に示します。

  • 400 Bad Request、ContentLengthMustBeZero、"Content-Length 要求ヘッダーは 0 である必要があります。
  • 400 無効な要求、InvalidAuthenticationInfo、"認証情報が正しい形式で指定されていません。 Authorization ヘッダーの値を確認してください。"
  • 400 無効な要求、InvalidFlushPosition、"アップロードされたデータが連続していないか、位置クエリ パラメーターの値が、アップロードされたデータを追加した後のファイルの長さと等しくありません。"
  • 400 無効な要求、InvalidHeaderValue、"HTTP ヘッダーの 1 つの値が正しい形式ではありません。"
  • 400 無効な要求、InvalidHttpVerb、"指定された HTTP 動詞は無効です。サーバーによって認識されません。"
  • 400 無効な要求、InvalidInput、"要求入力の 1 つが無効です。
  • 400 無効な要求、InvalidPropertyName、"プロパティ名を空にすることはできません。"
  • 400 Bad Request、InvalidPropertyName、"プロパティ名に無効な文字が含まれています。"
  • 400 無効な要求、InvalidQueryParameterValue、"要求 URI で指定されたクエリ パラメーターの 1 つの値が無効です。
  • 400 無効な要求、InvalidResourceName、"指定されたリソース名に無効な文字が含まれています。
  • 400 無効な要求、InvalidSourceUri、"ソース URI が無効です。
  • 400 無効な要求、InvalidUri、"要求 URI が無効です。
  • 400 Bad Request、MissingRequiredHeader、"この要求に必須の HTTP ヘッダーが指定されていません。"
  • 400 Bad Request、MissingRequiredQueryParameter、"この要求に必須のクエリ パラメーターが指定されていません。
  • 400 無効な要求、MultipleConditionHeadersNotSupported、"複数の条件ヘッダーはサポートされていません"。
  • 400 Bad Request、OutOfRangeInput、"要求入力の 1 つが範囲外です。
  • 400 Bad Request、OutOfRangeQueryParameterValue、"要求 URI で指定されたクエリ パラメーターの 1 つが許容範囲外です。
  • 400 無効な要求、UnsupportedHeader、"要求で指定されたヘッダーの 1 つがサポートされていません。"
  • 400 無効な要求、UnsupportedQueryParameter、"要求 URI で指定されたクエリ パラメーターの 1 つがサポートされていません。"
  • 400 無効な要求、UnsupportedRestVersion、"指定された Rest バージョンはサポートされていません。
  • 403 Forbidden、AccountIsDisabled、"指定されたアカウントが無効になっています。"
  • 403 Forbidden、AuthorizationFailure、"この要求は、この操作を実行する権限がありません。
  • 403 Forbidden、InsufficientAccountPermissions、"アクセスされているアカウントには、この操作を実行するための十分なアクセス許可がありません。"
  • 404 Not Found, FilesystemNotFound, "指定されたファイルシステムは存在しません。"
  • 404 Not Found, PathNotFound, "指定されたパスが存在しません。"
  • 404 Not Found、RenameDestinationParentPathNotFound、"宛先パスの親ディレクトリが存在しません。"
  • 404 Not Found、ResourceNotFound、"指定されたリソースが存在しません。"
  • 404 Not Found、SourcePathNotFound、"名前変更操作のソース パスが存在しません。"
  • 405 メソッド Not Allowed、UnsupportedHttpVerb、"リソースは指定された HTTP 動詞をサポートしていません。"
  • 409 Conflict、DestinationPathIsBeingDeleted、"指定された宛先パスは削除済みとしてマークされています。"
  • 409 Conflict, DirectoryNotEmpty, "再帰的なクエリ パラメーター値は、空でないディレクトリを削除するには true である必要があります。"
  • 409 競合、FilesystemAlreadyExists、"指定されたファイルシステムは既に存在します。
  • 409 競合、FilesystemBeingDeleted、"指定されたファイルシステムが削除されています。"
  • 409 Conflict、InvalidDestinationPath、"指定されたパス、またはパスの要素が存在し、そのリソースの種類がこの操作に対して無効です。* 409 Conflict, InvalidFlushOperation, "リソースは Blob Service API によって作成または変更され、Data Lake Storage サービス API によって書き込むことができません。"
  • 409 Conflict, InvalidRenameSourcePath, "source directory cannot be same as the destination directory, or can be a サブディレクトリ of the source directory."
  • 409 Conflict、InvalidSourceOrDestinationResourceType、"ソースとターゲットのリソースの種類は同じである必要があります。"
  • 409 競合、LeaseAlreadyPresent、"既にリースが存在しています。
  • 409 Conflict、LeaseIdMismatchWithLeaseOperation、"指定されたリース ID が、指定したリース操作を持つリソースのリース ID と一致しませんでした。
  • 409 Conflict、LeaseIsAlreadyBroken、"リースは既に破損しており、再び分割することはできません。"
  • 409 Conflict、LeaseIsBreakingAndCannotBeAcquired、"リース ID は一致しましたが、リースは現在破壊的な状態にあり、破損するまで取得できません"。
  • 409 Conflict、LeaseIsBreakingAndCannotBeChanged、"リース ID は一致しましたが、リースは現在中断状態であり、変更できません"。
  • 409 Conflict、LeaseIsBrokenAndCannotBeRenewed、"リース ID が一致しましたが、リースが明示的に解除され、更新できません"。
  • 409 Conflict, LeaseNameMismatch, "指定されたリース名が既存のリース名と一致しませんでした。
  • 409 競合、LeaseNotPresentWithLeaseOperation、"リース ID が指定されたリース操作に存在しません。
  • 409 Conflict,PathAlreadyExists, "指定されたパスは既に存在します。
  • 409 Conflict、PathConflict、"指定したパス、またはパスの要素が存在し、そのリソースの種類がこの操作に対して無効です。
  • 409 競合、SourcePathIsBeingDeleted、"指定したソース パスは削除対象としてマークされています。
  • 409 競合、ResourceTypeMismatch、"要求で指定されたリソースの種類がリソースの種類と一致しません。"
  • 412 前提条件に失敗しました。ConditionNotMet、「HTTP 条件付きヘッダーを使用して指定された条件が満たされていません。」
  • 412 前提条件に失敗しました。LeaseIdMismatch、「指定されたリース ID がリソースのリース ID と一致しませんでした。」
  • 412 前提条件に失敗しました。LeaseIdMissing、「現在、リソースにリースがあり、要求でリース ID が指定されていません。
  • 412 前提条件に失敗しました。LeaseNotPresent、「現在、リソースにリースはありません。」
  • 412 前提条件に失敗しました。LeaseLost、「リース ID が指定されましたが、リソースのリースの有効期限が切れています。」
  • 412 Precondition Failed,SourceConditionNotMet, "HTTP 条件付きヘッダーを使用して指定されたソース条件が満たされていません。"
  • 413 要求エンティティが大きすぎる、RequestBodyTooLarge、「要求本文が大きすぎて、許容される上限を超えています。」
  • 416 要求された範囲が満たされない、InvalidRange、"指定された範囲は、リソースの現在のサイズに対して無効です。
  • 500 内部サーバー エラー、InternalError、"サーバーで内部エラーが発生しました。 要求を再試行してください。"
  • 500 内部サーバー エラー、OperationTimedOut、"許可された時間内に操作を完了できませんでした。"
  • 503 サービス利用不可、ServerBusy、"エグレスがアカウント制限を超えています。"
  • 503 サービス利用不可、ServerBusy、"イングレスがアカウント制限を超えています。"
  • 503 サービス利用不可、ServerBusy、「1 秒あたりの操作数がアカウントの制限を超えています。」
  • 503 サービス利用不可、ServerBusy、"サーバーは現在要求を受信できません。 要求を再試行してください。"

Headers

  • x-ms-request-id: string
  • x-ms-version: string

定義

名前 説明
DataLakeStorageError
Error

サービス エラー応答オブジェクト。

PathLeaseAction

"acquire"、"break"、"change"、"renew"、"release" の 5 つのリース アクションがあります。 新しいリースを取得するには、"acquire" を使用し、"x-ms-proposed-lease-id" と "x-ms-lease-duration" を指定します。 既存のリースを中断するには、"break" を使用します。 リースが解除されると、リース中断期間の経過が許可され、その間は、ファイルに対して中断と解放を除くリース操作を実行できません。 リースが正常に中断されると、応答で新しいリースを取得できるようになるまでの時間 (秒単位) が示されます。 "change" を使用し、現在のリース ID を "x-ms-lease-id" に指定し、新しいリース ID を "x-ms-proposed-lease-id" に指定して、アクティブなリースのリース ID を変更します。 既存のリースを更新するには、"renew" を使用し、"x-ms-lease-id" を指定します。 リースを解放するには、"release" を使用し、"x-ms-lease-id" を指定します。

DataLakeStorageError

名前 説明
error

Error

サービス エラー応答オブジェクト。

Error

サービス エラー応答オブジェクト。

名前 説明
code

string

サービス エラー コード。

message

string

サービス エラー メッセージ。

PathLeaseAction

"acquire"、"break"、"change"、"renew"、"release" の 5 つのリース アクションがあります。 新しいリースを取得するには、"acquire" を使用し、"x-ms-proposed-lease-id" と "x-ms-lease-duration" を指定します。 既存のリースを中断するには、"break" を使用します。 リースが解除されると、リース中断期間の経過が許可され、その間は、ファイルに対して中断と解放を除くリース操作を実行できません。 リースが正常に中断されると、応答で新しいリースを取得できるようになるまでの時間 (秒単位) が示されます。 "change" を使用し、現在のリース ID を "x-ms-lease-id" に指定し、新しいリース ID を "x-ms-proposed-lease-id" に指定して、アクティブなリースのリース ID を変更します。 既存のリースを更新するには、"renew" を使用し、"x-ms-lease-id" を指定します。 リースを解放するには、"release" を使用し、"x-ms-lease-id" を指定します。

名前 説明
acquire

string

break

string

change

string

release

string

renew

string