匯出 (0) 列印
全部展開

設定表格服務屬性

更新日期: 2013年12月

Set Table Service Properties 作業會為儲存體帳戶的表格服務端點設定屬性,包括儲存體分析的屬性和 CORS (跨原始資源共用) 規則。如需有關 CORS 規則的詳細資訊,請參閱 跨原始資源共用 (CORS) 支援 Azure 儲存體服務

請使用下列格式指定 Set Table Service Properties 要求。建議使用 HTTPS。請以您的儲存體帳戶名稱取代 <account-name>

 

方法 要求 URI HTTP 版本

PUT

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

HTTP/1.1

請注意,URI 一律需包含正斜線 (/),將主機名稱與 URI 的路徑和查詢部分隔開。若為這項作業,URI 的路徑部分為空白。

 

URI 參數 描述

restype=service&comp=properties

必要項。設定儲存體服務屬性時,需要這兩個查詢字串的組合。

timeout

選擇性。timeout 參數以秒為單位。

下表描述必要的和選用的要求標頭。

 

要求標頭 描述

Authorization

必要項。指定驗證配置、儲存體帳戶名稱及簽章。如需詳細資訊,請參閱Azure 儲存體服務的驗證

Datex-ms-date

必要項。指定要求的國際標準時間 (UTC)。如需詳細資訊,請參閱Azure 儲存體服務的驗證

x-ms-version

所有已驗證要求的必要項。指定用於這個要求的作業版本。如需詳細資訊,請參閱Azure 儲存體服務的版本設定

x-ms-client-request-id

選擇性。提供由用戶端產生的不透明值 (具有 1 KB 的字元限制),當儲存體分析記錄為啟用狀態時,此值會記錄在分析記錄檔中。如果是和伺服器所接收的要求相關的用戶端活動,則強烈建議您使用此標頭。如需詳細資訊,請參閱關於儲存體分析記錄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>
</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>
</StorageServiceProperties>

從 2013-08-15 版開始,您可以由要求主體中指定一個或多個根元素來呼叫 Set Table Service Properties。根元素包括:

  • 記錄

  • HourMetrics

  • MinuteMetrics

  • Cors

現已不再需要於要求上指定每一個根元素。如果省略根元素,將會保留服務該項功能現有的設定。不過,一旦指定了給定的根元素,就必須指定該元素的每個子元素。

下表說明要求主體的項目:

 

元素名稱 描述

記錄

從 2013-08-15 版開始為選擇性。較舊的版本則為必要項。將 Windows Azure 分析 Logging 設定分組。

度量

2012-02-12 版及更早版本為必要項。不適用於 2013-08-15 版或更新版本。將 Windows Azure 分析 Metrics 設定分組。Metrics 設定提供依應用程式開發介面分組,對表格進行每小時彙總的要求統計資料摘要。

HourMetrics

2013-08-15 版或更新版本為選擇性,而不適用於較舊的版本。將 Windows Azure 分析 HourMetrics 設定分組。HourMetrics 設定提供依應用程式開發介面分組,對表格進行每小時彙總的要求統計資料摘要。

MinuteMetrics

2013-08-15 版或更新版本為選擇性,而不適用於較舊的版本。將 Windows Azure 分析 MinuteMetrics 設定分組。MinuteMetrics 設定提供表格每一分鐘的要求統計資料。若為 2013-08-15 之前的版本,則 MinuteMetrics 不會包含在回應主體中。

Version

必要項。要設定的儲存體分析版本。

刪除

必要項。只適用於記錄組態。指出是否需記錄所有刪除要求。

讀取

必要項。只適用於記錄組態。指出是否應該需記錄所有讀取要求。

寫入

必要項。只適用於記錄組態。指出是否需記錄所有寫入要求。

啟用

必要項。指出是否已啟用儲存體服務的度量。

如果啟用了讀取權限的地理備援複寫,將會一併收集主要和次要度量。如果未啟用讀取權限的地理備援複寫,只會收集主要度量。

IncludeAPIs

唯有啟用度量時方為必要項。只適用於度量組態。指出度量是否應該產生所呼叫之應用程式開發介面作業的摘要統計資料。

RetentionPolicy/Enabled

必要項。指出是否已啟用儲存體服務的保留原則。

RetentionPolicy/Days

只有在啟用保留原則時才需要。表示應該保留度量或記錄資料的天數。比此值更早的所有資料將會遭到刪除。您可以指定的最小值為 1,最大值為 365 (一年)。

