Set Blob Properties

Set Blob Properties 操作は BLOB のシステム プロパティを設定します。

要求

Set Blob Properties 要求の構成は次のとおりです。 HTTPS を使用することをお勧めします。 myaccount をストレージ アカウントの名前に置き換えます。

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

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

エミュレートされたストレージ サービスに対して要求を行う場合は、エミュレーターのホスト名と Blob Storage ポートを として 127.0.0.1:10000指定し、その後にエミュレートされたストレージ アカウント名を指定します。

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

詳細については、ローカルでの Azure Storage の開発に Azurite エミュレーターを使用する方法に関するページを参照してください。

URI パラメーター

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

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

要求ヘッダー (すべての BLOB の種類)

次の表では、すべての BLOB の種類に必要な要求ヘッダーと省略可能な要求ヘッダーについて説明します。

要求ヘッダー 説明
Authorization 必須。 承認スキーム、アカウント名、署名を指定します。 詳細については、「Azure Storage への要求を承認する」をご覧ください。
Date または x-ms-date 必須。 要求に対して協定世界時 (UTC) を指定します。 詳細については、「Azure Storage への要求を承認する」をご覧ください。
x-ms-version すべての承認された要求に必要です。 この要求に使用する操作のバージョンを指定します。 詳細については、「Azure Storage サービスのバージョン管理」を参照してください。
x-ms-blob-cache-control 省略可能。 BLOB のキャッシュ制御文字列を変更します。

要求でこのプロパティが指定されていない場合、BLOB の プロパティはクリアされます。 BLOB プロパティの取得 に対する後続の呼び出しでは、BLOB に対して明示的に設定されていない限り、このプロパティは返されません。
x-ms-blob-content-type 省略可能。 BLOB のコンテンツの種類を設定します。

要求でこのプロパティが指定されていない場合、BLOB の プロパティはクリアされます。 BLOB プロパティの取得 に対する後続の呼び出しでは、BLOB に対して明示的に設定されていない限り、このプロパティは返されません。
x-ms-blob-content-md5 省略可能。 BLOB の MD5 ハッシュを設定します。

要求でこのプロパティが指定されていない場合、BLOB の プロパティはクリアされます。 BLOB プロパティの取得 に対する後続の呼び出しでは、BLOB に対して明示的に設定されていない限り、このプロパティは返されません。
x-ms-blob-content-encoding 省略可能。 BLOB のコンテンツのエンコードを設定します。

要求でこのプロパティが指定されていない場合、BLOB の プロパティはクリアされます。 BLOB プロパティの取得 に対する後続の呼び出しでは、BLOB に対して明示的に設定されていない限り、このプロパティは返されません。
x-ms-blob-content-language 省略可能。 BLOB のコンテンツの言語を設定します。

要求でこのプロパティが指定されていない場合、BLOB の プロパティはクリアされます。 BLOB プロパティの取得 に対する後続の呼び出しでは、BLOB に対して明示的に設定されていない限り、このプロパティは返されません。
x-ms-lease-id:<ID> BLOB にアクティブなリースが存在する場合は必須です。 アクティブなリースが存在する BLOB に対してこの操作を実行するには、このヘッダーに有効なリース ID を指定します。
x-ms-client-request-id 省略可能。 ログ記録の構成時にログに記録される 1 kibibyte (KiB) 文字制限を使用して、クライアントによって生成された不透明な値を提供します。 このヘッダーを使用して、クライアント側のアクティビティとサーバーが受信する要求を関連付けるよう強くお勧めします。 詳細については、「Azure Blob Storageの監視」を参照してください。
x-ms-blob-content-disposition 省略可能。 BLOB の Content-Disposition ヘッダーを設定します。 バージョン 2013-08-15 以降で使用できます。

応答ヘッダー フィールドは Content-Disposition 、応答ペイロードの処理方法に関する追加情報を伝達し、追加のメタデータを添付するために使用できます。 たとえば、 が に attachment設定されている場合、ユーザー エージェントは応答を表示せず、代わりに指定した BLOB 名以外のファイル名で [名前を付けて保存] ダイアログを表示することを示します。

Blob の取得および BLOBのプロパティの取得 操作からの応答には、 ヘッダーが content-disposition 含まれています。
Origin 省略可能。 要求の送信元を指定します。 このヘッダーが存在する場合、応答のクロス オリジン リソース共有ヘッダーになります。 詳細については、 Azure Storage サービスに対する CORS (クロスオリジン リソース共有) のサポートに関するページを参照してください。

