Depolanan erişim ilkesi tanımlama

Depolanan erişim ilkesi, sunucu tarafında hizmet düzeyi paylaşılan erişim imzaları (SAS) üzerinde ek bir denetim düzeyi sağlar. Depolanan erişim ilkesi oluşturmak, paylaşılan erişim imzalarını gruplandırmaya ve ilkeye bağlı imzalar için ek kısıtlamalar sağlamaya hizmet eder.

Bir imzanın başlangıç saatini, süre sonunu veya izinlerini değiştirmek için bir depolanmış erişim ilkesi kullanabilirsiniz. Ayrıca, bir imza verildikten sonra imzayı iptal etmek için bir depolanmış erişim ilkesi de kullanabilirsiniz.

Aşağıdaki depolama kaynakları, depolanan erişim ilkelerini destekler:

  • Blob kapsayıcıları
  • Dosya paylaşımları
  • Kuyruklar
  • Tablolar

Not

Kapsayıcıdaki depolanmış erişim ilkesi, kapsayıcının kendisine veya içerdiği bloblara izinler veren paylaşılan erişim imzası ile ilişkilendirilebilir. Benzer şekilde, bir dosya paylaşımındaki depolanmış erişim ilkesi, paylaşımın kendisine veya içerdiği dosyalara izinler veren paylaşılan erişim imzası ile ilişkilendirilebilir.

Depolanan erişim ilkeleri kullanıcı temsilcisi SAS veya hesap SAS'sı için desteklenmez.

Depolanan erişim ilkesi oluşturma veya değiştirme

Paylaşılan erişim imzası için erişim ilkesi başlangıç saati, süre sonu ve imza izinlerinden oluşur. Aşağıdaki seçeneklerden birini belirtebilir veya bunları birleştirebilirsiniz:

  • İmza URI'sinde bu parametrelerin tümü ve depolanmış erişim ilkesinde hiçbiri
  • Bu parametrelerin tümü depolanmış erişim ilkesinde ve URI'de yok

Ancak hem SAS belirtecinde hem de depolanmış erişim ilkesinde parametre belirtemezsiniz.

Depolanmış erişim ilkesi oluşturmak veya değiştirmek için, erişim ilkesinin Set ACL koşullarını belirten bir istek gövdesiyle kaynağın işlemini çağırın (bkz. Kapsayıcı ACL'sini Ayarlama, Kuyruk ACL'sini Ayarlama, Tablo ACL'yi Ayarlama veya Paylaşım ACL'sini Ayarlama). İsteğin gövdesi, en fazla 64 karakter uzunluğunda, seçtiğiniz benzersiz bir imzalı tanımlayıcı içerir. İsteğin gövdesi, aşağıdaki gibi erişim ilkesinin isteğe bağlı parametrelerini de içerir:

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

Bir kapsayıcı, tablo, kuyruk veya paylaşım üzerinde aynı anda en fazla beş erişim ilkesi ayarlayabilirsiniz. Benzersiz alanı olan Id her SignedIdentifier alan bir erişim ilkesine karşılık gelir. Aynı anda beşten fazla erişim ilkesi ayarlamaya çalışmak, hizmetin 400 (Hatalı İstek) durum kodunu döndürmesine neden olur.

Not

Kapsayıcı, tablo, kuyruk veya paylaşımda depolanan erişim ilkesi oluşturduğunuzda veya güncelleştirdiğinizde, değişikliğin etkili olması 30 saniyeye kadar sürebilir. Bu aralık boyunca, depolanan erişim ilkesiyle ilişkili paylaşılan erişim imzasından gelen istekler, erişim ilkesi etkin olana kadar durum kodu 403 (Yasak) ile başarısız olabilir.

Depolanan erişim ilkesinde tablo varlıkları (startpk, startrk, endpkve endrk) için aralık kısıtlamaları belirtemezsiniz.

Depolanan erişim ilkesini değiştirme veya iptal etme

Depolanan erişim ilkesinin parametrelerini değiştirmek için, mevcut ilkeyi değiştirmek üzere kaynak türü için erişim denetim listesi (ACL) işlemini çağırabilirsiniz. Bu işlemde yeni bir başlangıç saati, süre sonu süresi veya izin kümesi belirtin.

Örneğin, mevcut ilkeniz bir kaynağa okuma ve yazma izinleri verirse, bunu gelecekteki tüm istekler için yalnızca okuma izinleri vermek üzere değiştirebilirsiniz. Bu durumda, alan tarafından ID belirtildiği gibi yeni ilkenin imzalı tanımlayıcısı, değiştirdiğiniz ilkenin imzalı tanımlayıcısı ile aynı olacaktır.

Depolanan erişim ilkesini iptal etmek için, imzalı tanımlayıcıyı değiştirerek ilkeyi silebilir, yeniden adlandırabilir veya süre sonu süresini geçmişteki bir değerle değiştirebilirsiniz. İmzalı tanımlayıcının değiştirilmesi, mevcut imzalarla depolanan erişim ilkesi arasındaki ilişkilendirmeleri bozar. Süre sonu süresinin geçmişteki bir değerle değiştirilmesi, ilişkili imzaların süresinin dolmasına neden olur. Depolanan erişim ilkesinin silinmesi veya değiştirilmesi, kendisiyle ilişkili tüm paylaşılan erişim imzalarını hemen etkiler.

Tek bir erişim ilkesini kaldırmak için kaynağın işlemini çağırın Set ACL . Kapsayıcıda tutmak istediğiniz imzalı tanımlayıcı kümesini geçirin. Kaynaktan tüm erişim ilkelerini kaldırmak için işlemi boş bir istek gövdesiyle çağırın Set ACL .

Ayrıca bkz.