Anlık Görüntü Blobu

İşlem, Snapshot Blob bir lekenin yalnızca okunabilir bir anlık görüntüsü oluşturur.

İstek

Snapshot Blob isteğini aşağıdaki gibi oluşturabilirsiniz. HTTPS önerilir. myaccount değerini depolama hesabınızın adıyla değiştirin:

PUT yöntemi istek URI'si HTTP sürümü
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=snapshot HTTP/1.1 (İngilizce)

Öykünmüş depolama hizmeti URI'si

Emülasyon edilmiş depolama hizmetine karşı bir talep yaptığınızda, emülatör ana bilgisayar adını ve Azure Blob Depolama portunu , ardından emülasyon edilen hesap adını olarak 127.0.0.1:10000belirtin:

PUT yöntemi istek URI'si HTTP sürümü
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=snapshot HTTP/1.1 (İngilizce)

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

URI parametreleri

Aşağıdaki ek parametreyi istek URI'de belirtebilirsiniz.

Parametre Description
timeout Optional. timeout parametresi saniye cinsinden ifade edilir. Daha fazla bilgi için bkz: Blob Depolama işlemleri için zaman aşımlarını ayarlama.

İstek başlıkları

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

İstek başlığı Description
Authorization Gerekli. Yetkilendirme düzenini, hesap adını ve imzayı belirtir. Daha fazla bilgi için bkz. azure depolamaistekleri yetkilendirme .
Date veya x-ms-date Gerekli. İstek için Eşgüdümlü Evrensel Saati (UTC) belirtir. Daha fazla bilgi için bkz. azure depolamaistekleri yetkilendirme .
x-ms-version Tüm yetkili istekler için gereklidir. 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-meta-name:value Optional. Blob'a bağlı kullanıcı tarafından tanımlanan, isim-değer çiftini belirtir. Herhangi bir isim-değer çifti belirtmezseniz, işlem ana blob meta verilerini anlık görüntüye kopyalar. Bir veya daha fazla isim-değer çifti belirtirseniz, anlık görüntü belirtilen meta verilerle oluşturulur ve meta veri temel blob'tan kopyalanmaz.

2009-09-19 sürümünden itibaren, meta veri adlarının C# tanımlayıcıları için adlandırma kurallarına uyması gerektiğini unutmayın. Daha fazla bilgi için Adlandırma ve referans konteynerleri, bloblar ve meta verileri bölümine bakınız.
If-Modified-Since Optional. Bir DateTime değer. Bu koşullu başlığı, yalnızca belirtilen tarih/saatten beri değiştirilmişse blobun anlık görüntüsünü almak için belirtin. Eğer temel blob değiştirilmediyse, Blob Storage durum kodu 412 (Ön Koşul Başarısız Oldu) döner.
If-Unmodified-Since Optional. Bir DateTime değer. Bu koşullu başlığı, yalnızca blobun belirtilen tarih/saatten beri değiştirilmemişse anlık görüntüsü alması için belirtin. Eğer temel blob değiştirildiyse, Blob Storage durum kodu 412'yi (Ön Koşul Başarısız Oldu) döner.
If-Match Optional. Bir ETag değer. Bu koşullu başlık için, yalnızca değeri ETag belirtilen değerle eşleşiyorsa blobun anlık görüntüsünü alacak bir değer belirtinETag. Değerler eşleşmezse, Blob Storage durum kodu 412'yi (Ön Koşul Başarısız Oldu) döndürür.
If-None-Match Optional. Bir ETag değer.

ETag Bu koşullu başlık için blobun bir anlık görüntüsü alacak bir değer belirtin, ancak değeri ETag belirtilen değerle eşleşmiyorsa. Değerler aynıysa Blob Depolama 412 (Önkoşul Başarısız) durum kodunu döndürür.
x-ms-encryption-scope Optional. İstek içeriğini şifrelemek için kullanılacak şifreleme kapsamını gösterir. Bu üst bilgi 2019-02-02 ve sonraki sürümlerde desteklenir.
x-ms-lease-id:<ID> Optional. Bu başlığı belirtirseniz, işlem yalnızca aşağıdaki iki koşul da karşılanırsa yapılır:

- Blob'un kira sözleşmesi şu anda geçerlidir.
- İstekte belirtilen kira kimliği blob'un kimliğiyle eşleşir.

Bu başlık belirtilirse ve bu koşullardan biri karşılanmazsa, talep başarısız olur. İşlem Snapshot Blob , durum kodu 412 (Ön Koşul Başarısız Oldu) ile başarısız olur.
x-ms-client-request-id Optional. Günlük kaydı yapılandırıldığında günlüklere kaydedilen 1 kibibayt (KiB) karakter sınırına sahip 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.

Bu işlem ayrıca, belirli bir koşul sağlandığında işlemi çalıştırmak için koşullu başlıkların kullanılmasını destekler. Daha fazla bilgi için bkz: Blob Depolama işlemleri için koşullu üst bilgileri belirtme.

İstek üst bilgileri (müşteri tarafından sağlanan şifreleme anahtarları)

2019-02-02 sürümünden başlayarak, bir blobu müşteri tarafından sağlanan bir anahtarla şifreleme isteğinde aşağıdaki üst bilgileri belirtebilirsiniz. Müşteri tarafından sağlanan anahtarla (ve ilgili üst bilgi kümesiyle) şifreleme isteğe bağlıdır. Bir blob daha önce müşteri tarafından sağlanan bir anahtarla şifrelenmişse, okuma işleminin başarılı tamamlanması için bu başlıklar talebe dahil edilmelidir.

İstek başlığı Description
x-ms-encryption-key Gerekli. Base64 kodlu AES-256 şifreleme anahtarı.
x-ms-encryption-key-sha256 Gerekli. Şifreleme anahtarının Base64 ile kodlanmış SHA256 karması.
x-ms-encryption-algorithm: AES256 Gerekli. Şifreleme için kullanılacak algoritmayı belirtir. Bu başlığın değeri AES256 olmalıdır.

İstek içeriği

Yok.

Yanıt

Yanıt bir HTTP durum kodu ve bir dizi yanıt üst bilgisi içerir.

Durum kodu

Başarılı bir işlem 201 (Oluşturuldu) durum kodunu döndürür. Durum kodları hakkında bilgi için bkz: Durum ve hata kodları.

Yanıt başlıkları

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

Sözdizimi Description
x-ms-snapshot: <DateTime> Anlık görüntüyü benzersiz şekilde tanımlayan bir DateTime değer döndürür. Bu başlığın değeri, snapshot versiyonunu gösterir ve sonraki isteklerde anlık görüntüye erişmek için bunu kullanabilirsiniz. Bu değerin opak olduğunu unutmayın.
ETag Anlık fotoğrafın fotoğrafı ETag . Talep versiyonu 2011-08-18 veya daha sonraysa, ETag değer tırnak içinde olacaktır. Bir anlık fotoğrafa yazılamadığını, bu yüzden belirli bir anlık fotoğrafın fotoğrafı ETag asla değişmediğini unutmayın. Ancak ETag , istekle birlikte yeni meta veri sağlanırsa Snaphot Blob , anlık görüntünün anlık görüntüsü, temel blob'unkinden farklı olur. Eğer istekle birlikte meta veri belirtilmemişse, anlık görüntünün verisi, ETag anlık fotoğrafın alındığı ana blob'un verisi ile aynı olacaktır.
Last-Modified Snapshot'un son değiştirilmiş zamanı. Daha fazla bilgi için, başlıklarda tarih-saat değerlerinin temsili bölümüne bakınız.

