Set Blob Metadata

Set Blob Metadata 操作は、指定された BLOB のユーザー定義メタデータを、1 組以上の名前と値のペアとして設定します。

要求

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

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

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

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

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

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

URI パラメーター

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

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

要求ヘッダー

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

要求ヘッダー 説明
Authorization 必須。 承認スキーム、アカウント名、署名を指定します。 詳細については、「Azure Storage要求を承認する」を参照してください。
Date または x-ms-date 必須。 要求に対して協定世界時 (UTC) を指定します。 詳細については、「Azure Storage要求を承認する」を参照してください。
x-ms-version すべての承認された要求に必要です。 この要求に使用する操作のバージョンを指定します。 詳細については、「Azure Storage サービスのバージョン管理」を参照してください。
x-ms-meta-name:value 省略可能。 BLOB の名前と値のペアを設定します。

この操作を呼び出すと、その都度、BLOB に関連付けられている既存のメタデータがすべて置き換えられます。 すべてのメタデータを BLOB から削除するには、この操作をメタデータ ヘッダーなしで呼び出します。

バージョン 2009-09-19 以降では、メタデータ名は C# 識別子の名前付け規則に従う必要があることに注意してください。
x-ms-encryption-scope 省略可能。 要求の内容の暗号化に使用する暗号化スコープを示します。 このヘッダーは、バージョン 2019-02-02 以降でサポートされています。
x-ms-lease-id:<ID> BLOB にアクティブなリースが存在する場合は必須です。 アクティブなリースが存在する BLOB に対してこの操作を実行するには、このヘッダーに有効なリース ID を指定します。
x-ms-client-request-id 省略可能。 ストレージ分析ログが有効になっているときに分析ログに記録される 1 KiB 文字の制限を持つクライアント生成の不透明な値を提供します。 クライアント側のアクティビティをサーバーが受信した要求と関連付けるには、このヘッダーを使用することが強く推奨されます。 詳細については、「Storage Analyticsログ記録と Azure ログ記録: ログを使用したStorage要求の追跡」を参照してください。

この操作では、条件ヘッダーを使用して、指定した条件を満たした場合にのみ BLOB のメタデータを設定することもできます。 詳細については、「BLOB サービス操作の条件ヘッダーの指定」を参照してください。

要求ヘッダー (顧客が指定した暗号化キー)

バージョン 2019-02-02 以降では、お客様が指定したキーを使用して BLOB を暗号化する要求で、次のヘッダーを指定できます。 顧客が指定したキー (および対応するヘッダーのセット) を使用した暗号化は省略可能です。 BLOB が以前に顧客指定のキーで暗号化されている場合、書き込み操作を正常に完了するには、要求にこれらのヘッダーを含める必要があります。

要求ヘッダー 説明
x-ms-encryption-key 必須。 Base64 でエンコードされた AES-256 暗号化キー。
x-ms-encryption-key-sha256 必須。 暗号化キーの Base64 でエンコードされた SHA256 ハッシュ。
x-ms-encryption-algorithm: AES256 必須。 暗号化に使用するアルゴリズムを指定します。 このヘッダーの値は AES256 である必要があります。

要求本文

[なし] :

[応答]

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

状態コード

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

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

レスポンス ヘッダー

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

応答ヘッダー 説明
ETag ETag には、条件に基づく操作の実行に使用できる値が含まれます。 詳細については、「 BLOB サービス操作の条件付きヘッダーの指定 」を参照してください。 要求バージョンが 2011-08-18 またはそれ以降である場合、ETag 値は引用符で囲まれます。
Last-Modified BLOB が最後に更新された日時。 日付形式は RFC 1123 に従います。 詳細については、「 ヘッダー内のDate-Time値の表現」を参照してください。

BLOB の書き込み操作 (BLOB のメタデータまたはプロパティの更新など) を行うと、BLOB の最終更新時刻が変更されます。
x-ms-request-id このヘッダーは要求を一意に識別するので、要求のトラブルシューティングに使用できます。 詳細については、「 API 操作のトラブルシューティング」を参照してください。
x-ms-version 要求の実行に使用する BLOB サービスのバージョンを示します。 このヘッダーはバージョン 2009-09-19 以降で行った要求に対して返されます。
Date サービスによって生成される、応答の開始時刻を示す UTC 日付/時刻値。
x-ms-request-server-encrypted: true/false バージョン 2015-12-11 以降。 このヘッダーの値は、要求の内容が指定されたアルゴリズムを使用して正常に暗号化された場合に設定 true され false 、それ以外の場合は設定されます。
x-ms-encryption-key-sha256 バージョン 2019-02-02 以降。 このヘッダーは、要求が顧客が指定したキーを暗号化に使用した場合に返されるため、クライアントは、指定されたキーを使用して要求の内容が正常に暗号化されていることを確認できます。
x-ms-encryption-scope バージョン 2019-02-02 以降。 このヘッダーは、要求が暗号化スコープを使用した場合に返されるため、クライアントは暗号化スコープを使用して要求の内容が正常に暗号化されていることを確認できます。
x-ms-client-request-id このヘッダーは、要求と対応する応答のトラブルシューティングに使用できます。 このヘッダーの値は、要求に存在し、値が最大 1024 の ASCII 文字で表示される場合、ヘッダーの値 x-ms-client-request-id と等しくなります。 ヘッダーが x-ms-client-request-id 要求に存在しない場合、このヘッダーは応答に存在しません。

応答本文

[なし] :

承認

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

注釈

BLOB のアクティブなリースが存在する場合、クライアントが BLOB にメタデータを書き込むには、要求に有効なリース ID を指定する必要があります。 クライアントがリース ID を指定しなかった場合、または無効なリース ID を指定した場合、BLOB Service はステータス コード 412 (Precondition Failed) を返します。 クライアントがリース ID を指定し、BLOB にアクティブなリースが存在しない場合にも、BLOB Service はステータス コード 412 (Precondition Failed) を返します。

参照

Azure Storageへの要求を承認する
ステータス コードとエラー コード
BLOB サービスのエラー コード