Blob'u Yerleştir

İşlem Put Blob yeni bir blok, sayfa veya ek blob oluşturur veya mevcut bir blok blobun içeriğini günceller. İşlem, Put Blob aynı isimle sahip mevcut bir blobun tüm içeriğini üzerine yazar.

Mevcut bir blok blobunu güncellediğinizde, blobdaki mevcut meta verileri üzerine yazıyorsunuz. Mevcut blobun içeriği, yeni blobun içeriğiyle üzerine yazılır. Kısmi güncellemeler desteklenmiyor.Put Blob Bir blok blobunun içeriğinin kısmi güncellemesini gerçekleştirmek için Put Block List işlemini kullanın.

Sadece 2015-02-21 ve sonraki sürümlerde bir ek blob oluşturabilirsiniz.

A'ya Put Blob bir sayfa blobu veya ek blob oluşturmak için yapılan bir çağrı sadece blobu başlatır. Eğer blob zaten varsa, içeriği temizlenir. Bir sayfa blobuna içerik eklemek için Put Page işlemini çağırın. Bir ekle blob'a içerik eklemek için Ekle Blok işlemini çağırın.

İstek

Put Blob isteğini aşağıdaki gibi oluşturabilirsiniz. HTTPS kullanmanızı öneririz. Hesabımı depolama hesabınızın adıyla değiştirin:

PUT yöntem isteği URI HTTP sürümü
https://myaccount.blob.core.windows.net/mycontainer/myblob HTTP/1.1

Öykünmüş depolama hizmeti isteği

Emülasyon edilmiş depolama hizmetine karşı bir talep yaparken, emülatör ana bilgisayar adını ve Blob servis portunu , ardından emüle edilen depolama hesabı adını belirtin 127.0.0.1:10000:

PUT yöntem isteği URI HTTP sürümü
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob HTTP/1.1

Depolama emülatörü yalnızca 2 gibibayta (GiB) kadar blob boyutlarını destekler.

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

URI parametreleri

Talep URI'sinde aşağıdaki ek parametreler belirtilebilir:

Parametre Description
timeout Optional. Parametre timeout saniye cinsinden ifade edilir. Daha fazla bilgi için bkz. Blob servis işlemleri için zaman aşımını ayarlayın.

Talep başlıkları (tüm blob türleri)

Tüm blob türleri için gerekli ve isteğe bağlı istek başlıkları aşağıdaki tabloda açıklanmıştı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 talepler 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.
Content-Length Gerekli. İsteğin süresi.

Bir sayfa blobu veya ek blob için, bu başlığın değeri sıfıra ayarlanmalıdır, çünkü Put Blob sadece blob'u başlatmak için kullanılır. Mevcut bir sayfa blobuna içerik yazmak için Put Page'i çağırın. Bir ekleyiciye içerik yazmak için Append Block çağırın.
Content-Type Optional. Blobun MIME içerik türü. Varsayılan tür: application/octet-stream.
Content-Encoding Optional. Bloba hangi içerik kodlamalarının uygulandığını belirtir. Bu değer, blob kaynağında Get Blob işlemi gerçekleştirildiğinde istemciye geri döner. Bu değer dönerken, istemci blob içeriğini çözmek için kullanabilir.
Content-Language Optional. Bu kaynağın kullandığı doğal dilleri belirtir.
Content-MD5 Optional. Blob içeriğinin MD5 hash'i. Bu karma, aktarım sırasında blobun bütünlüğünü doğrulamak için kullanılır. Bu başlık belirtildiğinde, depolama hizmeti gelen hash'i gönderilenle karşılaştırır. İki karma eşleşmezse, işlem 400 (Hatalı İstek) hata koduyla başarısız olur.

Başlık 2012-02-12 veya daha sonraki sürümde çıkarıldığında, Blob Storage bir MD5 hash oluşturur.

Get Blob, Get Blob Properties ve List Blobs sonuçları MD5 hash'i içerir.
x-ms-content-crc64 Optional. Blob içeriğinin CRC64 hash'i. Bu karma, aktarım sırasında blobun bütünlüğünü doğrulamak için kullanılır. Bu başlık belirtildiğinde, depolama hizmeti gelen hash'i gönderilenle karşılaştırır. İki karma eşleşmezse, işlem 400 (Hatalı İstek) hata koduyla başarısız olur. Bu başlık, 02-02-2019 ve sonraki sürümlerde desteklenmektedir.

