Táblaszolgáltatás tulajdonságainak beállítása

A Set Table Service Properties művelet beállítja a tárfiók Azure Table Storage-végpontjának tulajdonságait, beleértve a Storage Analytics és az eltérő eredetű erőforrások megosztására (CORS) vonatkozó szabályokat. További információ a CORS-szabályokról: CORS-támogatás az Azure Storage-szolgáltatásokhoz.

Kérés

A kérést az Set Table Service Properties alábbiak szerint adhatja meg. A HTTPS használatát javasoljuk. Cserélje le a fióknevet a tárfiók nevére.

Metódus Kérés URI-ja HTTP-verzió
PUT https://account-name.table.core.windows.net/?restype=service&comp=properties HTTP/1.1

Vegye figyelembe, hogy az URI-nak mindig tartalmaznia kell a perjelet (/), hogy elkülönítse az állomásnevet az URI elérési útjától és lekérdezési részeitől. Ebben a műveletben az URI elérési útja üres.

URI-paraméterek

URI-paraméter Description
restype=service&comp=properties Kötelező. Az Azure Storage szolgáltatás tulajdonságainak beállításához mindkét lekérdezési sztring kombinációjára szükség van.
timeout Választható. A timeout paraméter másodpercben van kifejezve.

Kérésfejlécek

Az alábbi táblázat a szükséges és nem kötelező kérelemfejléceket ismerteti:

Kérelem fejléce Leírás
Authorization Kötelező. Megadja az engedélyezési sémát, a tárfiók nevét és az aláírást. További információ: Kérelmek engedélyezése az Azure Storage-ba.
Date vagy x-ms-date Kötelező. Megadja a kérés egyezményes világidő (UTC) formátumban kifejezett időpontját. További információ: Kérelmek engedélyezése az Azure Storage-ba.
x-ms-version Minden engedélyezett kéréshez szükséges. A kérelemhez használandó művelet verzióját adja meg. További információ: Az Azure Storage-szolgáltatások verziószámozása.
x-ms-client-request-id Választható. Ügyfél által generált, átlátszatlan értéket biztosít egy 1 kibibyte (KiB) karakterkorláttal, amelyet a naplózás konfigurálásakor rögzít a naplókban. Javasoljuk, hogy ezt a fejlécet használva korrelálja az ügyféloldali tevékenységeket a kiszolgáló által kapott kérésekkel.

A kérés törzse

A 2012-02-12-es és korábbi verziók esetében a kérelemtörzs formátuma a következő:

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

A 2013-08-15-ös és újabb verziók esetében a kérelem törzsének formátuma a következő:

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

A 2013-08-15-ös verziótól kezdve a kérés törzsében megadott egy vagy több gyökérelemet is meghívhat Set Table Service Properties . A gyökérelemek a következők:

  • Logging

  • HourMetrics

  • MinuteMetrics

  • Cors

Már nem szükséges megadni a kérés összes gyökérelemét. Ha kihagy egy gyökérelemet, a szolgáltatás meglévő beállításai megmaradnak az adott funkcióhoz. Ha azonban megad egy gyökérelemet, az elem minden gyermekelemét meg kell adnia.

Az alábbi táblázat a kérelem törzsének elemeit ismerteti:

Elem neve Leírás
Logging Nem kötelező a 2013-08-15-ös és újabb verziókhoz. A korábbi verziókhoz szükséges. Csoportosítja a Storage Analytics Logging beállításait.
Metrics A 2012-02-12-es és korábbi verziókhoz szükséges. Nem alkalmazható a 2013-08-15-ös és újabb verziókra. Csoportosítja a Storage Analytics Metrics beállításait. A Metrics beállítások az API-k szerint csoportosított kérelemstatisztikák összegzését tartalmazzák a táblák óránkénti összesítésében.
HourMetrics Nem kötelező a 2013-08-15-ös és újabb verziókhoz. A korábbi verziókra nem alkalmazható. Csoportosítja a Storage Analytics HourMetrics beállításait. A HourMetrics beállítások az API-k szerint csoportosított kérelemstatisztikák összegzését tartalmazzák a táblák óránkénti összesítésében.
MinuteMetrics Nem kötelező a 2013-08-15-ös és újabb verziókhoz. A korábbi verziókra nem alkalmazható. Csoportosítja a Storage Analytics MinuteMetrics beállításait. A MinuteMetrics beállítások a táblák minden percére vonatkozóan kérésstatisztikát biztosítanak. A 2013-08-15-nél MinuteMetrics korábbi verziók nem szerepelnek a válasz törzsében.
Version Kötelező. A konfigurálni kívánt Storage Analytics verzióját jelzi.
Delete Kötelező. Csak a naplózási konfigurációra vonatkozik. Azt jelzi, hogy minden törlési kérést naplózni kell-e.
Read Kötelező. Csak a naplózási konfigurációra vonatkozik. Azt jelzi, hogy az összes olvasási kérést naplózni kell-e.
Write Kötelező. Csak a naplózási konfigurációra vonatkozik. Azt jelzi, hogy minden írási kérést naplózni kell-e.
Enabled Kötelező. Azt jelzi, hogy engedélyezve vannak-e a metrikák az Azure Storage szolgáltatásban.