Bir anlık fotoğrafa yazılamadığını, bu yüzden belirli bir anlık görüntünün son değiştirilmiş zamanı asla değişmez. Ancak, istekle birlikte yeni meta veri sağlanırsa Snaphot Blob , snapshot'un son değiştirilmiş zamanı, ana blob'un zamanından farklı olur. Eğer istekle birlikte meta veri belirtilmemişse, snapshot'un son değiştirilen zamanı, snapshot'un alındığı ana blob'un zamanıyla aynıdır.
x-ms-request-id Yapılan talebi benzersiz şekilde tanımlar ve isteğin sorun gidermesi için kullanılabilir. Daha fazla bilgi için API işlemlerinde sorun giderme başlıklı makaleyi inceleyin.
x-ms-version İsteğin çalıştırılması için kullanılan Blob Storage sürümünü gösterir. Bu üst bilgi, 2009-09-19 ve sonraki sürümlere karşı yapılan istekler için döndürülür.
Date Yanıtın başlatıldığı saati gösteren UTC tarih/saat değeri. Hizmet bu değeri oluşturur.
x-ms-request-server-encrypted: true/false Sürüm 2019-02-02 veya üzeri. Bu başlığın değeri, eğer talebin içeriği belirtilen algoritma kullanılarak başarıyla şifrelenmişse, olarak ayarlanır true. Aksi takdirde, değeri falseolarak ayarlanır.
x-ms-encryption-key-sha256 Sürüm 2019-02-02 veya üzeri. İstek müşteri tarafından sağlanan bir anahtar kullanılarak şifreleme için geri gönderilir. İstemci, verilen anahtarı kullanarak isteğin içeriğinin başarıyla şifrelendiğinden emin olabilir.
x-ms-encryption-scope Sürüm 2019-02-02 veya üzeri. İstek şifreleme kapsamı kullanıyorsa geri gönderilir. İstemci, isteğin içeriğinin şifreleme kapsamını kullanarak başarıyla şifrelendiğinden emin olabilir.
x-ms-version-id: <DateTime> 2019-12-12 ve sonrası sürümler. Blobu benzersiz olarak tanımlayan opak bir DateTime değeri döndürür. Bu başlığın değeri, blobun sürümünü gösterir ve bloba erişmek için sonraki isteklerde bunu kullanabilirsiniz.
x-ms-client-request-id İsteklerde ve ilgili yanıtlarda sorun 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 karakteridir. İstekte x-ms-client-request-id üst bilgisi yoksa yanıtta bulunmaz.

Yanıtın içeriği

Yok.

Authorization

Azure Depolama'da herhangi bir veri erişim işlemi çağrılırken yetkilendirme gereklidir. aşağıda açıklandığı gibi Snapshot Blob işlemini yetkileyebilirsiniz.

Ö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 bir güvenlik sorumlusuna izin vekleyebilirsiniz. Güvenlik sorumlusu bir kullanıcı, grup, uygulama hizmet sorumlusu veya Azure yönetilen kimliği olabilir. OAuth 2.0 belirtecini döndürmek için güvenlik sorumlusunun kimliği Microsoft Entra Id tarafından doğrulanır. Daha sonra belirteç, Blob hizmetine 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 .

Permissions

Aşağıda bir Microsoft Entra kullanıcısı, grubu, yönetilen kimliği veya hizmet sorumlusunun Snapshot Blob işlemini çağırması için gereken RBAC eylemi ve bu eylemi içeren en az ayrıcalıklı yerleşik Azure RBAC rolü verilmiştir:

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

Snapshot'lar, blobların yalnızca okunabilir versiyonlarını sunar. Anlık görüntüyü oluşturduktan sonra okuyabilir, kopyalayabilir veya silebilirsiniz, ancak değiştiremezsiniz.

Bir anlık görüntü, blob verilerini yedeklemek için pratik bir yol sunar. Bir anlık görüntü kullanarak bir blob'u Copy Blob çağırarak bir blob'u önceki sürüme geri döndürebilirsiniz; böylece bir ana blob'u anlık görüntüsünün üzerine yazabilirsiniz.

Bir anlık görüntü oluşturduğunuzda, Blob Storage anlık görüntüyü temel blob'una göre benzersiz şekilde tanımlayan bir DateTime değer döndürür. Bu değeri anlık görüntüde daha fazla işlem yapmak için kullanabilirsiniz. Bu DateTime değeri opak olarak değerlendirmelisiniz.

