Aracılığıyla paylaş


Kira Kapsayıcısı

İşlem, Lease Container silme işlemleri için bir kapsayıcı üzerinde kilit oluşturur ve yönetir. Kilit süresi 15 ile 60 saniye olabilir veya sonsuz olabilir.

İşlemi aşağıdaki modlardan birinde çağırabilirsiniz Lease Container :

  • Acquireögesini seçin.

  • Renewögesini seçin.

  • Change, mevcut kiralamanın kimliğini değiştirmek için.

  • Release, artık gerekli değilse kirayı serbest bırakır, böylece başka bir istemci kapsayıcıya karşı hemen bir kira alabilir.

  • Break, ancak geçerli kiralama süresi dolana kadar başka bir istemcinin yeni kira alamamasını sağlar.

Not

İşlem Lease Container 2012-02-12 ve sonraki sürümlerde kullanılabilir.

İstek

İsteği aşağıdaki gibi oluşturabilirsiniz Lease Container . HTTPS önerilir. myaccount değerini depolama hesabınızın adıyla değiştirin.

Yöntem İstek URI'si HTTP sürümü
PUT https://myaccount.blob.core.windows.net/mycontainer?comp=lease&restype=container HTTP/1.1

Kök kapsayıcıyı belirtmek için kapsayıcı adı olarak girin $root .

Öykünülmüş depolama hizmeti URI'si

Öykünülmüş depolama hizmetine yönelik bir istekte bulunurken öykünücü konak adını ve Azure Blob Depolama bağlantı noktasını olarak 127.0.0.1:10000ve ardından öykünülen depolama hesabı adını belirtin.

Yöntem İstek URI'si HTTP sürümü
PUT http://127.0.0.1:10000/mycontainer?comp=lease&restype=container HTTP/1.0

HTTP/1.1

Daha fazla bilgi için bkz. Yerel Azure Depolama geliştirmesi için Azurite öykünücüsü kullanma.

URI parametreleri

İstek URI'sinde aşağıdaki ek parametreyi belirtebilirsiniz.

Parametre Açıklama
timeout İsteğe bağlı. timeout parametresi saniye cinsinden ifade edilir. Daha fazla bilgi için bkz. Blob Depolama işlemleri için zaman aşımlarını ayarlama.

İstek üst bilgileri

Aşağıdaki tabloda gerekli ve isteğe bağlı istek üst bilgileri açıklanmaktadır.

İstek üst bilgisi Açıklama
Authorization Gereklidir. Yetkilendirme düzenini, hesap adını ve imzayı belirtir. Daha fazla bilgi için bkz. Azure Depolama'ya istekleri yetkilendirme.
Date veya x-ms-date Gereklidir. İstek için Eşgüdümlü Evrensel Saat (UTC) biçimini belirtir. Daha fazla bilgi için bkz. Azure Depolama'ya istekleri yetkilendirme.
x-ms-version İsteğe bağlı. Bu istek için kullanılacak işlemin sürümünü belirtir. Daha fazla bilgi için bkz. Azure Depolama hizmetleri için sürüm oluşturma.
x-ms-lease-id: <ID> Kirayı yenilemek, değiştirmek veya serbest bırakmak için gereklidir.

değerini x-ms-lease-id geçerli herhangi bir GUID dizesi biçiminde belirtebilirsiniz. Geçerli biçimlerin listesi için bkz. Guid Oluşturucu (Dize).
x-ms-lease-action: <acquire ¦ renew ¦ change ¦ release ¦ break> acquire: Yeni bir kiralama isteğinde bulunur. Kapsayıcının etkin kiralaması yoksa, Blob Depolama kapsayıcıda bir kira oluşturur ve yeni bir kira kimliği döndürür. Kapsayıcının etkin bir kirası varsa, yalnızca etkin kira kimliğini kullanarak yeni kiralama isteyebilirsiniz. Ancak, süresi hiç dolmamış bir kiralama için negatif bir (-1) dahil olmak üzere yeni x-ms-lease durationbir belirtebilirsiniz.