Cors

選擇性。Cors 元素為 2013-08-15 版或更新版本所支援。將所有 CORS 規則分組。

省略此元素群組並不會覆寫現有的 CORS 設定。

CorsRule

選擇性。指定表格服務的 CORS 規則。要求中最多可包含五個 CorsRule 元素。若要求主體中未包含任何 CorsRule 元素,便會刪除所有 CORS 規則,而且將對資料表服務停用 CORS。

AllowedOrigins

如果 CorsRule 元素存在,即為必要項。透過 CORS 所允許的原始網域以逗號分隔的清單,或 "*" 表示允許所有網域。限制為 64 個原始網域。每個允許的原始網域最多可以有 256 個字元。

ExposedHeaders

如果 CorsRule 元素存在,即為必要項。向 CORS 用戶端公開的回應標頭以逗號分隔的清單。限制為 64 個定義的標頭和兩個帶有前置詞的標頭。每個標頭最多可以有 256 個字元。

MaxAgeInSeconds

如果 CorsRule 元素存在,即為必要項。用戶端/瀏覽器應該快取預檢回應的秒數。

AllowedHeaders

如果 CorsRule 元素存在,即為必要項。允許併入跨原始要求的標頭以逗號分隔的清單。限制為 64 個定義的標頭和 2 個帶有前置詞的標頭。每個標頭最多可以有 256 個字元。

AllowedMethods

如果 CorsRule 元素存在,即為必要項。允許由原始網域執行的 HTTP 方法以逗號分隔的清單。就 Windows Azure 儲存體而言,允許的方法為 DELETE、GET、HEAD、MERGE、POST、OPTIONS 或 PUT。

回應包括 HTTP 狀態碼、一組回應標頭和回應主體。

成功的作業會傳回狀態碼「202 (已接受)」。

如需狀態碼的資訊,請參閱服務管理狀態和錯誤碼

這項作業的回應包括下列標頭。回應也可能包括其他標準 HTTP 標頭。所有標準標頭都符合 HTTP/1.1 通訊協定規格

 

回應標頭 描述

x-ms-request-id

唯一識別對服務發出之要求的值。

x-ms-version

指定用於回應的作業版本。如需詳細資訊,請參閱Azure 儲存體服務的版本設定

無。

只有帳戶擁有者可呼叫這項作業。

下列限制事項適用於 Windows Azure 儲存體的 CORS 規則:

  • 最多可儲存五個規則。

  • 要求上的所有 CORS 規則設定,排除 XML 標記後的大小上限不得超過 2 KB。

  • 允許的標頭、公開的標頭或允許的原始網域,其長度均不得超過 256 個字元。

  • 允許的標頭和公開的標頭可以是:

    • 常值標頭,即提供確切的標頭名稱,例如 x-ms-meta-processed。要求上最多可指定 64 個常值標頭。

    • 帶有前置詞的標頭,即提供標頭的前置詞,例如 x-ms-meta-data*。藉此方式指定前置詞,便能允許或公開以給定前置詞開頭的任何標頭。要求上最多可指定兩個帶有前置詞的標頭。

  • AllowedMethods 元素中指定的方法 (或 HTTP 動詞命令),必須符合 Windows Azure 儲存體服務 API 支援的方法。支援的方法包括 DELETE、GET、HEAD、MERGE、POST、OPTIONS 和 PUT。

在要求上指定 CORS 規則是選擇性的作法。如果呼叫 Set Table Service Properties 而未在要求主體中指定 Cors 元素,則會保留任何現有的 CORS 規則。

若要停用 CORS,請以空的 CORS 規則設定 (例如</Cors>) 和不含內部 CORS 規則的方式呼叫 Set Table Service Properties。此呼叫將會刪除任何現有的規則,而對表格服務停用 CORS。

一旦指定了 CorsRule 元素,則所有的 CORS 規則元素皆為必要項。如果遺漏任何元素,要求將會失敗並顯示錯誤碼 400 (Bad Request)。

從 2013-08-15 版開始,XML 設定元素一律為選擇性,所以若要更新特定的元素,可藉由傳送 XML 只包含要更新的元素來完成,而其他設定則將不受影響。

如需有關 CORS 規則和評估邏輯的詳細資訊,請參閱跨原始資源共用 (CORS) 支援 Azure 儲存體服務

下列範例 URI 要求變更虛構儲存體帳戶 myaccount 的表格服務屬性:

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

另請參閱

顯示:
© 2014 Microsoft