Değer, DateTime URI'deki anlık görüntüyü tanımlar. Örneğin, bir temel blob ve onun anlık görüntülerinin URI'leri aşağıdaki gibidir:

  • Temel blob: http://myaccount.blob.core.windows.net/mycontainer/myblob

  • Anlık Görüntü: http://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime>

Her operasyonu Snapshot Blob çağırdığınızda, benzersiz DateTime bir değere sahip yeni bir anlık görüntü oluşturuyorsunuz. Bir blob, her türlü anlık fotoğrafı destekleyebilir. Mevcut anlık görüntüler asla üzerine yazılmaz. Delete Blob'u çağırarak ve başlığı x-ms-include-snapshots uygun değere ayarlayarak bunları açıkça siliyorsunuz.

Başarılı bir çağrı Snapshot Blob yanıt DateTime başlığında bir x-ms-snapshot değer döndürür. Bu değeri belirli bir anlık versiyonda okuma, silme veya kopyalama işlemlerini gerçekleştirmek için kullanabilirsiniz DateTime . Anılık görüntüsü için geçerli olan herhangi bir Blob Depolama işlemini blob adının ardından belirterek ?snapshot=<DateTime> çağırabilirsiniz.

Bir lekenin anlık görüntüsü oluşturduğunuzda, aşağıdaki sistem özellikleri aynı değerlerle anlık görüntüye kopyalanır:

  • Content-Type

  • Content-Encoding

  • Content-Language

  • Content-Length

  • Cache-Control

  • Content-MD5

  • x-ms-blob-sequence-number (sadece sayfa lekeleri için)

  • x-ms-blob-committed-block-count (sadece ekle bloblar için)

  • x-ms-copy-id (2012-02-12 ve sonraki sürüm)

  • x-ms-copy-status (2012-02-12 ve sonraki sürüm)

  • x-ms-copy-source (2012-02-12 ve sonraki sürüm)

  • x-ms-copy-progress (2012-02-12 ve sonraki sürüm)

  • x-ms-copy-completion-time (2012-02-12 ve sonraki sürüm)

  • x-ms-copy-status-description (2012-02-12 ve sonraki sürüm)

Eğer blob blok blobsa, ana blobun belirlenmiş blok listesi de snapshot'a kopyalanır. Belirlenmemiş bloklar kopyalanmaz.

Snapshot blob, snapshot çekildiği anki temel blobla her zaman aynı boyuttadır. Snapshot blob'un başlık değeri Content-Length , temel blob'la aynı olacaktır.

Anlık görüntü için bir veya daha fazla yeni meta veri değerini belirtebilirsiniz, x-ms-meta-name:value isteğin başlığını belirterek. Bu başlık belirtilmemişse, ana bulgu ile ilişkili meta veriler anlık görüntüye kopyalanır.

Temel blobla ilişkili tüm etiketler anlık görüntüye kopyalanır. Snapshot için yeni etiket değerleri ayarlamak mümkün değil.

Blob'un anlık görüntüsünü almak isteğinde koşullu başlıklar belirtebilirsiniz, ancak bir koşul karşılanırsa. Belirtilen koşul karşılanmazsa, anlık görüntü oluşturulmaz. Hizmet, 412 (Ön Koşul Başarısız) durum kodunu ve karşılanmamış koşulla ilgili ek hata bilgilerini döndürür.

Eğer ana blobun aktif bir kiralaması varsa, aşağıdaki koşullardan biri talep için geçerli olduğu sürece blobun anlık görüntüsünü alabilirsiniz:

  • Koşullu x-ms-lease-id başlık belirtilir ve temel blob için aktif kiralama kimliği isteğe dahil edilir. Bu koşul, anlık görüntünün yalnızca kira aktifse ve belirtilen kira kimliği blobla eşleşiyorsa oluşturulmasını belirtir.

  • Başlık x-ms-lease-id hiç belirtilmemiştir, bu durumda özel yazma kirası göz ardı edilir.

Temel blobla ilişkilendirilen bir kiralama anlık fotoğrafa kopyalanmadığını unutmayın. Snapshotlar kiralanamaz.