renew: Kirayı yeniler. İstekte belirtilen kira kimliği kapsayıcıyla ilişkiliyle eşleşiyorsa kirayı yenileyebilirsiniz. Kapsayıcının süresi dolduğundan bu yana yeniden kiralanmamış olması durumunda kiralama süresi dolmuş olsa bile kiranın yenilenebileceğini unutmayın. Kiralamayı yenilediğinizde, kira süresi saati sıfırlanır.

change: Etkin kiralamanın kira kimliğini değiştirin. , change içinde geçerli kira kimliğini ve içinde x-ms-lease-idyeni bir kira kimliğini x-ms-proposed-lease-idiçermelidir.

release: Kirayı serbest bırakın. İstekte belirtilen kira kimliği kapsayıcıyla ilişkiliyle eşleşiyorsa kirayı serbest bırakabilirsiniz. Kiranın serbest bırakılması, yayın tamamlandıktan hemen sonra başka bir istemcinin kapsayıcının kirasını hemen almasını sağlar.

break: Kapsayıcının etkin bir kirası varsa kirayı sonlandırın. Kiralama bozulduktan sonra yenilenemez. Yetkili istekler kirayı bozabilir. Eşleşen bir kira kimliği belirtmek için istek gerekli değildir. Kira kesildiğinde, kira kesme süresinin geçmesine izin verilir. Kapsayıcı üzerinde yalnızca bu süre boyunca işlem gerçekleştirebilir break ve release kiralayabilirsiniz. Kira başarıyla kesildiğinde, yanıt yeni bir kira alınıncaya kadar saniye cinsinden aralığı gösterir.

Bozulan bir kira da serbest bırakılabilir. bir istemci, serbest bırakılmış bir kapsayıcı kirası hemen alabilir.
x-ms-lease-break-period: N İsteğe bağlı. break Bir işlem için bu üst bilgi, kiranın bozulmadan önce 0 ile 60 saniye arasında devam etmesi için önerilen süredir. Bu kesme dönemi yalnızca kirada kalan süreden kısaysa kullanılır. Daha uzunsa, kirada kalan süre kullanılır. Kesme süresi dolmadan önce yeni bir kira kullanılamaz, ancak kiralama kesme döneminden daha uzun süre tutulabilir. Bu üst bilgi bir break işlemle birlikte görünmüyorsa, kalan kiralama dönemi geçtikten sonra sabit süreli kiralama bozulur ve sonsuz kiralama hemen sona erer.
x-ms-lease-duration: -1 ¦ n seconds için acquiregereklidir. Süresi hiç dolmamış bir kiralama için kiranın süresini saniye cinsinden veya negatif bir (-1) olarak belirtir. Sonsuz olmayan kiralama 15 ile 60 saniye arasında olabilir. Kira süresi veya changekullanılarak renew değiştirilemez.
x-ms-proposed-lease-id: <ID> için acquireisteğe bağlı ve için changegereklidir. GUID dize biçiminde önerilen kira kimliği. Önerilen kira kimliği doğru biçimde değilse Blob Depolama döndürür 400 (Invalid request) . Geçerli biçimlerin listesi için bkz. Guid Oluşturucu (Dize).
Origin İsteğe bağlı. İsteğin verildiği kaynağı belirtir. Bu üst bilginin varlığı, yanıtta çıkış noktaları arası kaynak paylaşımı (CORS) üst bilgileriyle sonuçlanır. Ayrıntılar için bkz. Depolama hizmetleri için CORS desteği .
x-ms-client-request-id İsteğe bağlı. Günlüğe kaydetme yapılandırıldığında günlüklere kaydedilen 1 kibibayt (KiB) karakter sınırıyla istemci tarafından oluşturulan, opak bir değer sağlar. İstemci tarafı etkinlikleriyle sunucunun aldığı istekler arasında bağıntı sağlamak için bu üst bilgiyi kullanmanızı kesinlikle öneririz. Daha fazla bilgi için bkz. İzleme Azure Blob Depolama.

Bu işlem, yalnızca belirtilen bir koşul karşılandığında işlemi çalıştırmak için koşullu üst bilgilerin kullanımını da destekler. Daha fazla bilgi için bkz. Blob Depolama işlemleri için koşullu üst bilgileri belirtme.

