Ange egenskaper för tabelltjänst

Åtgärden Set Table Service Properties anger egenskaper för ett lagringskontos Azure Table Storage-slutpunkt, inklusive egenskaper för Lagringsanalys och CORS-regler (Cross-Origin Resource Sharing). Mer information om CORS-regler finns i CORS-stöd för Azure Storage-tjänsterna.

Förfrågan

Du kan ange begäran enligt Set Table Service Properties följande. Vi rekommenderar HTTPS. Ersätt kontonamnet med namnet på ditt lagringskonto.

Metod URI för förfrågan HTTP-version
PUT https://account-name.table.core.windows.net/?restype=service&comp=properties HTTP/1.1

Observera att URI:n alltid måste innehålla snedstrecket (/) för att skilja värdnamnet från sökvägen och frågedelarna i URI:n. När det gäller den här åtgärden är sökvägsdelen av URI:n tom.

URI-parametrar

URI-parameter Description
restype=service&comp=properties Krävs. Kombinationen av båda frågesträngarna krävs för att ange egenskaperna för Azure Storage-tjänsten.
timeout Valfritt. Parametern timeout uttrycks i sekunder.

Begärandehuvuden

I följande tabell beskrivs obligatoriska och valfria begärandehuvuden:

Begärandehuvud Beskrivning
Authorization Krävs. Anger auktoriseringsschema, lagringskontonamn och signatur. Mer information finns i Auktorisera begäranden till Azure Storage.
Date eller x-ms-date Krävs. Anger Coordinated Universal Time (UTC) för begäran. Mer information finns i Auktorisera begäranden till Azure Storage.
x-ms-version Krävs för alla auktoriserade begäranden. Anger vilken version av åtgärden som ska användas för den här begäran. Mer information finns i Versionshantering för Azure Storage-tjänsterna.
x-ms-client-request-id Valfritt. Tillhandahåller ett klientgenererat, täckande värde med en teckengräns på 1 kibibyte (KiB) som registreras i loggarna när loggningen har konfigurerats. Vi rekommenderar starkt att du använder det här huvudet för att korrelera aktiviteter på klientsidan med begäranden som servern tar emot.

Begärandetext

För version 2012-02-12 och tidigare är formatet för begärandetexten följande:

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

För version 2013-08-15 och senare är formatet för begärandetexten följande:

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

Från och med version 2013-08-15 kan du anropa Set Table Service Properties med ett eller flera rotelement som anges i begärandetexten. Rotelementen omfattar:

  • Logging

  • HourMetrics

  • MinuteMetrics

  • Cors

Du behöver inte längre ange varje rotelement i begäran. Om du utelämnar ett rotelement bevaras de befintliga inställningarna för tjänsten för den funktionen. Men om du anger ett rotelement måste du ange varje underordnat element för det elementet.

I följande tabell beskrivs elementen i begärandetexten:

Elementnamn Beskrivning
Logging Valfritt för version 2013-08-15 och senare. Krävs för tidigare versioner. Grupperar inställningarna för LagringsanalysLogging.
Metrics Krävs för version 2012-02-12 och tidigare. Gäller inte för version 2013-08-15 och senare. Grupperar inställningarna för LagringsanalysMetrics. Metrics Inställningarna ger en sammanfattning av begärandestatistik grupperad efter API i timaggregeringar för tabeller.
HourMetrics Valfritt för version 2013-08-15 och senare. Gäller inte för tidigare versioner. Grupperar inställningarna för LagringsanalysHourMetrics. HourMetrics Inställningarna ger en sammanfattning av begärandestatistik grupperad efter API i timaggregeringar för tabeller.
MinuteMetrics Valfritt för version 2013-08-15 och senare. Gäller inte för tidigare versioner. Grupperar inställningarna för LagringsanalysMinuteMetrics. MinuteMetrics Inställningarna tillhandahåller begärandestatistik för varje minut för tabeller. För tidigare versioner än 2013-08-15 MinuteMetrics ingår inte i svarstexten.
Version Krävs. Anger vilken version av Lagringsanalys som ska konfigureras.
Delete Krävs. Gäller endast för loggningskonfiguration. Anger om alla borttagningsbegäranden ska loggas.
Read Krävs. Gäller endast för loggningskonfiguration. Anger om alla läsbegäranden ska loggas.
Write Krävs. Gäller endast för loggningskonfiguration. Anger om alla skrivbegäranden ska loggas.
Enabled Krävs. Anger om mått är aktiverade för Azure Storage-tjänsten.

Om geo-redundant replikering med läsåtkomst är aktiverad samlas både primära och sekundära mått in. Om geo-redundant replikering med läsåtkomst inte är aktiverad samlas endast primära mått in.
IncludeAPIs Krävs endast om mått är aktiverade. Gäller endast för måttkonfiguration. Anger om mått ska generera sammanfattningsstatistik för så kallade API-åtgärder.
RetentionPolicy/Enabled Krävs. Anger om en kvarhållningsprincip är aktiverad för Azure Storage-tjänsten.
RetentionPolicy/Days Krävs endast om en kvarhållningsprincip är aktiverad. Anger hur många dagar som mått eller loggningsdata ska behållas. Alla data som är äldre än det här värdet tas bort. Det minsta värde som du kan ange är 1. Det största värdet är 365 (ett år).
Cors Valfritt. Stöds för version 2013-08-15 och senare. Grupperar alla CORS-regler.