Eğer hem Content-MD5 hem de x-ms-content-crc64 başlıkları varsa, talep 400 (Kötü İstek) ile başarısız olur.
Cache-Control Optional. Blob Storage bu değeri saklar ama kullanmaz veya değiştirmez.
x-ms-blob-content-type Optional. Blobun içerik türünü ayarlayın.
x-ms-blob-content-encoding Optional. Blobun içerik kodlamasını ayarlayın.
x-ms-blob-content-language Optional. Blobun içerik dilini ayarlayın.
x-ms-blob-content-md5 Optional. Blobun MD5 hash'ini ayarla. BlockBlob için, bu başlık, taşınım sırasında blobun bütünlüğü doğrulanırken önceliklidir Content-MD5 . PageBlob ve AppendBlob için, bu başlık doğrudan blobun MD5 hash'ini ayar.
x-ms-blob-cache-control Optional. Blobun önbellek kontrolünü ayarlar.
x-ms-blob-type: <BlockBlob ¦ PageBlob ¦ AppendBlob> Gerekli. Oluşturulacak blob türünü belirtir: blok blob, sayfa blobu veya ekleyen blob. Ek blob oluşturma desteği yalnızca 2015-02-21 ve sonraki sürümlerde mevcuttur.
x-ms-meta-name:value Optional. Blob ile meta veri olarak ilişkili ad-değer çiftleri.

Not: Sürüm 2009-09-19 itibarıyla meta veri adlarının C# tanımlayıcıları için adlandırma kurallarına uyması gerekir.
x-ms-encryption-scope Optional. İstek içeriğini şifrelemek için kullanılacak şifreleme kapsamını gösterir. Bu başlık, 2019-02-02 ve sonraki sürümlerde desteklenmektedir.
x-ms-encryption-context Optional. Varsayılan "Boş"tur. Değer ayarlanırsa, blob sistem meta verileri ayarlanır. Maksimum uzunluk-1024. Yalnızca hesap için Hiyerarşik Ad Alanı etkinleştirildiğinde geçerlidir. Bu başlık, 2021-08-06 ve sonraki sürümlerde desteklenmektedir.
x-ms-tags Optional. Verilen sorgu dizesi kodlanmış etiketleri blob üzerinde ayarlar. Ek bilgi için Açıklamalara bakınız. 2019-12-12 ve sonrasında destekleniyor.
x-ms-lease-id:<ID> Blob etkin bir kiraya sahipse gereklidir. Bu işlemi etkin kirası olan bir blobda gerçekleştirmek için bu üst bilgi için geçerli kira kimliğini belirtin.
x-ms-blob-content-disposition Optional. Blobun Content-Disposition başlığını ayarlıyor. 2013-08-15 ve sonraki sürümler için mevcuttur.

Yanıt başlığı alanı Content-Disposition , yanıt yükünün nasıl işleneceğine dair ek bilgi verir ve bunu ek meta veri eklemek için kullanabilirsin. Örneğin, başlık ayarlıysa attachment, kullanıcı ajanının cevabı göstermemesi gerektiğini gösterir. Bunun yerine, belirtilen blob adı dışında bir dosya adıyla Kaydet Gibi bir diyalog göstermelidir.

