Tároló ACL-ének beállítása

A Set Container ACL művelet beállítja a megadott tároló engedélyeit. Az engedélyek azt jelzik, hogy a tárolóban lévő blobok nyilvánosan elérhetők-e.

A 2009-09-19-es verziótól a tárolóengedélyek a következő lehetőségeket biztosítják a tárolóhozzáférés kezeléséhez:

  • Teljes nyilvános olvasási hozzáférés: A tároló- és blobadatok névtelen kéréssel olvashatók. Az ügyfelek névtelen kéréssel számba tudják venni a tárolón belüli blobokat, de a tárfiókon belül nem tudják számba venni a tárolókat.

  • Nyilvános olvasási hozzáférés csak blobokhoz: A tárolón belüli blobadatok névtelen kéréssel olvashatók, de a tároló adatai nem érhetők el. Az ügyfelek névtelen kéréssel nem tudnak blobokat számba kérni a tárolóban.

  • Nincs nyilvános olvasási hozzáférés: A tároló- és blobadatok csak a fióktulajdonos számára olvashatók.

Set Container ACL egy tárolt hozzáférési szabályzatot is beállít a közös hozzáférésű jogosultságkódokkal való használatra. További információ: Tárolt hozzáférési szabályzat definiálása.

A tárolóhoz való minden nyilvános hozzáférés névtelen, csakúgy, mint a közös hozzáférésű jogosultságkódon keresztüli hozzáférés.

Kérés

A Set Container ACL kérelem az alábbiak szerint hozható létre. Javasoljuk, hogy HTTPS-t használjon. Cserélje le a myaccount kifejezést a tárfiók nevére:

Metódus Kérés URI-ja HTTP-verzió
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=acl HTTP/1.1

Emulált tárolási szolgáltatás kérése

Amikor kérést küld az emulált tárolási szolgáltatásra, adja meg az emulátor gazdagépnevét és a Blob-szolgáltatás portját , 127.0.0.1:10000majd az emulált tárfiók nevét:

Metódus Kérés URI-ja HTTP-verzió
PUT http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=acl HTTP/1.1

További információ: Az Azurite emulátor használata helyi Azure Storage-fejlesztéshez.

URI-paraméterek

A kérelem URI-jában a következő további paramétereket adhatja meg:

Paraméter Leírás
timeout Választható. A timeout paraméter másodpercben van kifejezve. További információ: Időtúllépések beállítása Blob szolgáltatásműveletekhez.

Kérésfejlécek

A szükséges és nem kötelező kérésfejléceket az alábbi táblázat ismerteti:

Kérelem fejléce Leírás
Authorization Kötelező. Megadja az engedélyezési sémát, a fióknevet é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 Választható. 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-blob-public-access Választható. Meghatározza, hogy a tárolóban lévő adatok nyilvánosan elérhetők-e, és hogy a hozzáférési szint is elérhető-e. A lehetséges értékek a következők:

- container: A tároló- és blobadatok teljes nyilvános olvasási hozzáférését adja meg. Az ügyfelek névtelen kéréssel számba tudják venni a tárolón belüli blobokat, de a tárfiókon belül nem tudják számba venni a tárolókat.
- blob: Nyilvános olvasási hozzáférést ad meg a blobokhoz. A tárolón belüli blobadatok névtelen kéréssel olvashatók, de a tároló adatai nem érhetők el. Az ügyfelek névtelen kéréssel nem tudnak blobokat számba kérni a tárolóban.

Ha ez a fejléc nem szerepel a kérelemben, a tárolóadatok privátak a fióktulajdonos számára.

Vegye figyelembe, hogy az Azure Premium Storage-fiókban lévő tárolók nyilvános hozzáférésének beállítása nem engedélyezett.
x-ms-lease-id: <ID> Nem kötelező, 2012-02-12-es és újabb verzió. Ha meg van adva, csak akkor sikeres, Set Container ACL ha a tároló bérlete aktív, és megfelel ennek az azonosítónak. Ha nincs aktív bérlet, vagy az azonosító nem egyezik, a rendszer a 412-et (az előfeltétel sikertelen) adja vissza.
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. További információ: Azure Blob Storage figyelése.

Ez a művelet feltételes fejlécek használatát is támogatja a művelet végrehajtásához, ha egy adott feltétel teljesül. További információ: Feltételes fejlécek megadása blobszolgáltatás-műveletekhez.

A kérés törzse

Tárolt hozzáférési szabályzat megadásához adjon meg egy egyedi azonosítót és hozzáférési szabályzatot a Set Container ACL művelet kérelemtörzsében.

Az SignedIdentifier elem tartalmazza az elemben Id megadott egyedi azonosítót és a hozzáférési szabályzat részleteit az AccessPolicy elemben megadott módon. Az egyedi azonosító maximális hossza 64 karakter.

