Nastavení vlastností služby Table Service

Operace Set Table Service Properties nastaví vlastnosti koncového bodu Azure Table Storage účtu úložiště, včetně vlastností pro Analýza úložiště a pravidla sdílení prostředků mezi zdroji (CORS). Další informace o pravidlech CORS najdete v tématu Podpora CORS pro služby Azure Storage.

Žádost

Požadavek můžete zadat Set Table Service Properties následujícím způsobem. Doporučujeme HTTPS. Nahraďte account-name názvem vašeho účtu úložiště.

Metoda Identifikátor URI žádosti Verze PROTOKOLU HTTP
PUT https://account-name.table.core.windows.net/?restype=service&comp=properties HTTP/1.1

Všimněte si, že identifikátor URI musí vždy obsahovat lomítko (/), aby se název hostitele oddělil od části cesty a dotazu identifikátoru URI. V případě této operace je část cesty identifikátoru URI prázdná.

Parametry identifikátoru URI

Parametr identifikátoru URI Description
restype=service&comp=properties Povinná hodnota. K nastavení vlastností služby Azure Storage se vyžaduje kombinace obou řetězců dotazu.
timeout Nepovinný parametr. Parametr timeout je vyjádřen v sekundách.

Hlavičky požadavku

Následující tabulka popisuje požadované a volitelné hlavičky požadavků:

Hlavička požadavku Popis
Authorization Povinná hodnota. Určuje schéma autorizace, název účtu úložiště a podpis. Další informace najdete v tématu Autorizace požadavků do služby Azure Storage.
Date nebo x-ms-date Povinná hodnota. Určuje formát UTC (Coordinated Universal Time). Další informace najdete v tématu Autorizace požadavků do služby Azure Storage.
x-ms-version Povinné pro všechny autorizované žádosti. Určuje verzi operace, která se má použít pro tento požadavek. Další informace najdete v tématu Správa verzí pro služby Azure Storage.
x-ms-client-request-id Nepovinný parametr. Poskytuje klientem vygenerovanou neprůselnou hodnotu s limitem počtu znaků 1 kibibajt (KiB), který je zaznamenán v protokolech při konfiguraci protokolování. Důrazně doporučujeme použít tuto hlavičku ke korelaci aktivit na straně klienta s požadavky, které server přijímá.

Text požadavku

Pro verzi 2012-02-12 a starší je formát textu požadavku následující:

<?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>  

Pro verzi 2013-08-15 a novější je formát textu požadavku následující:

<?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>  

Počínaje verzí 2013-08-15 můžete volat Set Table Service Properties s jedním nebo více kořenovými prvky zadanými v textu požadavku. Mezi kořenové prvky patří:

  • Logging

  • HourMetrics

  • MinuteMetrics

  • Cors

Už není nutné zadávat každý kořenový prvek v požadavku. Pokud vynecháte kořenový prvek, stávající nastavení služby pro tuto funkci se zachovají. Pokud ale zadáte kořenový prvek, musíte zadat každý podřízený prvek pro tento prvek.

Následující tabulka popisuje prvky textu požadavku:

Název elementu Popis
Logging Volitelné pro verzi 2013-08-15 a novější. Požadováno pro starší verze. Seskupí nastavení Analýza úložištěLogging.
Metrics Vyžaduje se pro verzi 2012-02-12 a starší. Neplatí pro verzi 2013-08-15 a novější. Seskupí nastavení Analýza úložištěMetrics. Nastavení Metrics poskytují souhrn statistik žádostí seskupených podle rozhraní API v hodinové agregaci tabulek.
HourMetrics Volitelné pro verzi 2013-08-15 a novější. Neplatí pro starší verze. Seskupí nastavení Analýza úložištěHourMetrics. Nastavení HourMetrics poskytují souhrn statistik žádostí seskupených podle rozhraní API v hodinové agregaci tabulek.
MinuteMetrics Volitelné pro verzi 2013-08-15 a novější. Neplatí pro starší verze. Seskupí nastavení Analýza úložištěMinuteMetrics. Nastavení MinuteMetrics poskytuje statistiky žádostí pro každou minutu pro tabulky. Pro verze starší než 2013-08-15 MinuteMetrics není součástí textu odpovědi.
Version Povinná hodnota. Označuje verzi Analýza úložiště, která se má nakonfigurovat.
Delete Povinná hodnota. Platí jenom pro konfiguraci protokolování. Určuje, jestli se mají protokolovat všechny žádosti o odstranění.
Read Povinná hodnota. Platí jenom pro konfiguraci protokolování. Určuje, jestli se mají protokolovat všechny žádosti o čtení.
Write Povinná hodnota. Platí jenom pro konfiguraci protokolování. Určuje, jestli se mají protokolovat všechny žádosti o zápis.
Enabled Povinná hodnota. Označuje, jestli jsou pro službu Azure Storage povolené metriky.

Pokud je povolená geograficky redundantní replikace s přístupem pro čtení, shromažďují se primární i sekundární metriky. Pokud není povolená geograficky redundantní replikace s přístupem pro čtení, shromažďují se pouze primární metriky.
IncludeAPIs Povinné pouze v případě, že jsou povolené metriky. Platí jenom pro konfiguraci metrik. Určuje, jestli by metriky měly generovat souhrnné statistiky pro operace volaných rozhraní API.
RetentionPolicy/Enabled Povinná hodnota. Určuje, jestli je pro službu Azure Storage povolená zásada uchovávání informací.
RetentionPolicy/Days Povinné pouze v případě, že jsou povolené zásady uchovávání informací. Určuje počet dnů, po který se mají metriky nebo data protokolování uchovávat. Všechna data starší než tato hodnota budou odstraněna. Minimální hodnota, kterou můžete zadat, je 1. Největší hodnota je 365 (jeden rok).
Cors Nepovinný parametr. Podporováno pro verzi 2013-08-15 a novější. Seskupí všechna pravidla CORS.

Vynecháním této skupiny prvků se nepřepíše existující nastavení CORS.
CorsRule Nepovinný parametr. Určuje pravidlo CORS pro Table Storage. Do požadavku můžete zahrnout až pět elementů CorsRule. Pokud v textu požadavku nejsou zahrnuty žádné CorsRule prvky, odstraní se všechna pravidla CORS a CORS se pro Table Storage zakáže.
AllowedOrigins Vyžaduje se, pokud CorsRule je prvek k dispozici. Poskytuje seznam domén původu oddělených čárkami, který bude povolen prostřednictvím CORS nebo obsahuje * všechny domény. Původní doména může také v subdoméně obsahovat zástupný znak, který umožňuje žádosti prostřednictvím CORS pro všechny subdomény domény. Omezeno na 64 původních domén. Každý povolený původ může mít až 256 znaků.
ExposedHeaders Povinný argument, CorsRule pokud element existuje. Poskytuje seznam hlaviček odpovědí oddělených čárkami, které se mají zpřístupnit klientům CORS. Omezeno na 64 definovaných hlaviček a dvě předpony. Každé záhlaví může mít maximálně 256 znaků.
MaxAgeInSeconds Povinný argument, CorsRule pokud element existuje. Určuje počet sekund, po které by měl klient nebo prohlížeč ukládat předběžnou odpověď do mezipaměti.
AllowedHeaders Požadováno, CorsRule pokud element existuje. Poskytuje čárkami oddělený seznam hlaviček, které mohou být součástí požadavku mezi zdroji. Omezeno na 64 definovaných hlaviček a 2 záhlaví s předponou. Každé záhlaví může mít maximálně 256 znaků.
AllowedMethods Požadováno, CorsRule pokud element existuje. Poskytuje seznam metod HTTP oddělených čárkami, které může zdroj spustit. Pro Azure Storage jsou DELETEpovolené metody , GET, HEAD, MERGE, POST, , OPTIONSa PUT.