Ha az olvasási hozzáférés georedundáns replikációja engedélyezve van, az elsődleges és a másodlagos metrikákat is összegyűjti a rendszer. Ha az írásvédett georedundáns replikáció nincs engedélyezve, csak az elsődleges metrikák lesznek összegyűjtve.
IncludeAPIs Csak akkor szükséges, ha a metrikák engedélyezve vannak. Csak a metrikakonfigurációra vonatkozik. Azt jelzi, hogy a metrikák létrehoznak-e összefoglaló statisztikákat az úgynevezett API-műveletekhez.
RetentionPolicy/Enabled Kötelező. Azt jelzi, hogy engedélyezve van-e adatmegőrzési szabályzat az Azure Storage szolgáltatáshoz.
RetentionPolicy/Days Csak akkor szükséges, ha egy adatmegőrzési szabályzat engedélyezve van. Azt jelzi, hogy hány napig kell megőrizni a metrikákat vagy a naplózási adatokat. Az ennél az értéknél régebbi adatok törlődnek. A megadható minimális érték: 1. A legnagyobb érték ( 365 egy év).
Cors Választható. A 2013-08-15-ös és újabb verziók támogatottak. Az összes CORS-szabály csoportosítása.

Ha kihagyja ezt az elemcsoportot, az nem írja felül a meglévő CORS-beállításokat.
CorsRule Választható. Cors-szabályt ad meg a Table Storage-hoz. Egy kérés legfeljebb öt CorsRule elemet tartalmazhat. Ha a kérelemtörzs nem CorsRule tartalmaz elemeket, az összes CORS-szabály törlődik, és a CORS le lesz tiltva a Table Storage esetében.
AllowedOrigins Kötelező, ha CorsRule az elem jelen van. A CORS-on keresztül engedélyezett vagy az összes tartomány engedélyezéséhez használható forrástartományok vesszővel tagolt listáját tartalmazza * . A forrástartományok helyettesítő karaktert is tartalmazhatnak az altartományban, amely lehetővé teszi a CORS-on keresztüli kéréseket a tartomány összes altartományához. Legfeljebb 64 forrástartományra korlátozva. Minden engedélyezett forrás legfeljebb 256 karakterből állhat.
ExposedHeaders Kötelező, ha az CorsRule elem jelen van. A CORS-ügyfelek számára közzéteendő válaszfejlécek vesszővel tagolt listáját tartalmazza. Legfeljebb 64 definiált fejléc és két előtagú fejléc. Minden fejléc legfeljebb 256 karakter hosszúságú lehet.
MaxAgeInSeconds Kötelező, ha az CorsRule elem jelen van. Azt jelzi, hogy az ügyfélnek vagy a böngészőnek hány másodpercig kell gyorsítótáraznia az elővizsgálati választ.
AllowedHeaders Kötelező, ha az CorsRule elem létezik. Vesszővel tagolt fejléclistát biztosít, amely a forrásközi kérelem része lehet. Legfeljebb 64 definiált fejléc és 2 előtagú fejléc lehet. Minden fejléc legfeljebb 256 karakter hosszúságú lehet.
AllowedMethods Kötelező, ha az CorsRule elem létezik. A forrás által végrehajtható HTTP-metódusok vesszővel tagolt listáját tartalmazza. Az Azure Storage esetében a megengedett módszerek a következők DELETE: , GET, HEAD, MERGE, POST, , OPTIONSés PUT.

