Azure Depolama için sürüm oluşturma

Azure Depolama birden çok sürümü destekler. Depolama hizmetlerinde istekte bulunmak için, istek anonim olmadığı sürece bu işlem için kullanmak istediğiniz sürümü belirtmeniz gerekir.

Azure depolama hizmetlerinin geçerli sürümü 2024-11-04'tür ve mümkün olduğunca kullanmanızı öneririz. Desteklenen diğer tüm sürümlerin listesi ve her sürümü kullanma hakkında bilgi için bkz. Önceki Azure Depolama hizmeti sürümleri.

2024-11-04 hizmet sürümü aşağıdaki özellikleri içerir:

  • Dosya hizmetindeki tüm veri düzlemi API'leri için belirteç tabanlı kimlik doğrulaması desteği. Daha fazla bilgi için bkz. Microsoft Entra ID ile yetkilendirme.
  • Premium dosya paylaşımı hesaplarında ücretli seri dağıtım desteği. Bu özellik, Paylaşım Oluşturma ve paylaşım özelliklerini API'lerini ayarlama etkinleştirilebilir.
  • Dosyalar hizmetinde dosya izinlerini alırken ve ayarlarken ikili biçim desteği. Daha fazla bilgi için bkz. İzin Oluşturma ve İzin Alma

İsteklerde hizmet sürümlerini belirtme

bir istek için kullanılacak depolama hizmetlerinin sürümünü nasıl belirttiğiniz, bu isteğin nasıl yetkilendirildiğini belirtir. Aşağıdaki bölümlerde yetkilendirme seçenekleri ve hizmet sürümünün her biri için nasıl belirtildiği açıklanmaktadır.

  • Microsoft Entra'dan OAuth 2.0 belirteci kullanan istekler: Microsoft Entra Id ile bir isteği yetkilendirmek için, istekte 2017-11-09 veya üzeri bir hizmet sürümüyle x-ms-version üst bilgisini geçirin. Daha fazla bilgi için bkz. Microsoft Entra ID ile yetkilendirme OAuth belirteçleriyle depolama işlemlerini çağırma.

  • Paylaşılan Anahtar veya Paylaşılan Anahtar Lite kullanan İstekler: Paylaşılan Anahtar veya Paylaşılan Anahtar Lite ile bir isteği yetkilendirmek için istekte x-ms-version üst bilgisini geçirin. Azure Blob Depolama söz konusu olduğunda,Blob Hizmeti Özelliklerini Ayarla çağırarak tüm istekler için varsayılan sürümü belirtebilirsiniz.

  • Paylaşılan erişim imzası (SAS)kullanan istekler: Paylaşılan erişim imzası üzerinde iki sürüm oluşturma seçeneği belirtebilirsiniz. İsteğe bağlı api-version üst bilgisi, API işlemini yürütmek için hangi hizmet sürümünün kullanılacağını gösterir. Gerekli SignedVersion (sv) parametresi, SAS ile yapılan isteği yetkilendirmek için kullanılacak hizmet sürümünü belirtir. api-version üst bilgisi belirtilmezse, SignedVersion (sv) parametresinin değeri API işlemini yürütmek için kullanılacak sürümü de gösterir.

  • Anonim erişimkullanan istekler: Blob Depolama'ya karşı anonim erişim söz konusu olduğunda, sürüm geçirilmedi. İstek için hangi sürümün kullanılacağını belirlemeye yönelik buluşsal yöntemler sonraki bölümlerde açıklanmıştır.

Microsoft Entra ID, Shared Key veya Shared Key Lite kullanarak istekleri yetkilendirme

Microsoft Entra Id, Shared Key veya Shared Key Lite ile bir isteği yetkilendirmek için istekte x-ms-version üst bilgisini belirtin. x-ms-version isteği üst bilgisi değeri YYYY-AA-GG biçiminde belirtilmelidir. Mesela:

Request Headers:  
x-ms-version: 2020-04-08

Aşağıdaki kurallar, isteği işlemek için hangi sürümün kullanılacağını belirlemek için bu isteklerin nasıl değerlendirildiğini açıklar.

  • bir isteğin geçerli bir x-ms-version üst bilgisi varsa, depolama hizmeti belirtilen sürümü kullanır. Paylaşılan erişim imzası kullanmayan Tüm Azure Tablo Depolama ve Azure Kuyruk Depolama istekleri bir x-ms-version üst bilgisi belirtmelidir. Paylaşılan erişim imzası kullanmayan Tüm Blob Depolama istekleri, sonraki paragrafta açıklandığı gibi varsayılan sürüm ayarlanmadığı sürece bir x-ms-version üst bilgisi belirtmelidir.

  • Blob Depolama isteğinde üst bilgisi yoksa ancak hesap sahibi Blob Hizmeti Özelliklerini Ayarla işlemini kullanarak varsayılan bir sürüm ayarladıysa, istek için sürüm olarak belirtilen varsayılan sürüm kullanılır.

Paylaşılan erişim imzası kullanarak istekleri yetkilendirme