A Start és Expiry a mezőt UTC-idő szerint kell kifejezni, és meg kell felelnie egy érvényes ISO 8061-formátumnak. A támogatott ISO 8061-formátumok a következők:

  • YYYY-MM-DD
  • YYYY-MM-DDThh:mmTZD
  • YYYY-MM-DDThh:mm:ssTZD
  • YYYY-MM-DDThh:mm:ss.fffffffTZD

Ezeknek a formátumoknak YYYY a dátumrésze egy négyjegyű évábrázolás, MM egy kétjegyű havi ábrázolás, és DD egy kétjegyű napi ábrázolás. Az idő résznél hh az óra ábrázolása 24 órás jelölésben, mm a kétjegyű perc ábrázolása, ss a kétjegyű második ábrázolás, és fffffff a hétjegyű ezredmásodperc. Az időkijelölő T elválasztja a sztring dátum- és időrészeit, az időzóna-tervező TZD pedig egy időzónát határoz meg.

<?xml version="1.0" encoding="utf-8"?>  
<SignedIdentifiers>  
  <SignedIdentifier>   
    <Id>unique-64-character-value</Id>  
    <AccessPolicy>  
      <Start>start-time</Start>  
      <Expiry>expiry-time</Expiry>  
      <Permission>abbreviated-permission-list</Permission>  
    </AccessPolicy>  
  </SignedIdentifier>  
</SignedIdentifiers>  
  

Mintakérés

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=acl HTTP/1.1  
  
Request Headers:  
x-ms-version: 2011-08-18  
x-ms-date: Sun, 25 Sep 2011 00:42:49 GMT  
x-ms-blob-public-access: container  
Authorization: SharedKey myaccount:V47F2tYLS29MmHPhiR8FyiCny9zO5De3kVSF0RYQHmo=  
  
Request Body:  
<?xml version="1.0" encoding="utf-8"?>  
<SignedIdentifiers>  
  <SignedIdentifier>   
    <Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>  
    <AccessPolicy>  
      <Start>2009-09-28T08:49:37.0000000Z</Start>  
      <Expiry>2009-09-29T08:49:37.0000000Z</Expiry>  
      <Permission>rwd</Permission>  
    </AccessPolicy>  
  </SignedIdentifier>  
</SignedIdentifiers>  
  

Reagálás

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

Állapotkód

A sikeres művelet a 200 -os állapotkódot adja vissza (OK).

További információ az állapotkódokról: Állapot- és hibakódok.

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
ETag A tároló ETagje. Ha a kérelem verziója 2011-08-18 vagy újabb, az ETag érték idézőjelek közé kerül.
Last-Modified A tároló utolsó módosításának dátumát és időpontját adja vissza. A dátumformátum az RFC 1123-at követi. További információ: Dátum-/időértékek ábrázolása fejlécekben.

Minden olyan művelet, amely módosítja a tárolót vagy annak tulajdonságait vagy metaadatait, frissíti az utolsó módosítás időpontját, beleértve a tároló engedélyeinek beállítását is. A blobokon végzett műveletek nincsenek hatással a tároló utolsó módosításának időpontjára.
x-ms-request-id Egyedileg azonosítja a kérést, amely a kérés hibaelhárításához használható. További információ: API-műveletek hibaelhárítása
x-ms-version A kérés végrehajtásához használt Blob szolgáltatásverziót jelzi. Ez a fejléc lesz visszaadva a 2009-09-19-es és újabb verzióval kapcsolatos kérésekhez.
Date A szolgáltatás által létrehozott UTC dátum/idő érték, amely a válasz indításának időpontját jelzi.
x-ms-client-request-id A kérések és a megfelelő válaszok hibaelhárítására használható. A fejléc értéke megegyezik a x-ms-client-request-id kérelemben szereplő fejléc értékével, és az érték legfeljebb 1024 látható ASCII-karaktert tartalmaz. Ha a x-ms-client-request-id fejléc nem szerepel a kérelemben, akkor az nem jelenik meg a válaszban.

Mintaválasz

Response Status:  
HTTP/1.1 200 OK  
  
Response Headers:  
Transfer-Encoding: chunked  
Date: Sun, 25 Sep 2011 22:42:55 GMT  
ETag: "0x8CB171613397EAB"  
Last-Modified: Sun, 25 Sep 2011 22:42:55 GMT  
x-ms-version: 2011-08-18  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  

Engedélyezés

A Set Container ACL művelet csak a megosztott kulcs engedélyezését támogatja.

Megjegyzések

Csak a fióktulajdonos férhet hozzá egy adott tároló erőforrásaihoz, kivéve, ha a tulajdonos megadta, hogy a tároló erőforrásai nyilvános hozzáféréshez érhetők el a tároló engedélyeinek beállításával, vagy megosztott hozzáférési aláírást adott ki egy erőforráshoz a tárolón belül.