Get Blob ve Get Blob Properties işlemlerinden gelen yanıt başlığı content-disposition içerir.
Origin Optional. İsteğin hangi kaynaktan verildiğini belirtir. Bu başlığın varlığı, yanıtta çapraz kaynak paylaşımı (CORS) başlıklarına yol açar. Daha fazla bilgi için Azure Depolama hizmetleri için CORS desteğine bakınız.
x-ms-client-request-id Optional. Loging yapılandırıldığında analitik loglarında kaydedilen 1 kibibayt (KiB) karakter sınırı olan istemci tarafından oluşturulan, opak bir değer sağlar. İstemci tarafı etkinliklerini sunucunun aldığı isteklerle ilişkilendirmek için bu üst bilgiyi kullanmanızı kesinlikle öneririz. Daha fazla bilgi için, Depolama analitik loglama hakkında bölümüne bakınız.
x-ms-access-tier Optional. Blob'a belirlenecek seviye. Sadece 2017-04-17 ve sonrasında sürümlü Premium Depolama hesabındaki sayfa blobları için. Sayfa blob-destekli katmanların tam listesi için bkz. Yüksek performanslı premium depolama ve sanal makineler (VM'ler) için yönetilen diskler. Blok bloblar için, blob depolama veya genel amaçlı v2 hesaplarında yalnızca 2018-11-09 ve sonrası sürümlerle desteklenmektedir. Geçerli değerler , , HotCoolColdve Smartdeğerleridir.Archive
Not:Cold katmanı sürüm 2021-12-02 ve üzeri için desteklenir. Smart Tier, 2026-02-06 ve sonrasında olan sürümler için desteklenmekte ve şu anda halka açık önizleme aşamasında
Blok blob katmanlama hakkında ayrıntılı bilgi için Blob depolama katmanlarına bakınız.
x-ms-immutability-policy-until-date 2020-06-12 ve sonrası sürümler. Lebe üzerinde ayarlanacak saklama tarihini belirtir. Bu, blobun değiştirilmekten veya silinmekten korunabileceği tarihtir. Formatı RFC1123 takip eder.
x-ms-immutability-policy-mode 2020-06-12 ve sonrası sürümler. Blob'a ayarlanacak değişmezlik politikası modunu belirler. Geçerli değerler: unlocked ve locked. Ile unlocked, kullanıcılar saklama tarihini artırarak veya azaltarak politikayı değiştirebilirler. Ile lockedbu eylemler yasaktır.
x-ms-legal-hold 2020-06-12 ve sonrası sürümler. Blob üzerinde ayarlanacak yasal tutma noktasını belirler. Geçerli değerler: true ve false.
x-ms-expiry-option Optional. 2023-08-03 ve sonrası sürümler. İstek için son kullanma tarihi seçeneğini belirtir. Daha fazla bilgi için ExvoryOption'a bakınız. Bu başlık, hiyerarşik isim alanı etkin olan hesaplar için geçerlidir.
x-ms-expiry-time Optional. 2023-08-03 ve sonrası sürümler. Blobun süresi dolacağı zamanı belirtir. Son kullanma tarihi formatı ise 'ye göre x-ms-expiry-optiondeğişir. Daha fazla bilgi için ExvoryOption'a bakınız. Bu başlık, hiyerarşik isim alanı etkin olan hesaplar için geçerlidir.

Bu işlem ayrıca belirli bir koşul sağlandığında blob'u yazmak için koşullu başlıkların kullanılmasını destekler. Daha fazla bilgi için, Blob Depolama işlemleri için koşullu başlıklar belirt bkz.

Talep başlıkları (sadece sayfa blobları)

Yalnızca sayfa bloblarındaki işlemler için geçerli olan istek başlıkları aşağıdaki tabloda açıklanmıştır:

İstek başlığı Description
x-ms-blob-content-length: bytes Sayfa blobları için gereklidir. Bu başlık, sayfa blobunun maksimum boyutunu belirtir, en fazla 8 tebibayta (TiB). Sayfa blob boyutu 512 baytlık bir sınırla hizalanmalıdır.

Bu başlık bir blok blob veya ek blob için belirtiliyorsa, Blob Storage durum kodu 400 (Kötü İstek) döner.
x-ms-blob-sequence-number: <num> Optional. Sadece sayfa blobları için ayarlandı. Sıra numarası, istekleri izlemek için kullanabileceğiniz kullanıcı tarafından denetlenen bir değerdir. Dizi numarasının değeri 0'dan 2^63 - 1'e kadar olmalıdır. Varsayılan değer 0'dır.
x-ms-access-tier 2017-04-17 ve sonrası sürüm. Yalnızca premium depolama hesabındaki sayfa blobları için. Blob'a ayarlanacak seviyeyi belirtir. Desteklenen katmanların tam listesi için yüksek performanslı premium depolama ve yönetilen diskler için VM'lere bakınız.
x-ms-client-request-id Bu üst bilgi, isteklerde ve ilgili yanıtlarda sorun gidermek için kullanılabilir. bu üst bilginin değeri, istekte mevcutsa ve değer 1.024'ten fazla görünür ASCII karakteri içermiyorsa x-ms-client-request-id üst bilgisinin değerine eşittir. İstekte x-ms-client-request-id üst bilgisi yoksa yanıtta bulunmaz.

