Eigenschappen van Table Service instellen

Met de bewerking stelt u eigenschappen in voor het Table-service-eindpunt van een opslagaccount, inclusief eigenschappen voor Set Table Service Properties Storage Analytics- en CORS-regels (Cross-Origin Resource Sharing). Zie CORS-ondersteuning voor de Storage Services voor meer informatie over CORS-regels.

Aanvraag

De Set Table Service Properties aanvraag kan als volgt worden opgegeven. HTTPS wordt aanbevolen. Vervang <account-name> door de naam van uw opslagaccount.

Methode Aanvraag-URI HTTP-versie
PUT https://<account-name>.table.core.windows.net/?restype=service&comp=properties HTTP/1.1

Houd er rekening mee dat de URI altijd de slash (/) moet bevatten om de hostnaam te scheiden van het pad en de querygedeelten van de URI. In het geval van deze bewerking is het padgedeelte van de URI leeg.

URI-parameters

URI-parameter Beschrijving
restype=service&comp=properties Vereist. De combinatie van beide queryreeksen is vereist om de eigenschappen van de opslagservice in te stellen.
timeout Optioneel. De timeout parameter wordt uitgedrukt in seconden.

Aanvraagheaders

In de volgende tabel worden de vereiste en optionele aanvraagheaders beschreven.

Aanvraagkoptekst Beschrijving
Authorization Vereist. Hiermee geeft u het autorisatieschema, de naam van het opslagaccount en de handtekening op. Zie Aanvragen voor toegang tot Azure Storage voor meer Azure Storage.
Date of x-ms-date Vereist. Geef de Coordinated Universal Time (UTC) op voor de aanvraag. Zie Aanvragen voor toegang tot Azure Storage voor meer Azure Storage.
x-ms-version Vereist voor alle geautoriseerde aanvragen. Hiermee geeft u de versie van de bewerking moet worden gebruikt voor deze aanvraag. Zie Versioning for the Azure Storage Services (Versie Azure Storage services) voor meer informatie.
x-ms-client-request-id Optioneel. Biedt een door de client gegenereerde, ondoorzichtige waarde met een limiet van 1 KiB die wordt vastgelegd in de analyselogboeken wanneer logboekregistratie van opslaganalyse is ingeschakeld. Het gebruik van deze header wordt ten zeerste aanbevolen voor het correleren van activiteiten aan clientzijde met aanvragen die door de server worden ontvangen. Zie About Storage Analytics Logging and Azure Logging: Using Logs to Track Storage Requests (Logboeken gebruiken om logboeken bij Storage volgen) voor meer informatie.

Aanvraagbody

Voor versie 2012-02-12 en eerder is de indeling van de aanvraag body als volgt:

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

Voor versie 2013-08-15 en hoger is de indeling van de aanvraag body als volgt:

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

Vanaf versie 2013-08-15 kunt u aanroepen met een of meer hoofdelementen die zijn opgegeven Set Table Service Properties in de aanvraag body. De hoofdelementen zijn onder andere:

  • Logboekregistratie

  • HourMetrics

  • MinuteMetrics

  • Cors

Het is niet langer nodig om elk hoofdelement van de aanvraag op te geven. Als u een hoofdelement weglaten, blijven de bestaande instellingen voor de service voor die functionaliteit behouden. Als u echter een bepaald hoofdelement opgeeft, moet u elk onderliggend element voor dat element opgeven.

In de volgende tabel worden de elementen van de aanvraag body beschreven:

Naam van element Beschrijving
Logboekregistratie Optioneel vanaf versie 2013-08-15. Vereist voor eerdere versies. Groeperen de instellingen voor Logboekregistratie van Azure Analytics.
Metrische gegevens Vereist voor versie 2012-02-12 en eerder. Niet van toepassing op versie 2013-08-15 of hoger. Groeperen de instellingen voor metrische gegevens van Azure Analytics. De instellingen voor metrische gegevens bieden een samenvatting van de aanvraagstatistieken gegroepeerd op API in statistische functies per uur voor tabellen.
HourMetrics Optioneel voor versie 2013-08-15 of hoger; niet van toepassing op eerdere versies. Groepeert de Azure Analytics HourMetrics-instellingen. De hourMetrics-instellingen bieden een samenvatting van de aanvraagstatistieken gegroepeerd op API in statistische functies per uur voor tabellen.
MinuteMetrics Optioneel voor versie 2013-08-15 of hoger; niet van toepassing op eerdere versies. Groepeert de Azure Analytics MinuteMetrics-instellingen. De minuteMetrics-instellingen bieden aanvraagstatistieken voor elke minuut voor tabellen. Voor eerdere versies dan 2013-08-15 is MinuteMetrics niet opgenomen in de antwoord-body.
Versie Vereist. De versie van Storage Analytics die moet worden geconfigureerd.
Verwijderen Vereist. Is alleen van toepassing op de configuratie van logboekregistratie. Geeft aan of alle verwijderaanvragen moeten worden geregistreerd.
Lezen Vereist. Is alleen van toepassing op de configuratie van logboekregistratie. Geeft aan of alle leesaanvragen moeten worden geregistreerd.
Schrijven Vereist. Is alleen van toepassing op de configuratie van logboekregistratie. Geeft aan of alle schrijfaanvragen moeten worden geregistreerd.
Ingeschakeld Vereist. Geeft aan of metrische gegevens zijn ingeschakeld voor de opslagservice.

Als geografisch redundante replicatie met leestoegang is ingeschakeld, worden zowel primaire als secundaire metrische gegevens verzameld. Als geografisch redundante replicatie met leestoegang niet is ingeschakeld, worden alleen primaire metrische gegevens verzameld.
IncludeAPIs Alleen vereist als metrische gegevens zijn ingeschakeld. Is alleen van toepassing op de configuratie van metrische gegevens. Geeft aan of metrische gegevens samenvattende statistieken moeten genereren voor aangeroepen API-bewerkingen.
RetentionPolicy/Enabled Vereist. Geeft aan of een bewaarbeleid is ingeschakeld voor de opslagservice.
RetentionPolicy/Days Alleen vereist als een bewaarbeleid is ingeschakeld. Geeft het aantal dagen aan dat metrische gegevens of logboekgegevens moeten worden bewaard. Alle gegevens die ouder zijn dan deze waarde, worden verwijderd. De minimale waarde die u kunt opgeven, is 1 ; de grootste waarde is 365 (één jaar).
Cors Optioneel. Het element Cors wordt ondersteund voor versie 2013-08-15 of hoger. Groepeert alle CORS-regels.

Als u deze elementgroep weglaten, worden bestaande CORS-instellingen niet overschreven.
CorsRule Optioneel. Hiermee geeft u een CORS-regel op voor de tabelservice. U kunt maximaal vijf CorsRule-elementen opnemen in de aanvraag. Als er geen CorsRule-elementen zijn opgenomen in de aanvraag body, worden alle CORS-regels verwijderd en wordt CORS uitgeschakeld voor de Table-service.
AllowedOrigins Vereist als het element CorsRule aanwezig is. Een door komma's gescheiden lijst met oorspronkelijke domeinen die via CORS worden toegestaan, of '*' om alle domeinen toe te staan. Beperkt tot 64 oorspronkelijke domeinen. Elke toegestane oorsprong mag maximaal 256 tekens bevatten.
ExposedHeaders Vereist als het element CorsRule aanwezig is. Een door komma's gescheiden lijst met antwoordheaders die aan CORS-clients worden weergegeven. Beperkt tot 64 gedefinieerde headers en twee voorvoegselheaders. Elke header mag maximaal 256 tekens bevatten.
MaxAgeInSeconds Vereist als het element CorsRule aanwezig is. Het aantal seconden dat de client/browser een preflight-antwoord moet cachen.
AllowedHeaders Vereist als het element CorsRule bestaat. Een door komma's gescheiden lijst met headers die deel mogen uitmaken van de cross-origin-aanvraag. Beperkt tot 64 gedefinieerde headers en 2 voorvoegselheaders. Elke header mag maximaal 256 tekens bevatten.
AllowedMethods Vereist als het element CorsRule bestaat. Een door komma's gescheiden lijst met HTTP-methoden die door de oorsprong mogen worden uitgevoerd. Voor Azure Storage zijn toegestane methoden DELETE, GET, HEAD, MERGE, POST, OPTIONS of PUT.

Antwoord

