Set Table Service Properties

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

要求

要求は Set Table Service Properties 次のように指定できます。 HTTPS をお勧めします。 account-name をストレージ アカウントの名前に置き換えます。

Method 要求 URI HTTP バージョン
PUT https://account-name.table.core.windows.net/?restype=service&comp=properties HTTP/1.1

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

URI パラメーター

URI パラメーター 説明
restype=service&comp=properties 必須。 Azure Storage サービスのプロパティを設定するには、両方のクエリ文字列の組み合わせが必要です。
timeout 省略可能。 timeout パラメーターは、秒単位で表されます。

要求ヘッダー

次の表では、必須および省略可能な要求ヘッダーについて説明します。

要求ヘッダー 説明
Authorization 必須。 承認スキーム、ストレージ アカウント名、および署名を指定します。 詳細については、「Azure Storage への要求を承認する」をご覧ください。
Date または x-ms-date 必須。 要求に対して協定世界時 (UTC) を指定します。 詳細については、「Azure Storage への要求を承認する」をご覧ください。
x-ms-version すべての承認された要求に必要です。 この要求に使用する操作のバージョンを指定します。 詳細については、「Azure Storage サービスのバージョン管理」を参照してください。
x-ms-client-request-id 省略可能。 ログ記録の構成時にログに記録される 1 kibibyte (KiB) 文字制限を使用して、クライアントによって生成された不透明な値を提供します。 このヘッダーを使用して、クライアント側のアクティビティとサーバーが受信する要求を関連付けるよう強くお勧めします。

要求本文

バージョン 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>  
</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-separated-list-of-response-headers</ExposedHeaders>  
            <AllowedHeaders> comma-separated-list-of-request-headers </AllowedHeaders>  
        </CorsRule>  
    </Cors>  
</StorageServiceProperties>  

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

  • Logging

  • HourMetrics

  • MinuteMetrics

  • Cors

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

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

要素名 説明
Logging バージョン 2013-08-15 以降では省略可能です。 それよりも前のバージョンでは必須です。 Storage AnalyticsLogging設定をグループにします。
Metrics バージョン 2012-02-12 以前では必須です。 バージョン 2013-08-15 以降には適用されません。 Storage AnalyticsMetrics設定をグループにします。 Metrics 設定によって、テーブルの 1 時間ごとの集計で API 別にグループ化された要求の統計に関する概要が示されます。
HourMetrics バージョン 2013-08-15 以降では省略可能です。 以前のバージョンには適用されません。 Storage AnalyticsHourMetrics設定をグループにします。 HourMetrics 設定によって、テーブルの 1 時間ごとの集計で API 別にグループ化された要求の統計に関する概要が示されます。
MinuteMetrics バージョン 2013-08-15 以降では省略可能です。 以前のバージョンには適用されません。 Storage AnalyticsMinuteMetrics設定をグループにします。 MinuteMetrics 設定によって、テーブルの分単位の要求の統計が示されます。 2013-08-15 よりも前のバージョンでは、応答本文には MinuteMetrics は含まれません。
Version 必須。 構成するStorage Analyticsのバージョンを示します。
Delete 必須。 ログ構成にのみ適用されます。 すべての削除要求をログに記録するかどうかを示します。
Read 必須。 ログ構成にのみ適用されます。 すべての読み取り要求をログに記録するかどうかを示します。
Write 必須。 ログ構成にのみ適用されます。 すべての書き込み要求をログに記録するかどうかを示します。
Enabled 必須。 Azure Storage サービスに対してメトリックが有効になっているかどうかを示します。

読み取りアクセスの地理冗長レプリケーションが有効である場合、プライマリ メトリックとセカンダリ メトリックの両方が収集されます。 読み取りアクセスの地理冗長レプリケーションが有効でない場合、プライマリ メトリックだけが収集されます。
IncludeAPIs メトリックが有効な場合のみ必須です。 メトリック構成にのみ適用されます。 メトリックで、呼び出された API 操作の概要統計情報を生成するかどうかを示します。
RetentionPolicy/Enabled 必須。 Azure Storage サービスに対してアイテム保持ポリシーが有効になっているかどうかを示します。
RetentionPolicy/Days 保持ポリシーが有効な場合のみ必須です。 メトリックまたはログ データを保持する日数を示します。 この値より古いデータは、すべて削除されます。 指定できる最小値は です 1。 最大値は 365 (1 年) です。
Cors 省略可能。 バージョン 2013-08-15 以降でサポートされています。 すべての CORS ルールをグループ化します。