Om du utelämnar den här elementgruppen skrivs inte befintliga CORS-inställningar över.
CorsRule Valfritt. Anger en CORS-regel för Table Storage. Du kan inkludera upp till fem CorsRule-element i begäran. Om inga CorsRule element ingår i begärandetexten tas alla CORS-regler bort och CORS inaktiveras för Table Storage.
AllowedOrigins Krävs om CorsRule elementet finns. Innehåller en kommaavgränsad lista över ursprungsdomäner som tillåts via CORS, eller som innehåller * för att tillåta alla domäner. En ursprungsdomän kan också innehålla jokertecken i underdomänen för att tillåta begäranden via CORS för alla underdomäner i en domän. Begränsat till 64 ursprungsdomäner. Varje tillåtet ursprung kan innehålla upp till 256 tecken.
ExposedHeaders Krävs om elementet CorsRule finns. Innehåller en kommaavgränsad lista över svarshuvuden som ska exponeras för CORS-klienter. Begränsat till 64 definierade rubriker och två prefixrubriker. Varje rubrik kan innehålla upp till 256 tecken.
MaxAgeInSeconds Krävs om elementet CorsRule finns. Anger antalet sekunder som klienten eller webbläsaren ska cachelagrat ett förinställt svar.
AllowedHeaders Krävs om elementet CorsRule finns. Innehåller en kommaavgränsad lista över rubriker som tillåts vara en del av begäran om korsande ursprung. Begränsat till 64 definierade rubriker och 2 prefixrubriker. Varje rubrik kan innehålla upp till 256 tecken.
AllowedMethods Krävs om elementet CorsRule finns. Innehåller en kommaavgränsad lista över HTTP-metoder som ursprunget tillåts köra. För Azure Storage är DELETEtillåtna metoder , GET, HEAD, MERGE, POST, OPTIONSoch PUT.

Svarsåtgärder

Svaret innehåller en HTTP-statuskod, en uppsättning svarshuvuden och en svarstext.

Statuskod

En lyckad åtgärd returnerar statuskod 202 (godkänd).

Svarshuvuden

Svaret för den här åtgärden innehåller följande rubriker. Svaret kan också innehålla ytterligare HTTP-standardhuvuden. Alla standardhuvuden överensstämmer med http/1.1-protokollspecifikationen.

Svarsrubrik Description
x-ms-request-id Anger ett värde som unikt identifierar en begäran som görs mot tjänsten.
x-ms-version Anger vilken version av åtgärden som används för svaret. Mer information finns i Versionshantering för Azure Storage-tjänsterna.
x-ms-client-request-id Kan användas för att felsöka begäranden och motsvarande svar. Värdet för det här huvudet är lika med värdet x-ms-client-request-id för rubriken, om det finns i begäran och värdet är högst 1 024 synliga ASCII-tecken. Om huvudet x-ms-client-request-id inte finns i begäran kommer det här huvudet inte att finnas i svaret.

Själva svaret

Inga.

Auktorisering

Endast kontoinnehavaren kan anropa den här åtgärden.

Kommentarer

Följande begränsningar och begränsningar gäller för CORS-regler i Azure Storage:

  • Du kan lagra högst fem regler.

  • Den maximala storleken för alla CORS-regelinställningar för begäran, exklusive XML-taggar, får inte överstiga 2 KiB.

  • Längden på en tillåten rubrik, exponerad rubrik eller tillåtet ursprung får inte överstiga 256 tecken.

  • Tillåtna rubriker och exponerade rubriker kan vara antingen:

    • Literalrubriker där det exakta rubriknamnet anges, till exempel x-ms-meta-processed. Du kan ange högst 64 literalrubriker för begäran.

    • Prefixrubriker där ett prefix för huvudet anges, till exempel x-ms-meta-data\. Om du anger ett prefix på det här sättet tillåts eller exponeras alla rubriker som börjar med prefixet. Du kan ange högst två prefixrubriker för begäran.

  • De metoder (eller HTTP-verb) som anges i elementet AllowedMethods måste överensstämma med de metoder som Azure Storage-tjänstens API:er stöder. Metoder som stöds är DELETE, GET, HEAD, MERGE, POST, OPTIONSoch PUT.

Det är valfritt att ange CORS-regler för begäran. Om du anropar Set Table Service Properties utan att ange elementet Cors i begärandetexten behålls alla befintliga CORS-regler.

Om du vill inaktivera CORS anropar Set Table Service Properties du med tomma CORS-regelinställningar (till exempel </Cors>) och inga inre CORS-regler. Det här anropet tar bort alla befintliga regler och inaktiverar CORS för Table Storage.

Alla CORS-regelelement krävs om du anger elementet CorsRule . Om något element saknas misslyckas begäran med felkoden 400 (felaktig begäran).

Från och med version 2013-08-15 är element för XML-inställningar valfria. Du kan uppdatera ett visst element genom att skicka XML som bara innehåller det uppdaterade elementet och som inte påverkar andra inställningar.

Detaljerad information om CORS-regler och utvärderingslogik finns i CORS-stöd för Azure Storage-tjänsterna.

Exempel på begäran och svar

Följande exempel-URI gör en begäran om att ändra Table Storage-egenskaperna för det fiktiva lagringskontot med namnet myaccount:

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

Begäran skickas med följande rubriker:

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  

Begäran skickas med följande XML-brödtext:

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

När begäran har skickats returneras följande svar:

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  
  

Se även