Odpověď

Odpověď obsahuje stavový kód HTTP, sadu hlaviček odpovědi a tělo odpovědi.

Stavový kód

Úspěšná operace vrátí stavový kód 202 (přijato).

Hlavičky odpovědi

Odpověď na tuto operaci obsahuje následující hlavičky. Odpověď může také obsahovat další standardní hlavičky HTTP. Všechny standardní hlavičky odpovídají specifikaci protokolu HTTP/1.1.

Hlavička odpovědi Description
x-ms-request-id Určuje hodnotu, která jednoznačně identifikuje požadavek provedený proti službě.
x-ms-version Určuje verzi operace použité pro odpověď. Další informace najdete v tématu Správa verzí pro služby Azure Storage.
x-ms-client-request-id Dá se použít k řešení potíží s požadavky a odpovídajícími odpověďmi. Hodnota této hlavičky je rovna hodnotě x-ms-client-request-id hlavičky, pokud je v požadavku a hodnota je maximálně 1 024 viditelných znaků ASCII. Pokud hlavička x-ms-client-request-id v požadavku není, nebude tato hlavička v odpovědi.

Text odpovědi

Žádné

Autorizace

Tuto operaci může volat pouze vlastník účtu.

Poznámky

Na pravidla CORS ve službě Azure Storage se vztahují následující omezení:

  • Můžete uložit maximálně pět pravidel.

  • Maximální velikost všech nastavení pravidel CORS v požadavku s výjimkou značek XML by neměla překročit 2 KiB.

  • Délka povolené hlavičky, zveřejněné hlavičky nebo povoleného původu by neměla překročit 256 znaků.

  • Povolené hlavičky a vystavené hlavičky můžou být:

    • Záhlaví literálů, ve kterých je zadaný přesný název záhlaví, například x-ms-meta-processed. V požadavku můžete zadat maximálně 64 záhlaví literálů.

    • Hlavičky s předponou, ve kterých je zadaná předpona záhlaví, například x-ms-meta-data\. Zadáním předpony tímto způsobem povolíte nebo zpřístupníte jakoukoli hlavičku, která začíná touto předponou. V požadavku můžete zadat maximálně dvě hlavičky s předponou.

  • Metody (nebo příkazy HTTP) zadané v elementu AllowedMethods musí odpovídat metodám, které podporují rozhraní API služby Azure Storage. Podporované metody jsou DELETE, GET, HEAD, MERGE, POST, OPTIONSa PUT.

Zadání pravidel CORS v požadavku je volitelné. Pokud zavoláte Set Table Service Properties bez zadání elementu Cors v textu požadavku, budou zachována všechna existující pravidla CORS.

Pokud chcete CORS zakázat, volejte Set Table Service Properties s prázdným nastavením pravidel CORS (například </Cors>) a bez vnitřních pravidel CORS. Toto volání odstraní všechna existující pravidla a zakáže CORS pro Table Storage.

Všechny prvky pravidla CORS jsou vyžadovány, pokud zadáte CorsRule element. Pokud některý prvek chybí, požadavek selže s kódem chyby 400 (Chybný požadavek).

Počínaje verzí 2013-08-15 jsou prvky pro nastavení XML volitelné. Konkrétní prvek můžete aktualizovat odesláním xml, který obsahuje pouze aktualizovaný prvek a nemá vliv na další nastavení.

Podrobné informace o pravidlech CORS a logice vyhodnocení najdete v tématu Podpora CORS pro služby Azure Storage.

Ukázkový požadavek a odpověď

Následující ukázkový identifikátor URI vytvoří požadavek na změnu vlastností Table Storage pro fiktivní účet úložiště myaccount:

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

Požadavek se odešle s následujícími hlavičkami:

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  

Požadavek se odešle s následujícím textem 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>  
  

Po odeslání požadavku se vrátí následující odpověď:

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  
  

Viz také