İstek gövdesi

Yok.

Örnek istek

Aşağıdaki örnek istekte kira alma işlemi gösterilmektedir:

  
Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=lease HTTP/1.1  
  
Request Headers:  
x-ms-version: 2012-02-12  
x-ms-lease-action: acquire  
x-ms-lease-duration: -1  
x-ms-proposed-lease-id: 1f812371-a41d-49e6-b123-f4b542e851c5  
x-ms-date: Thu, 26 Jan 2012 23:30:18 GMT  
Authorization: SharedKey testaccount1:esSKMOYdK4o+nGTuTyeOLBI+xqnqi6aBmiW4XI699+o=  
  

Yanıt

Yanıt bir HTTP durum kodu ve yanıt üst bilgileri kümesi içerir.

Durum kodu

Kira işlemleri için döndürülen başarı durum kodları şunlardır:

  • Acquire: Başarılı bir işlem 201 (Oluşturuldu) durum kodunu döndürür.

  • Renew: Başarılı bir işlem 200 (Tamam) durum kodunu döndürür.

  • Change: Başarılı bir işlem 200 (Tamam) durum kodunu döndürür.

  • Release: Başarılı bir işlem 200 (Tamam) durum kodunu döndürür.

  • Break: Başarılı bir işlem 202 (Kabul Edildi) durum kodunu döndürür.

Durum kodları hakkında bilgi için bkz. Durum ve hata kodları.

Yanıt üst bilgileri

Bu işlemin yanıtı aşağıdaki üst bilgileri içerir. Yanıt ek, standart HTTP üst bilgileri de içerebilir. Tüm standart üst bilgiler HTTP/1.1 protokol belirtimine uygundur.

Syntax Description
ETag ETag Kapsayıcı için. Bu üst bilgi, 2013-08-15 ve sonraki sürümlerde yapılan istekler için döndürülür ve ETag değer tırnak içindedir. Lease Container 2013-08-15 ve sonraki sürümlerde yapılan işlemler bu özelliği değiştirmez, ancak önceki sürümler değiştirir.
Last-Modified Sürüm 2013-08-15 ve sonrası için yapılan istekler için döndürüldü. Kapsayıcının son değiştirildiği tarih ve saati döndürür. Daha fazla bilgi için bkz. Üst bilgilerde tarih-saat değerlerinin gösterimi.

Kapsayıcıyı veya kapsayıcının özelliklerini ya da meta verilerini değiştiren tüm işlemler son değiştirme zamanını güncelleştirir. Bu, kapsayıcının izinlerini ayarlamayı içerir. Bloblardaki işlemler kapsayıcının son değiştirme zamanını etkilemez. Lease Container 2013-08-15 ve sonraki sürümlerde yapılan işlemler bu özelliği değiştirmez, ancak önceki sürümler değiştirir.
x-ms-lease-id: <id> Kiralama isteğinde bulunursanız Blob Depolama benzersiz bir kira kimliği döndürür. Kira etkinken, kapsayıcıyı silme veya kirayı yenileme, değiştirme veya serbest bırakma isteğine kira kimliğini eklemeniz gerekir.