この要素グループを省略しても、既存の CORS 設定は上書きされません。
CorsRule 省略可能。 Table Storage の CORS 規則を指定します。 要求には最大 5 個の CorsRule 要素を含めることができます。 要求本文に要素が含まれていない CorsRule 場合、すべての CORS ルールが削除され、Table Storage に対して CORS が無効になります。
AllowedOrigins CorsRule 要素が存在する場合は必須です。 CORS 経由で許可される配信元ドメインのコンマ区切りの一覧を提供します。または、すべてのドメインを許可するために を含 * みます。 配信元ドメインには、ドメインのすべてのサブドメインに対する CORS 経由の要求を許可するワイルドカード文字をサブドメインに含めることもできます。 元のドメインは 64 個までに限定されています。 許可される元のドメインのそれぞれは、最大 256 文字で指定できます。
ExposedHeaders 要素が存在する CorsRule 場合は必須です。 CORS クライアントに公開する応答ヘッダーのコンマ区切りの一覧を提供します。 定義済みのヘッダーは 64 個まで、プレフィックスが指定されたヘッダーは 2 個までに制限されています。 各ヘッダーは最大 256 文字で指定できます。
MaxAgeInSeconds 要素が存在する CorsRule 場合は必須です。 クライアントまたはブラウザーがプレフライト応答をキャッシュする秒数を示します。
AllowedHeaders 要素が存在する場合は CorsRule 必須です。 クロスオリジン要求の一部として許可されるヘッダーのコンマ区切りのリストを提供します。 定義済みのヘッダーは 64 個まで、プレフィックスが指定されたヘッダーは 2 個までに制限されています。 各ヘッダーは最大 256 文字で指定できます。
AllowedMethods 要素が存在する場合は CorsRule 必須です。 配信元で実行できる HTTP メソッドのコンマ区切りの一覧を提供します。 Azure Storage の場合、許可されるメソッドはDELETE、、、GETHEADMERGEPOSTOPTIONSおよび PUTです。

[応答]

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

状態コード

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

応答ヘッダー

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

応答ヘッダー 説明
x-ms-request-id サービスに対して行われた要求を一意に識別する値を指定します。
x-ms-version 要求に対して使用される操作のバージョンを指定します。 詳細については、「Azure Storage サービスのバージョン管理」を参照してください。
x-ms-client-request-id 要求と対応する応答のトラブルシューティングに使用できます。 このヘッダーの値は、要求に存在し、その値 x-ms-client-request-id が最大 1,024 文字の可視 ASCII 文字である場合、ヘッダーの値と同じです。 ヘッダーが x-ms-client-request-id 要求に存在しない場合、このヘッダーは応答に存在しません。

応答本文

なし。

承認

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

注釈

次の制約事項と制限事項は、Azure Storage の CORS ルールに適用されます。

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

  • XML タグを除く要求のすべての CORS ルール設定の最大サイズは、2 KiB を超えないようにする必要があります。

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

  • 許可されるヘッダーと公開されるヘッダーは、次のいずれかです。

    • 正確なヘッダー名が指定されているリテラル ヘッダー (例: x-ms-meta-processed)。 要求では、最大 64 個のリテラル ヘッダーを指定できます。

    • ヘッダーのプレフィックスが指定されているプレフィックス付きヘッダー (例: x-ms-meta-data\)。 この方法でプレフィックスを指定すると、そのプレフィックスで始まるヘッダーが許可または公開されます。 要求では、プレフィックス付きヘッダーを最大 2 つ指定できます。

  • 要素で AllowedMethods 指定されたメソッド (または HTTP 動詞) は、Azure Storage サービス API がサポートするメソッドに準拠している必要があります。 サポートされているメソッドは、DELETE、、GET、、MERGEHEADOPTIONSPOST、および PUTです。

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

CORS を無効にするには、空の CORS ルール設定 (例: ) を使用して を呼び出し、</Cors>内部 CORS 規則は呼び出Set Table Service Propertiesしません。 この呼び出しは、既存の規則を削除し、Table Storage の CORS を無効にします。

要素を指定する場合は、すべての CORS ルール要素が CorsRule 必要です。 要素が見つからない場合、要求はエラー コード 400 (無効な要求) で失敗します。

バージョン 2013-08-15 以降では、XML 設定の要素は省略可能です。 更新された要素のみを含み、他の設定には影響しない XML を送信することで、特定の要素を更新できます。

CORS ルールと評価ロジックの詳細については、「 Azure Storage サービスの CORS サポート」を参照してください。

要求と応答の例

次のサンプル URI は、 myaccount という名前の架空のストレージ アカウントの Table Storage プロパティを変更するように要求します。

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

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

x-ms-version: 2013-08-15  
x-ms-date: Mon, 21 Oct 2013 04:38:23 GMT  
Authorization: SharedKey  
myaccount:Z1lTLDwtq5o1UYQluucdsXk6/iB7YxEu0m6VofAEkUE=  
Host: myaccount.table.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>  
</StorageServiceProperties>  
  

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

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

関連項目