Kopya Blob işlemini kullanarak bir temel blob'u kopyaladığınızda, ana blobun herhangi bir anlık görüntüleri hedef bloba kopyalanmaz. Bir hedef blob bir kopyayla üzerine yazıldığında, hedef blob'a ait tüm anlık görüntüler onun adı altında korunur.

Bir snapshot blob'u temel blob'unun üzerine kopyalayarak önceki bir blob sürümünü geri kazanabilirsiniz. Anlık görüntü kalır, ancak temel blob, hem okunabilir hem de yazılabilen bir kopya üzerine yazılır.

Uyarı

Bir anlık görüntüyü tanıtmak, depolama kaynakları için ek bir ücret talep etmez. Bunun nedeni, blokların veya sayfaların snapshot ile temel blob arasında paylaşılmasıdır.

Bir anlık görüntüde bir blob seviyesi ayarlayabilirsiniz, REST sürüm 2019-12-12 ile başlayarak. Bir seviye kök blob'a ayarlanmışsa, tüm anlık görüntüler taban blob'dan seviyeyi miras alır. Arşivlenmiş bir lekeyin fotoğrafını çekmek başarısız olur. Bir nesnede katmanı açıkça ayarlamak, nesnenin tam boyutu için faturalanmasına yol açar. Seviye setine sahip bir blobun anlık görüntüsü almak, kök blobun ve snapshot'un tam kopya faturalanmasını sağlar. Blok blob seviyesi katmanlama hakkında ayrıntılı bilgi için Blob depolama katmanları sayfasına bakınız. Snapshot'lar hakkında detaylı bilgi için Blob Snapshots'a bakınız.

Azure Premium Depolama hesapları ile standart depolama hesapları arasında anlık görüntüler açısından birkaç fark vardır:

  • Premium Depolama hesabındaki sayfa blob'u başına snapshot sayısı 100 ile sınırlıdır. Bu sınır aşılarsa, Snapshot Blob işlem hata kodu 409'u (Snapshot Count Exceeded) döndürür.

  • Premium Depolama hesabında bir sayfa blob'un anlık görüntüsünü her on dakikada bir alabilirsiniz. Bu hız aşılırsa, Snapshot Blob işlem hata kodu 409 (Anlık Görüntü İşlem Hızı Aşıldı) döner.

  • Get Blob kullanarak Premium Depolama hesabındaki bir sayfa blobunun anlık görüntüsünü okuyamazsınız. Bu durumda, hizmet hata kodu 400 (Geçersiz İşlem) döndürür. Ancak, Get Blob Properties ve Get Blob Metadata (Get Blob Metadata) komutlarını bir anlık görüntüye karşı çağırabilirsiniz.

    Bir anlık fotoğrafı okumak için, Kopyala İşlemini kullanarak hesaptaki başka bir sayfa blobuna bir anlık görüntüyü kopyalayabilirsiniz. Kopyalama işleminin hedef blobunda mevcut anlık görüntüler olmamalıdır. Eğer hedef blob'un anlık görüntüleri varsa, Copy Blob hata kodu 409 (SnapshotsPresent) döner.

Daha fazla bilgi için bkz. Using Blob Storage operations with Azure Premium Storage.

Sürüm etkinleştirildiğinde, bir blobun anlık görüntüsü oluşturmak yeni bir sürüm oluşturur ve temel blobun önceki sürümünü kaydeder. Parametre, x-ms-version-id blobun yeni versiyonu için opak DateTime bir değer döndürür.

Billing

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 ücretlendirilma şeklini etkiler. Ö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 Snapshot Blob istekleri için faturalama kategorisi gösterilmektedir:

Operation Depolama hesabı türü Faturalama kategorisi
Anlık Görüntü Blobu Premium blok blobu
Standart Genel Amaçlı Versiyon 2
Standart Genel Amaçlı v1
Okuma işlemleri

Belirtilen faturalama kategorisinin fiyatlandırması hakkında bilgi edinmek için bkz.

Ayrıca bakınız

Blobun anlık görüntüsünü oluşturma

Azure Depolama isteklerini yetkilendirme

Durum ve hata kodları

blob depolama hata kodları