Başarılı bir yenileme işlemi, etkin kiranın kira kimliğini de döndürür.
x-ms-lease-time: seconds Kira döneminde kalan yaklaşık süre (saniye cinsinden). Bu üst bilgi yalnızca kirayı bozmaya yönelik başarılı bir istek için döndürülür. Kesme anında gerçekleşirse 0 döndürülür.
x-ms-request-id Bu üst bilgi, yapılan isteği benzersiz olarak tanımlar ve isteğin sorunlarını gidermek için kullanılabilir. Daha fazla bilgi için bkz. API işlemleriyle ilgili sorunları giderme.
x-ms-version İsteği çalıştırmak için kullanılan Blob Depolama sürümünü gösterir. Bu üst bilgi, 2009-09-19 ve sonraki sürümlerde yapılan istekler için döndürülür.
Tarih Yanıtın başlatıldığı saati gösteren utc tarih/saat değeri. Hizmet bu değeri oluşturur.
Access-Control-Allow-Origin İstek bir Origin üst bilgi içeriyorsa ve CORS eşleşen bir kuralla etkinleştirildiyse döndürülür. Bu üst bilgi, eşleşme olması durumunda kaynak istek üst bilgisinin değerini döndürür.
Access-Control-Expose-Headers İstek bir Origin üst bilgi içeriyorsa ve CORS eşleşen bir kuralla etkinleştirildiyse döndürülür. İsteğin istemcisine veya verene sunulacak yanıt üst bilgilerinin listesini döndürür.
Access-Control-Allow-Credentials İstek bir Origin üst bilgi içeriyorsa ve CORS tüm çıkış noktalarına izin vermeyecek bir eşleştirme kuralıyla etkinleştirildiyse döndürülür. Bu üst bilgi olarak trueayarlanır.
x-ms-client-request-id İstekler ve karşılık gelen yanıtlarla ilgili sorunları gidermek için bu üst bilgiyi kullanabilirsiniz. Bu üst bilginin değeri, istekte varsa üst bilginin değerine x-ms-client-request-id eşittir. Değer en fazla 1.024 görünür ASCII karakterdir. x-ms-client-request-id Üst bilgi istekte yoksa yanıtta bulunmaz.

Yanıt gövdesi

Yok.

Örnek yanıt

Kira alma isteği için örnek bir yanıt aşağıda verilmiştir:

Response Status:  
HTTP/1.1 201 Created  
  
Response Headers:  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  
x-ms-request-id: cc6b209a-b593-4be1-a38a-dde7c106f402  
x-ms-version: 2012-02-12  
x-ms-lease-id: 1f812371-a41d-49e6-b123-f4b542e851c5  
Date: Thu, 26 Jan 2012 23:30:18 GMT  
  

Yetkilendirme

Azure Depolama'da herhangi bir veri erişim işlemini çağırırken yetkilendirme gereklidir. İşlemi aşağıdaki bölümlerde açıklandığı gibi yetkilendirilebilirsiniz Lease Container .

Önemli

Microsoft, Azure Depolama'ya yönelik istekleri yetkilendirmek için yönetilen kimliklerle Microsoft Entra ID kullanılmasını önerir. Microsoft Entra ID, Paylaşılan Anahtar yetkilendirmesine kıyasla üstün güvenlik ve kullanım kolaylığı sağlar.

Azure Depolama, blob verilerine yönelik istekleri yetkilendirmek için Microsoft Entra ID kullanılmasını destekler. Microsoft Entra ID ile Azure rol tabanlı erişim denetimini (Azure RBAC) kullanarak güvenlik sorumlusuna izinler verilmektedir. Güvenlik sorumlusu bir kullanıcı, grup, uygulama hizmet sorumlusu veya Azure yönetilen kimliği olabilir. Güvenlik sorumlusunun kimliği, OAuth 2.0 belirtecini döndürmek için Microsoft Entra ID tarafından doğrulanır. Belirteç daha sonra Blob Depolama'ya karşı bir isteği yetkilendirmek için kullanılabilir.

Microsoft Entra ID kullanarak yetkilendirme hakkında daha fazla bilgi edinmek için bkz. Microsoft Entra ID kullanarak bloblara erişimi yetkilendirme.

İzinler

Microsoft Entra kullanıcı, grup, yönetilen kimlik veya hizmet sorumlusunun işlemi çağırması Lease Container ve bu eylemi içeren en az ayrıcalıklı yerleşik Azure RBAC rolü için aşağıdaki RBAC eylemleri gereklidir:

Azure RBAC kullanarak rol atama hakkında daha fazla bilgi edinmek için bkz. Blob verilerine erişim için Azure rolü atama.

Açıklamalar

