Kira Paylaşımı
İşlem, Lease Share
Azure dosya paylaşımında veya paylaşım anlık görüntüsünde kilit oluşturur ve yönetir. Bu API tam olarak desteklenir, ancak eski bir yönetim API'dir. Bunun yerine, depolama kaynak sağlayıcısı (Microsoft.Storage) tarafından sağlanan Dosya Paylaşımları - Kira'yı kullanın. Depolama kaynak sağlayıcısını kullanarak kaynaklarla FileShare
program aracılığıyla etkileşim kurma hakkında daha fazla bilgi edinmek için bkz. Dosya Paylaşımlarında İşlemler.
Kilit süresi 15 ile 60 saniye olabilir veya sonsuz olabilir. İşlemi aşağıdaki modlardan birinde çağırabilirsiniz Lease Share
:
Acquire
: Yeni kiralama istemek için.Renew
: Mevcut kiralamayı yenilemek için.Change
: Mevcut kiralamanın kimliğini değiştirmek için.Release
: Başka bir istemcinin dosya paylaşımına karşı hemen kiralama alabilmesi için, artık gerekli değilse kirayı serbest bırakır.Break
: Kiralamayı sonlandırmak, ancak geçerli kiralama süresi dolana kadar başka bir istemcinin yeni kira alamamasını sağlamak.
Not
İşlem Lease Share
2020-02-10 ve sonraki sürümlerde kullanılabilir.
Protokol kullanılabilirliği
Etkin dosya paylaşımı protokolü | Kullanılabilir |
---|---|
SMB | |
NFS |
İstek
İsteği aşağıdaki gibi oluşturabilirsiniz Lease Share
. 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.file.core.windows.net/myshare?comp=lease&restype=share |
HTTP/1.1 |
PUT |
https://myaccount.file.core.windows.net/myshare?comp=lease&sharesnapshot=<DateTime>&restype=share |
HTTP/1.1 |
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. Azure Dosyalar 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: <action> |
acquire : Yeni bir kiralama isteğinde bulunur. Dosya paylaşımının etkin bir kirası yoksa, Azure Dosyalar dosya paylaşımında bir kira oluşturur ve yeni bir kira kimliği döndürür. Dosya paylaşımının etkin 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 duration bir belirtebilirsiniz.renew : Kirayı yeniler. İstekte belirtilen kira kimliği dosya paylaşımıyla ilişkiliyle eşleşiyorsa kirayı yenileyebilirsiniz. Dosya paylaşımının süresi dolduğundan bu yana yeniden kiralanmamışsa, süresi dolmuş olsa bile kirayı yenileyebileceğinizi 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-id yeni bir kira kimliğini x-ms-proposed-lease-id içermelidir.release : Kirayı serbest bırakın. İstekte belirtilen kira kimliği dosya paylaşımı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 dosya paylaşımı için kirayı hemen almasını sağlar.break : Dosya paylaşımı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 ve break release bu süre boyunca dosya paylaşımında gerçekleştirebileceğiniz tek işlemler bunlardır. 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. İstemci, serbest bırakılmış bir dosya paylaşımı kirası alabilir. |
x-ms-lease-break-period: N |
İsteğe bağlı. break Bir işlem için, kiranın bozulmadan önce, saniyeler içinde, 0 ile 60 arasında devam etmesi ö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 |
için acquire gereklidir. 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 change kullanılarak renew değiştirilemez. |
x-ms-proposed-lease-id: <ID> |
için acquire isteğe bağlı ve için change gereklidir. GUID dize biçiminde önerilen kira kimliği. Azure Blob Depolama, önerilen kira kimliği doğru biçimde değilse döndürür400 (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 Dosyalar. |
İstek gövdesi
Yok.
Örnek istek
Aşağıdaki örnek istekte kira alma işlemi gösterilmektedir:
Request Syntax:
PUT https://myaccount.file.core.windows.net/myshare?restype=share&comp=lease HTTP/1.1
Request Headers:
x-ms-version: 2020-02-10
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 Dosya paylaşımı için. |
Last-Modified |
Dosya paylaşımının son değiştirildiği tarihi ve saati döndürür. Daha fazla bilgi için bkz. Üst bilgilerde tarih-saat değerlerinin gösterimi. Dosya paylaşımını veya özelliklerini ya da meta verilerini değiştiren tüm işlemler son değiştirme zamanını güncelleştirir. Bu, dosya paylaşımının izinlerini ayarlamayı içerir. Bloblardaki işlemler dosya paylaşımının son değiştirilme zamanını etkilemez. |
x-ms-lease-id: <id> |
Kiralama istediğinizde, Azure Dosyalar benzersiz bir kira kimliği döndürür. Kira etkinken, dosya paylaşımını 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 döndürülür 0 . |
x-ms-request-id |
Yapılan isteği benzersiz olarak tanımlar ve istekle ilgili sorunları 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 FileREST API sürümünü gösterir. |
Date |
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 true ayarlanır. |
x-ms-client-request-id |
İsteklerin ve karşılık gelen yanıtların sorunlarını gidermek için kullanılabilir. 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-File/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: cc6b209a-b593-4be1-a38a-dde7c106f402
x-ms-version: 2020-02-10
x-ms-lease-id: 1f812371-a41d-49e6-b123-f4b542e851c5
Date: Thu, 26 Jan 2012 23:30:18 GMT
Yetkilendirme
Bu işlemi yalnızca hesap sahibi çağırabilir.
Açıklamalar
Dosya paylaşımındaki kiralama, dosya paylaşımına özel silme erişimi sağlar. Dosya paylaşımı alma işlemleri kira kimliği dahil edilmeden kiralanmış bir dosya paylaşımında başarılı olur. Dosya paylaşımı işlemlerini ayarlama işlemi için dosya paylaşımı kira kimliği gerekir. Kira kimliği ayarlanmış dosya paylaşımı işlemlerine dahil değilse, işlem 412 ile başarısız olur (Önkoşul başarısız oldu). Kira, kira alınırken belirtilen süre boyunca verilir; bu süre 15 ila 60 saniye veya sonsuz bir süre olabilir.
bir istemci kiralama aldığında, bir kira kimliği döndürülür. Azure Dosyalar, alma isteğinde belirtilmemişse 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 beş durumu ve kiralama durumunun değişmesine neden olan komutlar veya olaylar gösterilmektedir.
Kiranın kilitlenip kilitlenmediğine ve bu durumda kiranın yenilenebilir olup olmadığına bağlı olarak kiralama bu durumların herhangi birinde olabilir. Önceki diyagramda gösterilen kira eylemleri durum geçişlerine neden olur.
Yenileme durumu | Kilitli kira | Kilidi açılmış kira |
---|---|---|
Yenilenebilir kiralama | Kiralanan | Süresi doldu |
Yenilenebilir olmayan kiralama | Yeni | Bozuk, Kullanılabilir |
Available
kiranın kilidi açılır ve elde edilebilir. İzin verilen eylem:acquire
.Leased
, kira kilitlidir. İzin verilen eylemler:acquire
(yalnızca aynı kira kimliği),renew
,change
,release
vebreak
.Expired
, kiralama süresinin dolduğunu gösterir. İzin verilen eylemler:acquire
,renew
,release
vebreak
.Breaking
, kira bozulmuştur, ancak kesme süresi dolana kadar kira kilitli olmaya devam edecektir. İzin verilen eylemler:release
vebreak
.Broken
kirası kesildi ve kesme süresinin süresi doldu. İzin verilen eylemler:acquire
,release
vebreak
.
Azure Dosyalar, dosya paylaşımı 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, bu, dosya paylaşımının kiralamasının son etkin olduğu tarihten sonra yeniden kiralandığı veya silindiği anlamına gelir. Bir kiranın süresi açıkça yayımlanmak yerine sona eriyorsa, istemcinin dosya paylaşımı için yeni bir kiranın alınabilmesi için bir dakika kadar beklemesi gerekebilir. Ancak istemci, süresi dolan kira kimliğiyle kiralamayı hemen yenileyebilir.
Dosya paylaşımının Last-Modified-Time
özelliği çağrısıyla Lease Share
güncelleştirilmez.
Aşağıdaki tablolarda, çeşitli kira durumlarında kiraları olan kapsayıcılardaki eylemlerin sonuçları gösterilmektedir. Harfler (A), (B) ve (C) kira kimliklerini temsil eder ve (X) Azure Dosyalar tarafından oluşturulan kira kimliğini temsil eder.
Kira durumuna göre paylaşımlarda 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 Oluyor (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ı olur | 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 Oluyor (409) | Başarısız Oluyor (409) | Başarısız Oluyor (412) | Başarısız Oluyor (412) |
İşlemler, kira belirtilmemiş | Kullanılabilir, işlem başarılı olur | Kiralanan (A), işlem başarılı olur | 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 paylaşımlardaki 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 Oluyor (409) | Başarısız Oluyor (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 (409) | Başarısız (409) |
Release (A) |
Başarısız (409) | Kullanılabilir | Kullanılabilir | Kullanılabilir | Kullanılabilir |
Release (B) |
Başarısız (409) | Başarısız (409) | Başarısız (409) | Başarısız (409) | Başarısız (409) |
Süre sona eriyor | Kullanılabilir | Süresi Doldu (A) | Bozuk (A) | Bozuk (A) | Süresi Doldu (A) |