エクスポート (0) 印刷
すべて展開
このトピックはまだ評価されていません - このトピックを評価する

Set Blob Service Properties (REST API)

更新日: 2013年12月

Set Blob Service Properties 操作は、ストレージ アカウントの BLOB サービス エンドポイントのプロパティを設定します。このプロパティには、Storage Analytics や CORS (クロス オリジン リソース共有) ルールのプロパティが含まれます。CORS ルールの詳細については、「Windows Azure ストレージ サービスでのクロス オリジン リソース共有 (CORS) のサポート」を参照してください。

また、この操作を使用して、バージョンが指定されていないすべての受信要求 (BLOB サービスに対する受信要求) 用の既定の要求バージョンも設定できます。

要求

Set Blob Service Properties 要求は、次のように指定できます。HTTPS が推奨されます。<account-name> はストレージ アカウントの名前に置き換えます。

 

メソッド 要求の URI HTTP のバージョン

PUT

https://<account-name>.blob.core.windows.net/?restype=service&comp=properties

HTTP/1.1

URI には必ずスラッシュ (/) を含めて、ホスト名を URI のパス部分とクエリ部分から分離する必要があります。この操作の場合、URI のパス部分は空です。

URI パラメーター

 

URI パラメーター 説明

restype=service&comp=properties

必須。ストレージ サービス プロパティを設定するには、両方のクエリ文字列を組み合わせる必要があります。

timeout

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

要求ヘッダー

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

 

要求ヘッダー 説明

Authorization

必須。認証スキーム、ストレージ アカウント名、および署名を指定します。詳細については、「Windows Azure ストレージ サービスの認証」を参照してください。

Date またはx-ms-date

必須です。要求の世界協定時刻 (UTC) を指定します。詳細については、「Windows Azure ストレージ サービスの認証」を参照してください。

x-ms-version

認証されたすべての要求について必須です。この要求に使用する操作のバージョンを指定します。詳細については、「Windows Azure の BLOB サービス、キュー サービス、およびテーブル サービスのバージョン管理」を参照してください。

x-ms-client-request-id

省略可能。Storage Analytics Logging が有効な場合に解析ログに記録される、クライアントで生成された非透過の値を 1 KB の文字制限付きで提供します。クライアント側のアクティビティとサーバーが受け取る要求を相互に関連付けるには、このヘッダーを使用することを強くお勧めします。詳細については、「Storage Analytics Logging について」および「Windows Azure のログ: ログを使用した、ストレージ要求の追跡」を参照してください。

要求本文

バージョン 2012-02-12 以前では、要求本文の形式は次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
    <Logging>
        <Version>version-number</Version>
        <Delete>true|false</Delete>
        <Read>true|false</Read>
        <Write>true|false</Write>
        <RetentionPolicy>
            <Enabled>true|false</Enabled>
            <Days>number-of-days</Days>
        </RetentionPolicy>
    </Logging>
    <Metrics>
        <Version>version-number</Version>
        <Enabled>true|false</Enabled>
        <IncludeAPIs>true|false</IncludeAPIs>
        <RetentionPolicy>
            <Enabled>true|false</Enabled>
            <Days>number-of-days</Days>
        </RetentionPolicy>
    </Metrics>
    <!-- The DefaultServiceVersion element can only be set for the Blob service and the request must be made using version 2011-08-18 or later -->
    <DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
</StorageServiceProperties>