Kapsayıcıdaki kiralama, kapsayıcıya özel silme erişimi sağlar. Kapsayıcı kiralaması yalnızca Kapsayıcıyı Sil işlemini kullanarak kapsayıcıyı silme özelliğini denetler. Etkin kiralaması olan bir kapsayıcıyı silmek için, istemcinin silme isteğine sahip etkin kira kimliğini içermesi gerekir. Kira kimliği dahil değilse, işlem 412 ile başarısız olur (Önkoşul başarısız oldu). Diğer tüm kapsayıcı işlemleri kiralanmış bir kapsayıcıda, kira kimliği dahil edilmeden başarılı olur. Kira, kira alındığı zaman belirtilen süre boyunca verilir ve bu süre 15 ile 60 saniye arasında veya sonsuz bir süre olabilir.

bir istemci kiralama aldığında, bir kira kimliği döndürülür. Alma isteğinde belirtilmemişse Blob Depolama bir kira kimliği oluşturur. İstemci, kiralamayı yenilemek, kira kimliğini değiştirmek veya kirayı serbest bırakmak için bu kira kimliğini kullanabilir. Aşağıdaki diyagramda kiralamanın olası durumları ve kiralama durumu değişikliklerine neden olan komutlar veya olaylar gösterilmektedir.

Kapsayıcı kiralama durumlarının ve durum değişikliği tetikleyicilerinin diyagramı.

Kiralamanın kilitlenip kilitlenmediğine ve kiranın bu durumda yenilenebilir olmasına bağlı olarak, kiralama beş durumdan birinde olabilir. Önceki diyagramda gösterilen kira eylemleri durum geçişlerine neden olur.

Yenileme durumu Kilitli kiralama Kilidi açılmış kira
Yenilenebilir kiralama Kiralanan Süresi doldu
Yenilenebilir olmayan kiralama Yeni Bozuk, Kullanılabilir
  • Availablekiranın kilidi açılır ve alınabilir. İzin verilen eylem: acquire.

  • Leased, kira kilitlenir. İzin verilen eylemler: acquire (yalnızca aynı kira kimliği), renew, change, releaseve break.

  • Expiredkira süresi doldu. İzin verilen eylemler: acquire, renew, releaseve break.

  • Breaking, kira bozulmuştur, ancak kesme süresi dolana kadar kira kilitlenmeye devam edecektir. İzin verilen eylemler: release ve break.

  • Broken, kira bozuldu ve kesme süresi doldu. İzin verilen eylemler: acquire, releaseve break.

Blob Depolama, bir kapsayıcı kirasının süresi dolduktan sonra kira kimliğini korur. İstemci, süresi dolan kira kimliğini kullanarak kirayı yenileyebilir veya serbest bırakabilir. İstemci, süresi dolmuş bir kirayı önceki kira kimliğiyle yenilemeye veya serbest bırakmaya çalışırsa ve istek başarısız olursa, istemcinin kirası son etkin olduğundan kapsayıcı yeniden kiralanmış veya silinmiştir.

Açıkça serbest bırakılmak yerine kiranın süresi dolarsa, kapsayıcı için yeni bir kiranın alınabilmesi için istemcinin bir dakika kadar beklemesi gerekebilir. Ancak istemci, süresi dolan kira kimliğiyle kiralamayı hemen yenileyebilir.

Kapsayıcının Last-Modified-Time özelliği çağrısıyla Lease Containergüncelleştirilmez.

Aşağıdaki tablolarda, çeşitli kira durumlarında kiraları olan kapsayıcılardaki eylemlerin sonuçları gösterilir. Harfler (A), (B) ve (C) kira kimliklerini temsil eder ve (X) Blob Depolama tarafından oluşturulan bir kira kimliğini temsil eder.

Kira durumuna göre kapsayıcılarda kullanım denemelerinin sonuçları