Reagálás

A válasz tartalmaz egy HTTP-állapotkódot, egy válaszfejléceket és egy választörzset.

Állapotkód

A sikeres művelet a 202-s állapotkódot adja vissza (Elfogadva).

Válaszfejlécek

A műveletre adott válasz a következő fejléceket tartalmazza. A válasz további szabványos HTTP-fejléceket is tartalmazhat. Minden szabványos fejléc megfelel a HTTP/1.1 protokoll specifikációjának.

Válaszfejléc Description
x-ms-request-id Olyan értéket ad meg, amely egyedileg azonosítja a szolgáltatásra irányuló kérést.
x-ms-version A válaszhoz használt művelet verzióját adja meg. További információ: Az Azure Storage-szolgáltatások verziószámozása.
x-ms-client-request-id A kérések és a kapcsolódó válaszok hibaelhárítására használható. A fejléc értéke megegyezik a x-ms-client-request-id fejléc értékével, ha az szerepel a kérelemben, és az érték legfeljebb 1024 látható ASCII-karakter. Ha a x-ms-client-request-id fejléc nem szerepel a kérelemben, akkor ez a fejléc nem jelenik meg a válaszban.

Választörzs

Nincsenek.

Engedélyezés

Ezt a műveletet csak a fióktulajdonos hívhatja meg.

Megjegyzések

Az alábbi korlátozások és korlátozások vonatkoznak az Azure Storage CORS-szabályaira:

  • Legfeljebb öt szabály tárolható.

  • A kérelem cors-szabálybeállításainak maximális mérete – az XML-címkék kivételével – nem haladhatja meg a 2 kib-ot.

  • Az engedélyezett fejléc, a közzétett fejléc vagy az engedélyezett forrás hossza nem haladhatja meg a 256 karaktert.

  • Az engedélyezett fejlécek és a közzétett fejlécek a következők lehetnek:

    • Literális fejlécek, ahol a fejléc pontos neve szerepel, például x-ms-meta-processed. A kérelemben legfeljebb 64 literális fejléc adható meg.

    • Előtaggal rendelkező fejlécek, ahol a fejléc előtagja meg van adva, például x-ms-meta-data\: . Az előtag ilyen módon történő megadása lehetővé teszi vagy elérhetővé teszi az ezzel az előtaggal kezdődő fejléceket. A kérelemben legfeljebb két előtagú fejléc adható meg.

  • Az elemben AllowedMethods megadott metódusoknak (vagy HTTP-parancsoknak) meg kell felelniük az Azure Storage szolgáltatás API-jai által támogatott metódusoknak. A támogatott módszerek a következők DELETE: , GET, HEAD, MERGE, POST, OPTIONSés PUT.

A CORS-szabályok megadása a kérelemben nem kötelező. Ha a kérés törzsének Cors megadása nélkül hívSet Table Service Properties, a meglévő CORS-szabályok megmaradnak.

A CORS letiltásához hívjon Set Table Service Properties üres CORS-szabályokkal (például </Cors>) és belső CORS-szabályok nélkül. Ez a hívás törli a meglévő szabályokat, és letiltja a CORS-t a Table Storage-hoz.

Az elem megadásakor CorsRule minden CORS-szabályelemre szükség van. Ha valamelyik elem hiányzik, a kérés a 400-ás hibakóddal (hibás kérés) fog meghiúsulni.

A 2013-08-15-ös verziótól kezdődően az XML-beállítások elemei nem kötelezőek. Egy adott elemet frissíthet úgy, hogy olyan XML-fájlt küld, amely csak a frissített elemet tartalmazza, és nem befolyásolja a többi beállítást.

A CORS-szabályokkal és a kiértékelési logikával kapcsolatos részletes információkért lásd: CORS-támogatás az Azure Storage-szolgáltatásokhoz.

Mintakérés és válasz

Az alábbi minta URI kérést küld a myaccount nevű fiktív tárfiók Table Storage-tulajdonságainak módosítására:

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

A kérést a rendszer a következő fejlécekkel küldi el:

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  

A kérést a rendszer a következő XML-törzstel küldi el:

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

A kérés elküldése után a rendszer a következő választ adja vissza:

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  
  

Lásd még