バージョン 2013-08-15 以降では、要求本文の形式は次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
    <Logging>
        <Version>version-number</Version>
        <Delete>true|false</Delete>
        <Read>true|false</Read>
        <Write>true|false</Write>
        <RetentionPolicy>
            <Enabled>true|false</Enabled>
            <Days>number-of-days</Days>
        </RetentionPolicy>
    </Logging>
    <HourMetrics>
        <Version>version-number</Version>
        <Enabled>true|false</Enabled>
        <IncludeAPIs>true|false</IncludeAPIs>
        <RetentionPolicy>
            <Enabled>true|false</Enabled>
            <Days>number-of-days</Days>
        </RetentionPolicy>
    </HourMetrics>
    <MinuteMetrics>
        <Version>version-number</Version>
        <Enabled>true|false</Enabled>
        <IncludeAPIs>true|false</IncludeAPIs>
        <RetentionPolicy>
            <Enabled>true|false</Enabled>
            <Days>number-of-days</Days>
        </RetentionPolicy>
    </MinuteMetrics>
    <Cors>
        <CorsRule>
            <AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>
            <AllowedMethods>comma-separated-list-of-HTTP-verb</AllowedMethods>
            <MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>
            <ExposedHeaders>comma-seperated-list-of-response-headers</ExposedHeaders>
            <AllowedHeaders> comma-seperated-list-of-request-headers </AllowedHeaders>
        </CorsRule>
    </Cors>
    <!-- The DefaultServiceVersion element can only be set for the Blob service and the request must be made using version 2011-08-18 or later -->
    <DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
</StorageServiceProperties>

バージョン 2013-08-15 以降では、要求本文で指定された 1 つ以上のルート要素を使用して Set Blob Service Properties を呼び出すことができます。ルート要素は次のとおりです。

  • Logging

  • HourMetrics

  • MinuteMetrics

  • Cors

  • DefaultServiceVersion

要求ですべてのルート要素を指定する必要はなくなりました。ルート要素を省略した場合、その機能に対応したサービスの既存の設定が維持されます。ただし、特定のルート要素を指定した場合、その要素のすべての子要素を指定する必要があります。

要求本文の要素を次の表に示します。

 

要素名 説明

Logging

バージョン 2013-08-15 以降では省略可能です。それよりも前のバージョンでは必須です。Windows Azure Analytics の Logging 設定をグループ化します。

Metrics

バージョン 2012-02-12 以前では必須です。バージョン 2013-08-15 以降には適用できません。Windows Azure Analytics の Metrics 設定をグループ化します。Metrics 設定によって、BLOB の 1 時間ごとの集計で API 別にグループ化された要求の統計に関する概要が示されます。

HourMetrics

バージョン 2013-08-15 以降では省略可能ですが、それよりも前のバージョンには適用できません。Windows Azure Analytics の HourMetrics 設定をグループ化します。HourMetrics 設定によって、BLOB の 1 時間ごとの集計で API 別にグループ化された要求の統計に関する概要が示されます。

MinuteMetrics

バージョン 2013-08-15 以降では省略可能ですが、それよりも前のバージョンには適用できません。Windows Azure Analytics の MinuteMetrics 設定をグループ化します。MinuteMetrics 設定によって、BLOB の分単位の要求の統計が示されます。2013-08-15 よりも前のバージョンでは、応答本文には MinuteMetrics は含まれません。

Version

LoggingMetricsHourMetrics、または MinuteMetrics の設定が指定されている場合は必須です。構成する Storage Analytics のバージョン。

Delete

LoggingMetricsHourMetrics、または MinuteMetrics の設定が指定されている場合は必須です。ログ構成にのみ適用されます。すべての削除要求をログに記録するかどうかを示します。

Read

LoggingMetricsHourMetrics、または MinuteMetrics の設定が指定されている場合は必須です。ログ構成にのみ適用されます。すべての読み取り要求をログに記録するかどうかを示します。

Write

LoggingMetricsHourMetrics、または MinuteMetrics の設定が指定されている場合は必須です。ログ構成にのみ適用されます。すべての書き込み要求をログに記録するかどうかを示します。

Enabled

必須です。BLOB サービスに対してメトリックが有効であるかどうかを示します。

読み取りアクセスの地理冗長レプリケーションが有効である場合、プライマリ メトリックとセカンダリ メトリックの両方が収集されます。読み取りアクセスの地理冗長レプリケーションが有効でない場合、プライマリ メトリックだけが収集されます。

IncludeAPIs

メトリックが有効な場合のみ必須です。メトリック構成にのみ適用されます。メトリックで、呼び出された API 操作の概要統計情報を生成するかどうかを示します。

RetentionPolicy/Enabled

必須。ストレージ サービスに対して保持ポリシーが有効であるかどうかを示します。

RetentionPolicy/Days

保持ポリシーが有効な場合のみ必須です。メトリックまたはログ データを保持する日数を示します。この値より古いデータは、すべて削除されます。指定できる最小値は 1、最大値は 365 (1 年) です。