Eylem Kullanılabilir Kiralanan (A) Hata (A) Bozuk (A) Süresi Doldu (A)
(A) ile silme Başarısız Oluyor (412) Kiralanan (A), silme başarılı olur Hata (A), silme başarılı olur Başarısız Oluyor (412) Başarısız Oluyor (412)
(B) ile sil Başarısız Oluyor (412) Başarısız (409) Başarısız Oluyor (412) Başarısız Oluyor (412) Başarısız Oluyor (412)
Sil, kira belirtilmedi Kullanılabilir, silme başarılı olur Başarısız Oluyor (412) Başarısız Oluyor (412) Kullanılabilir, silme başarılı olur Kullanılabilir, silme başarılı olur
(A) ile diğer işlemler Başarısız Oluyor (412) Kiralanan (A), işlem başarılı Hata (A), işlem başarılı Başarısız Oluyor (412) Başarısız Oluyor (412)
(B) ile diğer işlemler Başarısız Oluyor (412) Başarısız (409) Başarısız (409) Başarısız Oluyor (412) Başarısız Oluyor (412)
İşlemler, kira belirtilmedi Kullanılabilir, işlem başarılı olur Kiralanan (A), işlem başarılı Hata (A), işlem başarılı Bozuk (A), işlem başarılı Süresi doldu (A), işlem başarılı

Kira durumuna göre kapsayıcılardaki kiralama işlemlerinin sonuçları

Eylem Kullanılabilir Kiralanan (A) Hata (A) Bozuk (A) Süresi Doldu (A)
Acquire, önerilen kira kimliği yok Kiralanan (X) Başarısız (409) Başarısız (409) Kiralanan (X) Kiralanan (X)
Acquire (A) Kiralanan (A) Kiralanan (A), yeni süre Başarısız Oluyor (409) Kiralanan (A) Kiralanan (A)
Acquire (B) Kiralanan (B) Başarısız Oluyor (409) Başarısız Oluyor (409) Kiralanan (B) Kiralanan (B)
Break, nokta=0 Başarısız Oluyor (409) Bozuk (A) Bozuk (A) Bozuk (A) Bozuk (A)
Break, dönem>0 Başarısız Oluyor (409) Hata (A) Hata (A) Bozuk (A) Bozuk (A)
Change, (A) - (B) Başarısız Oluyor (409) Kiralanan (B) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409)
Change, (B) - (A) Başarısız Oluyor (409) Kiralanan (A) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409)
Change, (B) - (C) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409)
Renew (A) Başarısız Oluyor (409) Kiralanan (A), süre sonu saati sıfırlama Başarısız Oluyor (409) Başarısız Oluyor (409) Kiralanan (A)
Renew (B) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409)
Release (A) Başarısız Oluyor (409) Kullanılabilir Kullanılabilir Kullanılabilir Kullanılabilir
Release (B) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409) Başarısız Oluyor (409)
Süre sona eriyor Kullanılabilir Süresi Doldu (A) Bozuk (A) Bozuk (A) Süresi Doldu (A)

Faturalama

Fiyatlandırma istekleri, Blob Depolama API'lerini kullanan istemcilerden, doğrudan Blob Depolama REST API'si aracılığıyla veya bir Azure Depolama istemci kitaplığından kaynaklanabilir. Bu istekler işlem başına ücret tahakkuk eder. İşlem türü, hesabın nasıl ücretlendirildiğinden etkilenir. Örneğin, okuma işlemleri yazma işlemlerinden farklı bir faturalama kategorisine tahakkuk eder. Aşağıdaki tabloda, depolama hesabı türüne göre istekler için Lease Container faturalama kategorisi gösterilmektedir:

İşlem Depolama hesabı türü Faturalama kategorisi
Kira Kapsayıcısı (alma, bırakma, yenileme) Premium blok blobu
Standart genel amaçlı v2
Diğer işlemler
Kira Kapsayıcısı (alma, bırakma, yenileme) Standart genel amaçlı v1 Okuma işlemleri
Kira Kapsayıcısı (kesme, değiştirme) Premium blok blobu
Standart genel amaçlı v2
Diğer işlemler
Kira Kapsayıcısı (kesme, değiştirme) Standart genel amaçlı v1 Yazma işlemleri

Belirtilen faturalama kategorisinin fiyatlandırması hakkında bilgi edinmek için bkz. fiyatlandırma Azure Blob Depolama.

Ayrıca bkz.

Azure Depolama'ya yönelik istekleri yetkilendirme
Durum ve hata kodları
Blob Depolama hata kodları
Blob Kiralama