Sürüm 2014-02-14 veya üzeri kullanılarak oluşturulan paylaşılan erişim imzası (SAS) iki sürüm oluşturma seçeneğini destekler:

  • api-version sorgu parametresi, SAS kullanılarak yapılan bir isteği işlemek için kullanılacak REST protokolü sürümünü tanımlar.

  • SignedVersion (sv) sorgu parametresi, yetkilendirme için kullanılacak SAS sürümünü tanımlar.

SignedVersion sorgu parametresi, bir istemci SAS kullanarak istekte bulunursa yetkilendirme için kullanılır. si, sr, sp, sig, st, se, tn, spk, srk, epkve erk gibi yetkilendirme parametrelerinin tümü belirtilen sürüm kullanılarak yorumlanır.

rscc, rscd, rsce, rsclve rsct gibi REST protokolü parametreleri, api-version parametre üst bilgisinde sağlanan sürüm kullanılarak zorlanır. api-version üst bilgisi belirtilmezse, SignedVersion için sağlanan hizmet sürümü kullanılır.

api-version parametresi, Hizmet SASoluşturma bölümünde açıklandığı gibi yetkilendirme üst bilgisinde oturum açma dizesinin bir parçası değildir.

Aşağıdaki tabloda, SignedVersion parametresi sürüm 2014-02-14 veya sonraki bir sürüme ayarlandığında yetkilendirme ve REST protokollerini çağırmak için hizmet tarafından kullanılan sürüm oluşturma şeması açıklanmaktadır.

api sürümü parametresinin değeri Yetkilendirme için kullanılan sürüm Protokol davranışı için kullanılan sürüm
Belirtilmemiş sv parametresinde belirtilen sürüm sv parametresinde belirtilen sürüm
XXXX-XX-XX biçimindeki geçerli depolama hizmetleri sürümleri sv parametresinde belirtilen sürüm Geçerli depolama hizmetleri sürümü XXXX-XX-XX

Örnek 1

Aşağıdaki örnek istek, ile ve parametresi olmadan Liste Bloblarını çağırır.

https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list&sv=2015-04-05&si=readpolicy&sig=a39 %2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d

Bu durumda hizmet, 2015-04-05 sürümünü kullanarak isteğin kimliğini doğrular ve yetkisini alır ve işlemi 2015-04-05 sürümünü kullanarak çalıştırır.

Örnek 2

Aşağıdaki örnek istek, ve parametresiyle Liste Bloblarını çağırır.

https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list&sv=2015-04-05&si=readpolicy&sig=a39 %2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d&api-version=2012-02-12

Burada hizmet, isteği 2015-04-05 sürümünü kullanarak yetkiler ve 2012-02-12 sürümünü kullanarak işlemi çalıştırır.

Not

.NET Depolama istemci kitaplığı rest protokolü sürümünü (api-version parametresinde) her zaman temel alındığı sürüme ayarlar.

Anonim erişim yoluyla istekler

Anonim erişim yoluyla yapılan istekler, yapılan depolama hesabının türüne bağlı olarak farklı şekilde işlenir.

Genel amaçlı depolama hesapları için

Genel amaçlı depolama hesabına yapılan anonim bir istek üst bilgisini belirtmezse ve hizmet için varsayılan sürümBlob Hizmeti Özelliklerini Ayarlakullanılarak ayarlanmamışsa, hizmet isteği işlemek için mümkün olan en erken sürümü kullanır. Ancak kapsayıcı, 2009-09-19 veya sonraki bir sürüm kullanılarak gerçekleştirilen Kapsayıcı ACL ayarlama işlemiyle genel kullanıma açık hale getirildiyse, istek 2009-09-19 sürümü kullanılarak işlenir.

Blob Depolama hesapları için

Blob Depolama hesabına yönelik anonim bir istek üst bilgisini belirtmezse ve hizmet için varsayılan sürümBlob Hizmeti Özelliklerini Ayarla kullanılarak ayarlanmamışsa, hizmet isteği işlemek için mümkün olan en erken sürümü kullanır. Blob Depolama hesabı için mümkün olan en erken sürüm 2014-02-14'dür.

Bilinen sorunlar

Bu bölümde Azure Depolama REST API'leri ile ilgili bilinen sorunlar ayrıntılı olarak açıklanmaktadır.

InvalidHeaderValue hata iletisi

Nadir senaryolarda, doğrudan REST API çağrıları yapan uygulamalar InvalidHeaderValue hata iletisi alabilir. Hata aşağıdaki örneğe benzer:

HTTP/1.1 400 The value for one of the HTTP headers is not in the correct format.
Content-Length: 328
Content-Type: application/xml
Server: Microsoft-HTTPAPI/2.0
x-ms-request-id: <REMOVED>
Date: Fri, 19 May 2023 17:10:33 GMT
 
<?xml version="1.0" encoding="utf-8"?><Error><Code>InvalidHeaderValue</Code><Message>The value for one of the HTTP headers is not in the correct format.
RequestId:<REMOVED>
Time:2023-05-19T17:10:34.2972651Z</Message><HeaderName>x-ms-version</HeaderName><HeaderValue>yyyy-mm-dd</HeaderValue></Error> 

Sorunun çözülip çözülmediğini görmek için daha önceki bir REST API sürümünü kullanmanız önerilir. Sorun devam ederse veya öneri uygun değilse, diğer seçenekleri tartışmak bir destek bileti açın.

Ayrıca bkz.