DefaultServiceVersion

省略可能。DefaultServiceVersion を設定するには、バージョン 2011-08-18 以降を使用して Set Blob Service Properties を呼び出す必要があります。DefaultServiceVersion は、受信要求のバージョンが指定されていない場合に、BLOB サービスに対する要求に使用する既定のバージョンを示します。有効値は、バージョン 2008-10-27 およびそれ以降のすべての最新バージョンです。適用できるバージョンの詳細については、「Windows Azure の BLOB サービス、キュー サービス、およびテーブル サービスのバージョン管理」を参照してください。

BLOB サービスにのみ適用されます。

Cors

省略可能。Cors 要素は、バージョン 2013-08-15 以降でサポートされています。すべての CORS ルールをグループ化します。

この要素グループを省略しても、既存の CORS 設定は上書きされません。

CorsRule

省略可能。BLOB サービスの CORS ルールを指定します。要求には、最大 5 個の CorsRule 要素を含めることができます。CorsRule 要素が要求本文に含まれていない場合、すべての CORS ルールが削除され、CORS が BLOB サービスで無効になります。

AllowedOrigins

CorsRule 要素が存在する場合は必須です。CORS または "*" を使用して許可される元のドメインのコンマ区切りのリストです ("*" はすべてのドメインを許可します)。元のドメインは 64 個までに限定されています。許可される元のドメインのそれぞれは、最大 256 文字で指定できます。

ExposedHeaders

CorsRule 要素が存在する場合は必須です。CORS クライアントに公開されている応答ヘッダーのコンマ区切りのリストです。定義済みのヘッダーは 64 個まで、プレフィックスが指定されたヘッダーは 2 個までに制限されています。各ヘッダーは最大 256 文字で指定できます。

MaxAgeInSeconds

CorsRule 要素が存在する場合は必須です。クライアント/ブラウザーがプレフライト応答をキャッシュする秒数。

AllowedHeaders

CorsRule 要素が存在する場合は必須です。クロス オリジン要求の一部として許可されるヘッダーのコンマ区切りのリストです。定義済みのヘッダーは 64 個まで、プレフィックスが指定されたヘッダーは 2 個までに制限されています。各ヘッダーは最大 256 文字で指定できます。

AllowedMethods

CorsRule 要素が存在する場合は必須です。元のドメインによる実行が許可される HTTP メソッドのコンマ区切りのリストです。Windows Azure ストレージの場合、許可されているメソッドには、DELETE、GET、HEAD、MERGE、POST、OPTIONS、PUT があります。

応答

応答には HTTP ステータス コードと一連の応答ヘッダーが含まれます。

ステータス コード

操作が正常に終了すると、ステータス コード 202 (Accepted) が返されます。

ステータス コードの詳細については、「サービス管理のステータス コードとエラー コード」を参照してください。

応答ヘッダー

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

 

応答ヘッダー 説明

x-ms-request-id

サービスに対して行われた要求を一意に識別する値。

x-ms-version

要求に対して使用される操作のバージョンを指定します。詳細については、「Windows Azure の BLOB サービス、キュー サービス、およびテーブル サービスのバージョン管理」を参照してください。

応答本文

なし。

承認

この操作を呼び出すことができるのはアカウント所有者のみです。

解説

次の制約事項と制限事項は、Windows Azure ストレージの CORS ルールに適用されます。

  • 最大 5 つのルールを格納できます。

  • 要求で設定されているすべての CORS ルールの最大サイズ (XML タグを除く) は、2 KB を超えることはできません。

  • 許可されるヘッダー、公開されるヘッダー、許可される元のドメインの長さは、256 文字を超えることはできません。

  • 許可されるヘッダーと公開されるヘッダーとして、次のいずれかを使用できます。

    • リテラル ヘッダー。x-ms-meta-processed などの正確なヘッダー名を指定します。最大 64 個のリテラル ヘッダーを要求で指定できます。

    • プレフィックスが指定されたヘッダー。x-ms-meta-data* などのヘッダーのプレフィックスを指定します。このような方法でプレフィックスを指定した場合は、指定のプレフィックスで始まるすべてのヘッダーが許可または公開されます。最大 2 個のプレフィックスが指定されたヘッダーを要求で指定できます。

  • AllowedMethods 要素で指定されたメソッド (または HTTP 動詞) は、Windows Azure ストレージ サービス API でサポートされるメソッドに従っている必要があります。サポートされるメソッドは、DELETE、GET、HEAD、MERGE、POST、OPTIONS、PUT です。