Amikor engedélyeket állít be egy tárolóhoz, a rendszer lecseréli a meglévő engedélyeket. A tároló engedélyeinek frissítéséhez hívja meg a Tároló ACL lekérését a tárolóhoz társított összes hozzáférési szabályzat lekéréséhez. Módosítsa a módosítani kívánt hozzáférési szabályzatot, majd hívja meg Set Container ACL a teljes adatkészletet a frissítés végrehajtásához.

Névtelen nyilvános hozzáférés engedélyezése tárolóadatokon

A tárolóadatok névtelen nyilvános olvasási hozzáférésének engedélyezéséhez hívja Set Container ACL meg a vagy containerblobfejlécetx-ms-blob-public-access. A névtelen hozzáférés letiltásához hívja meg a fejléc Set Container ACL megadása nélkül.x-ms-blob-public-access

Ha a értékre blobvan állítvax-ms-blob-public-access, az ügyfelek névtelenül hívhatják meg a következő műveleteket:

Ha a értékre containervan állítvax-ms-blob-public-access, az ügyfelek névtelenül hívhatják meg a következő műveleteket:

Tárolószintű hozzáférési szabályzatok létrehozása

A tárolt hozzáférési szabályzatok megadhatják a kezdési időpontot, a lejárati időt és az engedélyeket azokhoz a közös hozzáférésű jogosultságkódokhoz, amelyekhez társítva van. Attól függően, hogy hogyan szeretné szabályozni a tárolóhoz vagy bloberőforráshoz való hozzáférést, megadhatja ezeket a paramétereket a tárolt hozzáférési szabályzatban, és kihagyhatja őket a közös hozzáférésű jogosultságkód URL-címéből. Ezzel bármikor módosíthatja a társított aláírás viselkedését, vagy visszavonhatja azt. Vagy megadhat egy vagy több hozzáférésiszabályzat-paramétert a tárolt hozzáférési szabályzaton belül, a többit pedig az URL-címen. Végül megadhatja az URL-cím összes paraméterét. Ebben az esetben a tárolt hozzáférési szabályzattal visszavonhatja az aláírást, de nem módosíthatja annak viselkedését. További információ: Tárolt hozzáférési szabályzat definiálása.

A közös hozzáférésű jogosultságkódnak és a tárolt hozzáférési szabályzatnak együtt tartalmaznia kell az aláírás engedélyezéséhez szükséges összes mezőt. Ha valamelyik kötelező mező hiányzik, a kérés sikertelen lesz. Hasonlóképpen, ha a közös hozzáférésű jogosultságkód URL-címében és a tárolt hozzáférési szabályzatban is meg van adva egy mező, a kérés a 400-ás állapotkóddal (hibás kérelem) meghiúsul.

Egy tárolóhoz legfeljebb öt külön hozzáférési szabályzat állítható be. Ha a kérés törzsében ötnél több hozzáférési szabályzat van átadva, a szolgáltatás a 400-ás állapotkódot adja vissza (Hibás kérés).

A tárolókon vagy blobokon közös hozzáférésű jogosultságkód állítható ki, függetlenül attól, hogy a tárolóadatok elérhetők-e névtelen olvasási hozzáféréshez. A közös hozzáférésű jogosultságkód nagyobb mértékben szabályozza, hogy egy erőforrás hogyan, mikor és ki számára legyen elérhető.

Megjegyzés

Ha tárolón hoz létre tárolt hozzáférési szabályzatot, a szabályzat érvénybe lépése akár 30 másodpercet is igénybe vehet. Ebben az időszakban, amíg a szabályzat aktívvá nem válik, a tárolt hozzáférési szabályzathoz társított közös hozzáférésű jogosultságkód a 403-as (Tiltott) állapotkóddal meghiúsul.

Számlázás

A díjszabási kérések olyan ügyfelektől származhatnak, amelyek Blob Storage API-kat használnak, közvetlenül a Blob Storage REST API-ból vagy egy Azure Storage-ügyfélkódtárból. Ezek a kérések tranzakciónkénti díjakat halmoznak fel. A tranzakció típusa befolyásolja a fiók terhelését. Az olvasási tranzakciók például más számlázási kategóriába tartoznak, mint az írási tranzakciók. Az alábbi táblázat a tárfiók típusa alapján a kérelmek számlázási kategóriáját Set Container ACL mutatja be:

Művelet Tárfiók típusa Számlázási kategória
Tároló ACL-ének beállítása Prémium szintű blokkblob
Standard általános célú v2
Egyéb műveletek
Tároló ACL-ének beállítása Standard általános célú v1 Írási műveletek

A megadott számlázási kategória díjszabásáról a Azure Blob Storage Díjszabás című témakörben talál további információt.

Lásd még

Tárolókhoz és blobokhoz való hozzáférés korlátozása
Hozzáférés delegálása közös hozzáférésű jogosultságkóddal
Közös hozzáférésű jogosultságkód létrehozása és használata
Tárolt hozzáférési szabályzat meghatározása
Tároló ACL-ének lekérése
Kérések engedélyezése az Azure Storage-nak
Állapot- és hibakódok
Blob szolgáltatás hibakódjai