İstek başlıkları (müşteri tarafından sağlanan şifreleme anahtarları)

2019-02-02 sürümünden itibaren, müşteri tarafından sağlanan bir anahtarla bir blob'u şifreleme talebinde aşağıdaki başlıklar belirtilebilir. Müşteri tarafından sağlanan anahtarla (ve ilgili başlık setiyle şifreleme) isteğe bağlıdır.

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

Başlık isteği (yapılandırılmış gövde, sadece blok blob)

2025-01-05 sürümü itibarıyla, yapılandırılmış gövde formatından yararlanmak için talebe göre aşağıdaki başlıklar belirtilebilir. Bunlar sadece blok lekeleri için geçerlidir.

İstek başlığı Description
Content-Length Gerekli. Kodlanmış isteğin uzunluğu olmalı (sadece blob içeriğinin uzunluğu değil).

Başlığın değeri, kodlanmış isteğin beklenen uzunluğuyla eşleşmiyorsa, işlem hata kodu 400 (Kötü İstek) ile başarısız olur.
x-ms-structured-body Gerekli. Mesaj formatı yapılandırılmışsa dahil edilmelidir. Bu başlığın değeri, mesaj şeması versiyonu ve özelliklerini içerir.

Şu anda desteklenen XSM/1.0; properties=crc64tek değer , bu da isteğin kodlanmış mesajda crc64 kontrol toplamı segmentleri kullandığını gösterir. Değer bu değerle eşleşmezse, işlem hata kodu 400 (Kötü İstek) ile başarısız olur. Talep ayrıca istekte sağlanan içerik, belirli bir segment için sağlanan kontrol toplamıyla eşleşmiyorsa da başarısız olur.
x-ms-structured-content-length Gerekli. Mesaj formatı yapılandırılmışsa dahil edilmelidir. Bu başlığın değeri, blob içeriğinin uzunluğudur ve mesaj kodlaması nedeniyle her zaman başlık değerinden daha küçük Content-Length olur.

Başlığın değeri, istekte verilen blob içeriğinin uzunluğuyla eşleşmiyorsa, işlem hata kodu 400 (Kötü İstek) ile başarısız olur.

İstek içeriği

Bir blok blob için, istek gövdesi blobun içeriğini içerir.

Bir sayfa blobu veya ek blob için istek gövdesi boştur.

Numune isteği

Aşağıdaki örnek, bir blok blob oluşturma talebinin gösterildiğidir:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblockblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-content-disposition: attachment; filename="fname.ext"  
x-ms-blob-type: BlockBlob  
x-ms-meta-m1: v1  
x-ms-meta-m2: v2  
x-ms-expiry-option: RelativeToNow
x-ms-expiry-time: 30000
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Content-Length: 11  
  
Request Body:  
hello world

Bu örnek istek, bir sayfa blobu oluşturur ve maksimum boyutunu 1.024 bayt olarak belirtir. Bir sayfa blobuna içerik eklemek için Put Page'i çağırmalısınız:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/mypageblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-type: PageBlob  
x-ms-blob-content-length: 1024  
x-ms-blob-sequence-number: 0  
Authorization: SharedKey   
Origin: http://contoso.com  
Vary: Origin  
myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Content-Length: 0  

Bu örnek istek, bir ekleyici blob oluşturur. Ekleyici bloba içerik eklemek için Ekle Blok çağırmanız gerekir:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myappendblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-type: AppendBlob  
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Origin: http://contoso.com  
Vary: Origin  
Content-Length: 0  

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 daha fazla 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 başlıkları da içerebilir. Tüm standart başlıklar HTTP/1.1 protokol belirtimine uygundur.

Yanıt üst bilgisi Description
ETag İstemcinin istek başlığını kullanarak koşullu PUT işlemler If-Match gerçekleştirebileceği bir değer içerir. İstek sürümü 2011-08-18 veya üzeriyse, ETag değeri tırnak işaretleri içine alınır.
Last-Modified Blobun en son değiştirildiği tarih/saat. Tarih biçimi RFC 1123'e uygundur. Daha fazla bilgi için bkz. Tarih/saat değerlerini başlıklarda temsil et.

