BLOB の有効期限を設定する

この操作により Set Blob Expiry 、既存の BLOB の有効期限が設定されます。 この操作は、階層型名前空間が有効なアカウントでのみ許可されます。 サービス バージョン 2020-02-10 以降に適用されます。

要求

Set Blob Expiry 要求の構成は次のとおりです。 HTTPS が推奨されます。 myaccount をストレージ アカウントの名前に置き換えます。

PUT メソッド要求の URI HTTP バージョン
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=expiry HTTP/1.1

エミュレートされたストレージ サービスの URI

エミューレートされたストレージ サービスに対する要求では、エミュレーターのホスト名と BLOB Service ポートを 127.0.0.1:10000 と指定し、その後にエミューレートされたストレージ アカウント名を指定します。

PUT メソッド要求の URI HTTP バージョン
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=expiry HTTP/1.1

詳細については、「開発とテストにAzure Storage Emulatorを使用する」を参照してください。

URI パラメーター

次の追加パラメーターを要求の URI で指定できます。

パラメーター 説明
timeout 省略可能。 timeout パラメーターは、秒単位で表されます。 詳細については、「 Blob Service 操作のタイムアウトの設定」を参照してください

要求ヘッダー

必須要求ヘッダーと省略可能な要求ヘッダーを次の表に示します。

要求ヘッダー 説明
Authorization 必須。 認証スキーム、アカウント名、および署名を指定します。 詳細については、Azure Storage サービスの認証を参照してください。
Date または x-ms-date 必須。 要求に対して協定世界時 (UTC) を指定します。 詳細については、「Azure Storage サービスの認証」を参照してください。
x-ms-version 認証されたすべての要求について必須です。 この要求に使用する操作のバージョンを指定します。 詳細については、「Azure Storage サービスのバージョン管理」を参照してください。
x-ms-lease-id:<ID> BLOB にアクティブなリースが存在する場合は必須です。 アクティブなリースが存在する BLOB に対してこの操作を実行するには、このヘッダーに有効なリース ID を指定します。
x-ms-expiry-option 必須。 要求の有効期限オプションを指定するには、 ExpiryOption を参照してください。
x-ms-expiry-time 省略可能。 ファイルの有効期限が切れる時刻。 有効期限の形式は、x-ms-expiry-option に応じて異なります。ExpiryOption を参照してください。
x-ms-client-request-id 省略可能。 ストレージ解析ロギングが有効なときに解析ログに記録される、クライアントで生成された非透過の値を 1 KB の文字制限付きで提供します。 クライアント側のアクティビティをサーバーが受信した要求と関連付けるには、このヘッダーを使用することが強く推奨されます。

ExpiryOption

次の値は、x-ms-expiry-option ヘッダーとして送信できます。 このヘッダーでは大文字と小文字は区別されません。

Expiry オプション 説明
RelativeToCreation ファイルの作成時間を基準にして有効期限を設定します。x-ms-expiry-time は、作成時間から経過するミリ秒数として指定する必要があります。
RelativeToNow 現在の時刻を基準にして有効期限を設定します。x-ms-expiry-time は、これから経過するミリ秒数として指定する必要があります。
Absolute x-ms-expiry-time は RFC 1123 形式で絶対時刻として指定する必要があります。
NeverExpire ファイルを無期限に設定するか、現在の有効期限を削除します。x-ms-expiry-time を指定しないでください。

要求本文

この要求の要求本文が空です。

要求のサンプル

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=expiry HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-02-10  
x-ms-date: Sun, 25 Sep 2020 14:37:35 GMT
x-ms-expiry-option: RelativeTonow
x-ms-expiry-time: 30000  
Authorization: SharedKey myaccount:J4ma1VuFnlJ7yfk/Gu1GxzbfdJloYmBPWlfhZ/xn7GI=    

[応答]

応答には、HTTP 状態コードおよび一連の応答ヘッダーが含まれています。

状態コード

操作に成功すると、状態コード 200 (OK) が返されます。

状態コードの詳細については、「 状態とエラー コード」を参照してください。

レスポンス ヘッダー

この操作の応答には、次のヘッダーが含まれています。 応答に追加の標準 HTTP ヘッダーが含まれる場合もあります。 すべての標準ヘッダーは 、HTTP/1.1 プロトコル仕様に準拠しています。

応答ヘッダー 説明
ETag ETag には、ファイルのバージョンを表す値が引用符で囲まれて含まれます。
Last-Modified ディレクトリが最後に更新された日時を返します。 日付形式は RFC 1123 に従います。 詳細については、「 ヘッダーのDate-Time値の表現」を参照してください。 ディレクトリまたはそのプロパティを変更する操作を行うと、最終更新時刻が更新されます。 ファイルに対する操作は、ディレクトリの最終更新時刻に影響しません。
x-ms-request-id このヘッダーは要求を一意に識別するので、要求のトラブルシューティングに使用できます。 詳細については、「 API 操作のトラブルシューティング」を参照してください
x-ms-version 要求の実行に使用するファイル サービスのバージョンを示します。
Date サービスによって生成される、応答の開始時刻を示す UTC 日付/時刻値。

応答のサンプル

Response Status:  
HTTP/1.1 200 OK  
  
Response Headers:  
Date: Sun, 25 Sep 2011 23:47:09 GMT  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  

承認

この操作は、アカウント所有者と、この BLOB またはそのコンテナーに対する書き込みアクセス許可がある共有アクセス署名を持つ任意のユーザーが呼び出すことができます。

解説

BLOB の有効期限を設定するためのセマンティクスは次のとおりです。

  • [有効期限の設定] は、ディレクトリではなくファイルでのみ設定できます。

  • 過去に指定した expiryTime で expiry を設定することはできません。

  • ExpiryTime は、expiryOption で "Never" として指定しないでください。

参照