この操作では、条件ヘッダーを使用して、指定した条件を満たした場合にのみ BLOB のプロパティを設定することもできます。 詳細については、「 Blob Storage 操作の条件付きヘッダーを指定する」を参照してください。

要求ヘッダー (ページ BLOB のみ)

次の表では、ページ BLOB の操作にのみ適用される要求ヘッダーについて説明します。

要求ヘッダー 説明
x-ms-blob-content-length: byte value 省略可能。 ページ BLOB のサイズを指定したサイズに変更します。 指定した値が BLOB の現在のサイズより小さい場合は、指定した値より大きい値を持つすべてのページ BLOB がクリアされます。

このプロパティを使用して、ブロック BLOB または追加 BLOB のサイズを変更することはできません。 ブロック BLOB または追加 BLOB に対してこのプロパティを設定すると、状態コード 400 (Bad Request) が返されます。
x-ms-sequence-number-action: {max, update, increment} 省略可能です。ただし、要求に x-ms-blob-sequence-number ヘッダーを設定した場合は必須です。 このプロパティはページ BLOB のみに適用されます。

このプロパティは、サービスが BLOB のシーケンス番号を変更する方法を設定します。 このプロパティに次のオプションのいずれかを指定します。

- max: シーケンス番号を、要求に含まれる値と BLOB に現在格納されている値の大きい方に設定します。
- update: シーケンス番号を、要求に含まれる値に設定します。
- increment: シーケンス番号の値を 1 ずつインクリメントします。 このオプションを指定する場合は、 を x-ms-blob-sequence-number header含めないでください。 これにより、状態コード 400 (無効な要求) が返されます。
x-ms-blob-sequence-number: <num> 省略可能です。ただし、x-ms-sequence-number-action プロパティを max または update に設定した場合は必須です。 このプロパティはページ BLOB のみに適用されます。

プロパティは、BLOB のシーケンス番号を設定します。 シーケンス番号は、ユーザーが要求を追跡し、コンカレンシーの問題を管理するために使用するユーザー制御プロパティです。 詳細については、「 ページの配置 」操作を参照してください。

このプロパティを と x-ms-sequence-number-action 共に使用して、BLOB のシーケンス番号を、要求で指定された値または現在 BLOB と共に格納されている値のうち、指定した値以上に更新します。 が に設定されている場合 x-ms-sequence-number-action は、このヘッダーを increment指定しないでください。この場合、サービスはシーケンス番号を 1 ずつ自動的にインクリメントします。

シーケンス番号を選択した値に設定するには、要求にこのプロパティと x-ms-sequence-number-action を指定する必要があります。

要求本文

[なし] :

Response

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

status code

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

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

応答ヘッダー

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

構文 説明
ETag 条件付きで操作を実行するために使用できる値が含まれています。 詳細については、「 Blob Storage 操作の条件付きヘッダーを指定 する」を参照してください。 要求バージョンが 2011-08-18 以降の場合、ETag 値は引用符で囲まれます。
Last-Modified BLOB が最後に更新された日時。 日付形式は RFC 1123 に従います。 詳細については、「 ヘッダーの日付/時刻値を表す」を参照してください。

BLOB の書き込み操作 (BLOB のメタデータまたはプロパティの更新など) を行うと、BLOB の最終更新時刻が変更されます。
x-ms-blob-sequence-number ページ BLOB の場合、このヘッダーで BLOB の現在のシーケンス番号が返されます。
x-ms-request-id 行われた要求を一意に識別し、要求のトラブルシューティングに使用できます。 詳細については、「 API 操作のトラブルシューティング」を参照してください。
x-ms-version 要求の実行に使用された Blob Storage のバージョンを示します。 このヘッダーは、バージョン 2009-09-19 以降に対して行われた要求に対して返されます。
Date サービスによって生成される UTC 日付/時刻値。応答が開始された時刻を示します。
Access-Control-Allow-Origin 要求に Origin ヘッダーが含まれ、照合ルールで CORS が有効な場合に返されます。 一致する場合、このヘッダーは配信元要求ヘッダーの値を返します。
Access-Control-Expose-Headers 要求に Origin ヘッダーが含まれ、照合ルールで CORS が有効な場合に返されます。 要求のクライアントや発行元に公開される応答ヘッダーの一覧を返します。
Access-Control-Allow-Credentials 要求にヘッダーが含まれており、すべての配信元を Origin 許可しない一致ルールで CORS が有効になっている場合に返されます。 ヘッダーは に true設定されます。
x-ms-client-request-id 要求と対応する応答のトラブルシューティングに使用できます。 このヘッダーの値 x-ms-client-request-id は、要求に存在し、値に 1,024 文字以下の ASCII 文字が含まれている場合、ヘッダーの値と同じです。 ヘッダーが x-ms-client-request-id 要求に存在しない場合、応答には存在しません。