Blob'taki herhangi bir yazma işlemi (blobun meta veri veya özelliklerindeki güncellemeler dahil) blobun son değiştirilen zamanını değiştirir.
Content-MD5 İstemcinin mesaj içeriğinin bütünlüğünü kontrol edebilmesi için bir blok blob için geri döndü. Geri Content-MD5 dönen değer Blob Storage tarafından hesaplanır. 2012-02-12 ve sonrasında olan sürümlerde, bu başlık istek Content-MD5 başlık içermediğinde x-ms-blob-content-md5 bile geri döner.
x-ms-content-crc64 İstemcinin mesaj içeriğinin bütünlüğünü kontrol edebilmesi için blok blobu için geri döndü. Geri x-ms-content-crc64 dönen değer Blob Storage tarafından hesaplanır. Bu başlık her zaman 2019-02-02 sürümünden itibaren döndürülür.
x-ms-request-id Yapılan isteği benzersiz olarak tanımlar ve isteği gidermek için kullanabilirsiniz. Daha fazla bilgi için bkz. API işlem sorunlarını giderme.
x-ms-version Talebi çalıştırmak için kullanılan Blob Storage sürümünü gösterir. 2009-09-19 ve sonrasına yönelik talepler için iade edildi.
Date Hizmet tarafından oluşturulan ve yanıtın başlatıldığı saati gösteren UTC tarih/saat değeri.
Access-Control-Allow-Origin İstek başlık Origin içeriyorsa ve CORS eşleşme kuralı ile etkinleştirilmişse geri gönderilir. Bu başlık, eşleşme varsa orijin isteği başlığının değerini döndürür.
Access-Control-Expose-Headers İstek başlık Origin içeriyorsa ve CORS eşleşme kuralı ile etkinleştirilmişse geri gönderilir. İstemci veya isteği veren kişiye sunulacak yanıt başlıklarının listesini döndürür.
Access-Control-Allow-Credentials İstek başlık Origin içeriyorsa ve tüm orijinlere izin vermeyen bir eşleşme kuralı ile CORS etkinleştirilmişse geri gönderilir. Bu başlık doğru olarak ayarlanmıştır.
x-ms-request-server-encrypted: true/false 2015-12-11 ve sonraki sürümler. Bu başlığın true değeri, isteğin içeriği belirtilen algoritma kullanılarak başarıyla şifrelenmişse ayarlanır. Aksi takdirde, değer .false
x-ms-encryption-key-sha256 2019-02-02 ve sonrası sürümler. İstek, istemcinin sağlanan anahtarı kullanarak işlemin içeriğinin başarılı şekilde şifrelendiğinden emin olabilmek için müşteri tarafından sağlanan anahtar kullanılıyorsa geri döner.
x-ms-encryption-scope 2019-02-02 ve sonrası sürümler. İstemci şifreleme kapsamı kullanılarak istemcinin içeriğinin şifreleme kapsamı kullanılarak başarılı şekilde şifrelendiğinden emin olabilmek için geri döner.
x-ms-version-id: <DateTime> 2019-12-12 ve sonrası sürümler. Bu başlık, blob'u benzersiz şekilde tanımlayan opak DateTime bir değer döndürür. Bu başlığın değeri, blobun sürümünü gösterir ve bloba erişim için sonraki isteklerde kullanılabilir.
x-ms-structured-body Eğer talep yapılandırılmış bir vücut talebi olarak işleniyorsa geri gönderilir. Bu başlığın değeri, talebe gönderilen değere eşittir ve şu anda bu değer olarak olmalıdır XSM/1.0; properties=crc64.

Yanıtın içeriği

Yok.

Örnek yanıt

Response Status:  
HTTP/1.1 201 Created  
  
Response Headers:  
Transfer-Encoding: chunked  
Content-MD5: sQqNsWTgdUEFt6mb5y4/5Q==  
x-ms-content-crc64: 77uWZTolTHU
Date: <date>  
ETag: "0x8CB171BA9E94B0B"  
Last-Modified: <date>  
Access-Control-Allow-Origin: http://contoso.com  
Access-Control-Expose-Headers: Content-MD5  
Access-Control-Allow-Credentials: True  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  
x-ms-version-id: <DateTime>  

