本頁是否能提供幫助?
您對此內容的意見反應十分重要。 請告訴我們您的想法。
其他意見反應?
剩餘 1500 個字元
匯出 (0) 列印
全部展開

設定 Blob 服務屬性

更新日期: 2015年4月

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

您也可以使用這項作業,設定 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 參數 描述

restype=service&comp=properties

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

timeout

選擇性。timeout 參數以秒為單位。如需詳細資訊,請參閱設定 Blob 服務作業的逾時值

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

 

要求標頭 描述

Authorization

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

Datex-ms-date

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

x-ms-version

所有已驗證要求的必要項。指定用於這個要求的作業版本。如需詳細資訊,請參閱為 Windows Azure 中的 Blob、佇列和表格服務進行版本設定

x-ms-client-request-id

選擇性。提供由用戶端產生的不透明值 (具有 1 KB 的字元限制),當儲存體分析記錄為啟用狀態時,此值會記錄在分析記錄檔中。如果是和伺服器所接收的要求相關的用戶端活動,則強烈建議您使用此標頭。如需詳細資訊,請參閱關於儲存體分析記錄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 版開始,您可以由要求主體中指定一個或多個根元素來呼叫 Set Blob Service Properties。根元素包括:

  • 記錄

  • HourMetrics

  • MinuteMetrics

  • Cors

  • DefaultServiceVersion

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

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

 

元素名稱 描述

記錄

從 2013-08-15 版開始為選擇性。較舊的版本則為必要項。為 Azure Analytics記錄 設定分組。

度量

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

HourMetrics

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

MinuteMetrics

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

Version

記錄, 度量, HourMetricsMinuteMetrics 設定已指定,則為必要項目。要設定的儲存體分析版本。

刪除

記錄, 度量, HourMetricsMinuteMetrics 設定已指定,則為必要項目。只適用於記錄組態。指出是否需記錄所有刪除要求。

讀取

記錄, 度量, HourMetricsMinuteMetrics 設定已指定,則為必要項目。只適用於記錄組態。指出是否應該需記錄所有讀取要求。

寫入

記錄, 度量, HourMetricsMinuteMetrics 設定已指定,則為必要項目。只適用於記錄組態。指出是否需記錄所有寫入要求。

啟用

必要項。指出 Blob 服務是否已啟用度量。

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

IncludeAPIs

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

RetentionPolicy/Enabled

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

RetentionPolicy/Days

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

DefaultServiceVersion

選擇性。若要設定DefaultServiceVersion,您必須使用 2011-08-18 版或更新版本來呼叫 Set Blob Service PropertiesDefaultServiceVersion 表示如果未指定連入要求的版本,則針對 Blob 服務的要求使用預設版本。可能的值包括 2008-10-27 版及所有更新版本。如需適用版本的詳細資訊,請參閱為 Windows Azure 中的 Blob、佇列和表格服務進行版本設定

僅適用於 Blob 服務。

Cors

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

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

CorsRule

選擇性。指定 Blob 服務的 CORS 規則。您可以包含最多五個CorsRule 元素在要求中。如果沒有CorsRule 元素包含在要求主體中,便會刪除所有 CORS 規則,而且將對 Blob 服務停用 CORS。

AllowedOrigins

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

ExposedHeaders

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

MaxAgeInSeconds

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

AllowedHeaders

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

AllowedMethods

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

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

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

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

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

 

回應標頭 描述

x-ms-request-id

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

x-ms-version

指定用於回應的作業版本。如需詳細資訊,請參閱為 Windows Azure 中的 Blob、佇列和表格服務進行版本設定

無。

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

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

  • 最多可儲存五個規則。

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

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

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

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

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

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

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

若要停用 CORS,請使用空的 CORS 規則設定呼叫 Set Blob Service Properties (亦即</Cors>),且不要使用內部 CORS 規則。此呼叫將會刪除任何現有的規則,而對 Blob 服務停用 CORS。

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

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

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

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

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 

另請參閱

顯示:
© 2015 Microsoft