要求での CORS ルールの指定は、省略できます。要求本文で Cors 要素を指定せずに Set Blob Service Properties を呼び出すと、既存の CORS ルールが保持されます。

CORS を無効にするには、空の CORS ルール設定 (つまり、</Cors>) を使用し、内部 CORS ルールを使用せずに、Set Blob Service Properties を呼び出します。この呼び出しによって、既存のルールが削除され、BLOB サービスの CORS が無効になります。

CorsRule 要素が指定されている場合は、すべての CORS ルール要素が必要になります。いずれかの要素がない場合、要求はエラー コード 400 (Bad Request) で失敗します。

バージョン 2013-08-15 以降では、XML 設定要素は省略できます。そのため、特定の要素の更新は、更新済みの要素のみを含む XML を送信することによって実行できます。その他の設定は影響を受けません。

CORS ルールと評価ロジックの詳細については、「Windows Azure ストレージ サービスでのクロス オリジン リソース共有 (CORS) のサポート」を参照してください。

要求と応答の例

次の URI の例では、架空のストレージ アカウント名 myaccount の BLOB サービス プロパティを変更するように要求します。

PUT https://myaccount.blob.core.windows.net/?restype=service&comp=properties HTTP/1.1

要求は次のヘッダーと共に送信されます。

x-ms-version: 2013-08-15
x-ms-date: Mon, 21 Oct 2013 04:28:19 GMT
Authorization: SharedKey
myaccount:Z1lTLDwtq5o1UYQluucdsXk6/iB7YxEu0m6VofAEkUE=
Host: myaccount.blob.core.windows.net

要求は次の XML 本文と共に送信されます。

<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
    <Logging>
        <Version>1.0</Version>
        <Delete>true</Delete>
        <Read>false</Read>
        <Write>true</Write>
        <RetentionPolicy>
            <Enabled>true</Enabled>
            <Days>7</Days>
        </RetentionPolicy>
    </Logging>
    <HourMetrics>
        <Version>1.0</Version>
        <Enabled>true</Enabled>
        <IncludeAPIs>false</IncludeAPIs>
        <RetentionPolicy>
            <Enabled>true</Enabled>
            <Days>7</Days>
        </RetentionPolicy>
    </HourMetrics>
    <MinuteMetrics>
        <Version>1.0</Version>
        <Enabled>true</Enabled>
        <IncludeAPIs>true</IncludeAPIs>
        <RetentionPolicy>
            <Enabled>true</Enabled>
            <Days>7</Days>
        </RetentionPolicy>
    </MinuteMetrics>
    <Cors>
        <CorsRule>
            <AllowedOrigins>http://www.fabrikam.com,http://www.contoso.com</AllowedOrigins>
            <AllowedMethods>GET,PUT</AllowedMethods>
            <MaxAgeInSeconds>500</MaxAgeInSeconds>
            <ExposedHeaders>x-ms-meta-data*,x-ms-meta-customheader</ExposedHeaders>
            <AllowedHeaders>x-ms-meta-target*,x-ms-meta-customheader</AllowedHeaders>
        </CorsRule>
    </Cors>
    <DefaultServiceVersion>2013-08-15</DefaultServiceVersion>
</StorageServiceProperties>

要求が送信された後、次の応答が返されます。

HTTP/1.1 202 Accepted
Connection: Keep-Alive
Transfer-Encoding: chunked
Date: Mon, 21 Oct 2013 04:28:21 GMT
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: cb939a31-0cc6-49bb-9fe5-3327691f2a30
x-ms-version: 2013-08-15

参照

この情報は役に立ちましたか。
(残り 1500 文字)
フィードバックをいただき、ありがとうございました
表示:
© 2014 Microsoft. All rights reserved.