Authorization

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

Bir istek istek başlığına sahip etiketler x-ms-tags belirtirse, arayan Set Blob Tags işleminin yetkilendirme gereksinimlerini karşılamalıdır.

Ö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 Put 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.

Açıklamalar

Bir blob oluşturduğunuzda, başlığın değerini belirterek blok blob, ek blob mu yoksa sayfa blob x-ms-blob-type mu olduğunu belirtmelisiniz. Bir blob oluşturulduktan sonra, blobun türü silinip yeniden oluşturulmadıkça değiştirilemez.

Aşağıdaki tablo, hizmet versiyonlarına göre izin verilen maksimum blok ve blob boyutlarını açıklar:

Hizmet sürümü Maksimum blok boyutu (via Put Block) Maksimum blob boyutu (via Put Block List) Tek yazma işlemiyle maksimum blob boyutu (via Put Blob)
Sürüm 2019-12-12 ve üzeri 4.000 mebibayt (MiB) Yaklaşık 190,7 TiB (4.000 MiB × 50.000 blok) 5.000 MiB
2016-05-31'den 2019-07-07'ye kadar olan versiyonlar 100 MiB Yaklaşık 4.75 TiB (100 MiB × 50.000 blok) 256 MiB
2016-05-31 tarihinden önceki sürümler 4 MiB Yaklaşık 195 GiB (4 MiB × 50.000 blok) 64 MiB

Eğer o hizmet sürümü için izin verilen maksimum boyuttan büyük bir blok blobunu veya 8 TiB'den büyük bir sayfa blobunu yüklemeye çalışırsanız, hizmet durum kodu 413'ü (Talep Entity Too Large) döndürür. Blob Storage ayrıca yanıttaki hata hakkında ek bilgileri, izin verilen maksimum blob boyutunu bayt cinsinden dekler.

Yeni bir sayfa blobu oluşturmak için önce blobu başlatarak , ardından Put Blobmaksimum boyutunu 8 TiB'ye kadar belirtin. Bir sayfa blobu oluştururken, istek gövdesine içerik eklemeyin. Blob oluşturulduktan sonra, bloba içerik eklemek veya değiştirmek için Put Page'i çağırın.

Yeni bir ek blob oluşturmak için, 0 bayt içerik uzunluğuyla yaratmak için çağırın Put Blob . Ekleyici blob oluşturulduktan sonra, içeriği sonuna eklemek için Append Block'u çağırın.

Aynı isimle mevcut bir blobun üzerine yazmak için çağrı yaparsanız Put Blob , orijinal blob'a bağlı olan anlık görüntüler korunur. İlgili anlık görüntüleri kaldırmak için önce Delete Blob'u çağırın, ardından blob'u yeniden oluşturmak için çağırın Put Blob .

Blob custom properties

Bir blob, standart HTTP başlıklarıyla ilişkilendirilen değerleri depolamak için kullanabileceğiniz özel özelliklere sahiptir (başlıklar aracılığıyla ayarlanır). Daha sonra bu değerleri Get Blob Properties'i çağırarak okuyabilir veya Set Blob Properties çağırarak değiştirebilirsiniz. Özel özellik başlıkları ve ilgili standart HTTP başlığı aşağıdaki tabloda listelenmiştir:

HTTP başlığı Özel blob özellik başlığı
Content-Type x-ms-blob-content-type
Content-Encoding x-ms-blob-content-encoding
Content-Language x-ms-blob-content-language
Content-MD5 x-ms-blob-content-md5
Cache-Control x-ms-blob-cache-control

Bu özellik değerlerini blobla ayarlama veya devam ettirme anlamları şunlardır:

  • İstemci ön ekte x-ms-blob belirtildiği gibi özel bir özellik başlığı belirtirse, bu değer blobla birlikte saklanır.

  • İstemci standart bir HTTP başlığı belirtiyorsa ama özel özellik başlığını belirtmiyorsa, değer blobla ilişkilendirilen ilgili özel özellikte saklanır ve bir çağrı ile Get Blob Propertiesgeri döner. Örneğin, istemci başlığı Content-Type isteğe ayarsa, o değer blobun x-ms-blob-content-type özelliğinde saklanır.

  • İstemci hem standart HTTP başlığını hem de ilgili özellik başlığını aynı isteğe ayarlıyorsa, PUT isteği standart HTTP başlığı için sağlanan değeri kullanır, ancak özel özellik başlığı için belirtilen değer blobla birlikte saklanır ve sonraki GET istekleriyle döndürülür.