応答本文

[なし] :

承認

Azure Storage でデータ アクセス操作を呼び出す場合は、承認が必要です。 操作は、以下で Set Blob Properties 説明するように承認できます。

Azure Storage では、Microsoft Entra ID を使用して BLOB データへの要求を承認することがサポートされています。 Microsoft Entra IDでは、Azure ロールベースのアクセス制御 (Azure RBAC) を使用して、セキュリティ プリンシパルにアクセス許可を付与できます。 セキュリティ プリンシパルには、ユーザー、グループ、アプリケーション サービス プリンシパル、または Azure マネージド ID を指定できます。 セキュリティ プリンシパルは、OAuth 2.0 トークンを返すためにMicrosoft Entra IDによって認証されます。 その後、そのトークンを、Blob service に対する要求を認可するために使用できます。

Microsoft Entra IDを使用した承認の詳細については、「Microsoft Entra IDを使用して BLOB へのアクセスを承認する」を参照してください。

アクセス許可

次に、Microsoft Entraユーザー、グループ、またはサービス プリンシパルが操作を呼び出Set Blob Propertiesすために必要な RBAC アクションと、このアクションを含む最小特権の組み込み Azure RBAC ロールを示します。

Azure RBAC を使用したロールの割り当ての詳細については、「 BLOB データにアクセスするための Azure ロールの割り当て」を参照してください。

注釈

BLOB のプロパティを更新する場合のセマンティクスは次のとおりです。

  • ページ BLOB のシーケンス番号は、要求が次の条件のいずれかを満たした場合にのみ更新されます。

    • 要求は、 x-ms-sequence-number-action を または updatemax設定し、ヘッダーの値をx-ms-blob-sequence-number指定します。

    • 要求は、 x-ms-sequence-number-action を に increment設定します。これは、サービスがシーケンス番号を 1 ずつインクリメントする必要があることを示します。

  • ページ BLOB のサイズは、要求で x-ms-content-length ヘッダーの値が指定されている場合にのみ変更されます。

  • Premium Storage アカウントでページ BLOB のサイズを変更するには、新しいサイズが既存の層で許可されているコンテンツの長さを超えないようにする必要があります。 BLOB のサイズを変更する前に、 Set Blob Tier を呼び出します。 階層と許可されるコンテンツの長さの一覧については、 VM の高パフォーマンス Premium Storage とマネージド ディスクに関するページを参照してください。

  • 要求が または x-ms-content-lengthのみをx-ms-blob-sequence-number設定する場合、BLOB の他のプロパティは変更されません。

  • 要求で次のプロパティの 1 つ以上が設定されている場合、すべてのプロパティが一緒に設定されます。 少なくとも 1 つが設定されているプロパティに値が指定されていない場合、そのプロパティは BLOB に対してクリアされます。

    • x-ms-blob-cache-control
    • x-ms-blob-content-type
    • x-ms-blob-content-md5
    • x-ms-blob-content-encoding
    • x-ms-blob-content-language
    • x-ms-blob-content-disposition

注意

共有アクセス署名 (SAS) の場合は、共有アクセス署名の一部としてクエリ パラメーターを指定することで、BLOB に格納されている特定のプロパティをオーバーライドできます。 これらのプロパティには、cache-controlcontent-typecontent-encodingcontent-language、および content-disposition のプロパティがあります。 詳細については、「 サービス SAS の作成」を参照してください。

請求

価格要求は、Blob Storage REST API を介して直接、または Azure Storage クライアント ライブラリから Blob Storage API を使用するクライアントから送信できます。 これらの要求では、トランザクションあたりの料金が発生します。 トランザクションの種類は、アカウントの課金方法に影響します。 たとえば、読み取りトランザクションは、書き込みトランザクションとは異なる課金カテゴリに計上されます。 次の表は、ストレージ アカウントの種類に基づく要求の課金カテゴリ Set Blob Properties を示しています。

操作 ストレージ アカウントの種類 課金カテゴリ
Set Blob Properties Premium ブロック BLOB
Standard 汎用 v2
その他の操作
Set Blob Properties Standard 汎用 v1 書き込み操作

指定した課金カテゴリの価格については、「Azure Blob Storage価格」を参照してください。

こちらもご覧ください