Het antwoord bevat een HTTP-statuscode, een set antwoordheaders en een antwoordtekst.

Statuscode

Een geslaagde bewerking retourneert statuscode 202 (Geaccepteerd).

Antwoordheaders

Het antwoord voor deze bewerking bevat de volgende headers. Het antwoord kan ook aanvullende standaard HTTP-headers bevatten. Alle standaardheaders voldoen aan de HTTP/1.1-protocolspecificatie.

Reactieheader Beschrijving
x-ms-request-id Een waarde die een unieke aanvraag aan de service identificeert.
x-ms-version Hiermee geeft u de versie van de bewerking die wordt gebruikt voor het antwoord. Zie Versioning for the Azure Storage Services (Versie Azure Storage Services) voor meer informatie.
x-ms-client-request-id Deze header kan worden gebruikt voor het oplossen van problemen met aanvragen en bijbehorende antwoorden. De waarde van deze header is gelijk aan de waarde van de header als deze aanwezig is in de aanvraag en de waarde uit x-ms-client-request-id 1024 zichtbare ASCII-tekens bestaat. Als de x-ms-client-request-id header niet aanwezig is in de aanvraag, is deze header niet aanwezig in het antwoord.

Antwoord body

Geen.

Autorisatie

Alleen de accounteigenaar kan deze bewerking aanroepen.

Opmerkingen

De volgende beperkingen zijn van toepassing op CORS-regels in Azure Storage:

  • Er kunnen maximaal vijf regels worden opgeslagen.

  • De maximale grootte van alle CORS-regels voor de aanvraag, met uitzondering van XML-tags, mag niet groter zijn dan 2 KiB.

  • De lengte van een toegestane header, zichtbare header of toegestane oorsprong mag niet langer zijn dan 256 tekens.

  • Toegestane headers en zichtbare headers kunnen een van de volgende zijn:

    • Letterlijke headers, waarbij de exacte headernaam wordt opgegeven, zoals x-ms-meta-processed. Er kunnen maximaal 64 letterlijke headers worden opgegeven voor de aanvraag.

    • Voorvoegselheaders, waarbij een voorvoegsel van de header wordt opgegeven, zoals x-ms-meta-data. * Als u op deze manier een voorvoegsel opgeeft, worden headers die met het opgegeven voorvoegsel beginnen, al dan niet beschikbaar gemaakt. Er kunnen maximaal twee voorvoegselheaders worden opgegeven voor de aanvraag.

  • De methoden (of HTTP-woorden) die zijn opgegeven in het element AllowedMethods moeten voldoen aan de methoden die worden ondersteund door API's van de Azure-opslagservice. Ondersteunde methoden zijn DELETE, GET, HEAD, MERGE, POST, OPTIONS en PUT.

Het opgeven van CORS-regels voor de aanvraag is optioneel. Als u Set Table Service Properties aanroept zonder het Cors-element op te geven in de aanvraag body, blijven bestaande CORS-regels behouden.

Als u CORS wilt uitschakelen, roept u aan met een lege CORS-regels (dat wil zeggen) en geen Set Table Service Properties </Cors> interne CORS-regels. Met deze aanroep worden alle bestaande regels verwijderd, met cors voor de tabelservice.

Alle CORS-regelelementen zijn vereist als het element CorsRule is opgegeven. De aanvraag mislukt met foutcode 400 ( Bad Request ) als er een element ontbreekt.

Vanaf versie 2013-08-15 zijn elementen van XML-instellingen optioneel, zodat het bijwerken van een specifiek element kan worden uitgevoerd door een XML te verzenden die alleen het bijgewerkte element bevat en andere instellingen niet worden beïnvloed.

Zie CORS-ondersteuning voor de Storage Services voor gedetailleerde informatie over CORS-regels en evaluatielogica.

Voorbeeld van aanvraag en antwoord

Met de volgende voorbeeld-URI wordt een aanvraag ingediend om de eigenschappen van de Tabelservice te wijzigen voor het fictieve opslagaccount met de naam myaccount:

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

De aanvraag wordt verzonden met de volgende headers:

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  

De aanvraag wordt verzonden met de volgende XML-body:

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

Nadat de aanvraag is verzonden, wordt het volgende antwoord geretourneerd:

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  
  

Zie ook