Başlıkta etiketler sağlanıyorsa x-ms-tags , sorgu dizisi ile kodlanmış olmalıdır. Etiket anahtarları ve değerleri, belirtilen Set Blob Tagsisimlendirme ve uzunluk gereksinimlerine uygun olmalıdır. Ayrıca, x-ms-tags başlık 2kb'a kadar etiket içerebilir. Daha fazla etiket gerekiyorsa, Set Blob Tags işlemini kullanın.

Blobun aktif bir kira sözleşmesi varsa, istemci blob'u üzerine yazmak için geçerli bir kira kimliği belirtmelidir. İstemci bir kira kimliği belirtmezse veya geçersiz bir kira kimliği belirtirse, Blob Storage durum kodu 412'yi (Ön Koşul Başarısız Oldu) döndürür. İstemci bir kira kimliği belirtiyorsa ama blobun aktif bir kiralaması yoksa, Blob Storage ayrıca 412 (Ön Koşul Başarısız Oldu) durum kodu döndürür. İstemci henüz var olmayan bir blob için bir kiralama kimliği belirtirse, Blob Storage 2013-08-15 ve sonrasına yönelik istekler için 412 (Ön Koşul Başarısız) durum kodu döner. 2013-08-15 öncesindeki sürümler için Blob Storage durum kodu 201 (Oluşturuldu) döner.

Aktif bir kiralamaya sahip mevcut bir blob bir Put Blob işlem tarafından üzerine yazılırsa, kira süresi dolana veya serbest bırakılana kadar güncellenen blob'da devam eder.

Bir Put Blob operasyonun tamamlanması için MiB başına 10 dakika izin verilir. Eğer operasyon ortalama 10 dakikadan fazla sürerse, işlem zaman dolur.

Bir archive blobun üzerine yazmak başarısız olur. Aksi takdirde, bir top, başlık x-ms-access-tier sağlanmazsa eski blob'tan seviyeyi miras alır.

Süresi Dolması Seçeneği

Aşağıdaki değerleri başlık x-ms-expiry-option olarak gönderebilirsiniz. Bu başlık becereğe duyarlı değil.

Son kullanma opsiyonu Description
RelativeToNow Son kullanma tarihini mevcut zamana göre ayarlar. x-ms-expiry-time mevcut zamandan geçen milisaniye sayısı olarak belirtilmelidir.
Absolute x-ms-expiry-time RFC 1123 formatında mutlak zaman olarak belirtilmelidir.
NeverExpire Blob'u hiç süresi dolmayacak şekilde ayarlar veya mevcut son kullanma tarihini kaldırır. x-ms-expiry-time belirtilmemelidir.

Bir blob'un son kullanma tarihi belirlemenin anlamanlamı aşağıdaki gibidir:

  • Set Expiry sadece bir blob üzerinde ayarlanabilir, bir dizinde değil.
  • Set Expiry Geçmişte bir expiryTime ile bu yasak olmaz.
  • ExpiryTime değeri expiryOption ile Neverbelirtilemez.

Billing

Fiyatlandırma istekleri, doğrudan Blob Depolama REST API'si aracılığıyla veya bir Azure Depolama istemci kitaplığından Blob Depolama API'lerini kullanan istemcilerden kaynaklanabilir. Bu istekler işlem başına ücret tahakkuk ettirir. İşlem türü, hesabın nasıl ücretlendirileceğini 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 istekler için Put Blob faturalama kategorisi gösterilmektedir:

Operation Depolama hesabı türü Faturalama kategorisi
Blob'u Yerleştir Premium blok blob
Standart Genel Amaçlı Versiyon 2
Standart genel amaçlı v1
Yazma işlemleri

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

Ayrıca bakınız

Azure Depolama isteklerini yetkilendirme
Durum ve hata kodları
Blob servis hata kodları
Blob servis işlemleri için zaman aşımlarını ayarla