Kullanıcı Temsilcisi Anahtarı Alma
İşlem, Get User Delegation Key
kullanıcı temsilcisi SAS'sini (paylaşılan erişim imzası) imzalamak için kullanılabilecek bir anahtar alır. Kullanıcı temsilcisi SAS,Microsoft Entra kimlik bilgilerini kullanarak Azure Blob Depolama kaynaklara erişim verir. İşlem Get User Delegation Key
2018-11-09 ve sonraki sürümlerde kullanılabilir.
İstek
öğesini Get User Delegation Key
aşağıdaki gibi oluşturun. HTTPS gereklidir.
myaccount değerini depolama hesabınızın adıyla değiştirin.
POST yöntemi istek URI'si | HTTP sürümü |
---|---|
https://myaccount.blob.core.windows.net/?restype=service&comp=userdelegationkey |
HTTP/1.1 |
Öykünülmüş depolama hizmeti isteği
Yerel depolama hizmetine karşı istekte bulunduğunuzda, yerel ana bilgisayar adını ve Blob Depolama bağlantı noktasını olarak 127.0.0.1:10000
ve ardından yerel depolama hesabı adını belirtin:
POST yöntemi istek URI'si | HTTP sürümü |
---|---|
http://127.0.0.1:10000/devstoreaccount1/?restype=service&comp=userdelegationkey |
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 parametreler belirtilebilir.
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 belirtir. Yalnızca Microsoft Entra ID yetkilendirme desteklenir. Daha fazla bilgi için bkz. Microsoft Entra ID ile yetkilendirme. |
x-ms-version |
Tüm yetkili istekler için gereklidir. Daha fazla bilgi için bkz. Azure Depolama hizmetleri için sürüm oluşturma. |
x-ms-client-request-id |
İsteğe bağlı. Günlüğe kaydetme yapılandırıldığında günlüklere kaydedilen 1 kibibaytlık (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. |
İstek gövdesi
İstek gövdesinin biçimi aşağıdaki gibidir:
<?xml version="1.0" encoding="utf-8"?>
<KeyInfo>
<Start>String, formatted ISO Date</Start>
<Expiry>String, formatted ISO Date </Expiry>
</KeyInfo>
İstek gövdesinin öğeleri aşağıdaki tabloda açıklanmıştır:
Öğe | Açıklama |
---|---|
Başlangıç | Gereklidir. Kullanıcı temsilcisi SAS'sinin ISO tarih biçimindeki başlangıç saati. Geçerli tarihi izleyen yedi gün içinde geçerli bir tarih ve saat olmalıdır. |
Süre sonu | Gereklidir. Iso tarih biçiminde kullanıcı temsilcisi SAS'sinin sona erme zamanı. Geçerli tarihi izleyen yedi gün içinde geçerli bir tarih ve saat olmalıdır. |
Yanıt
Yanıt bir HTTP durum kodu ve yanıt üst bilgileri kümesi içerir.
Durum kodu
Başarılı bir işlem 200 (Tamam) durum kodunu döndürür.
Durum kodları hakkında daha fazla 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.
Yanıt üst bilgisi | Description |
---|---|
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 yürütmek için kullanılan Blob Depolama sürümü. |
Date |
Hizmet tarafından oluşturulan ve yanıtın başlatıldığı saati gösteren UTC tarih/saat değeri. |
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 mevcutsa ve değer 1.024'ten fazla görünür ASCII karakteri içermiyorsa üst bilginin değerine x-ms-client-request-id eşittir.
x-ms-client-request-id Üst bilgi istekte yoksa yanıtta bulunmaz. |
Yanıt gövdesi
Yanıt gövdesinin biçimi aşağıdaki gibidir:
<?xml version="1.0" encoding="utf-8"?>
<UserDelegationKey>
<SignedOid>String containing a GUID value</SignedOid>
<SignedTid>String containing a GUID value</SignedTid>
<SignedStart>String formatted as ISO date</SignedStart>
<SignedExpiry>String formatted as ISO date</SignedExpiry>
<SignedService>b</SignedService>
<SignedVersion>String specifying REST api version to use to create the user delegation key</SignedVersion>
<Value>String containing the user delegation key</Value>
</UserDelegationKey>
Yanıt gövdesinin öğeleri aşağıdaki tabloda açıklanmıştır:
Öğe | Açıklama |
---|---|
SignedOid | Microsoft kimlik sistemindeki bir nesnenin sabit tanımlayıcısı. |
SignedTid | Kullanıcının Microsoft Entra kiracısını temsil eden GUID. |
İmzalı Başlangıç | Iso tarih biçiminde kullanıcı temsilcisi anahtarının başlangıç saati. |
SignedExpiry | Iso tarih biçiminde kullanıcı temsilcisi anahtarının sona erme zamanı. |
SignedService | Kullanıcı temsilcisi anahtarının kullanabildiği hizmet; burada b, Blob Depolama'yı temsil eder. |
SignedVersion | Kullanıcı temsilci anahtarını almak için kullanılan REST API sürümü. |
Değer | Kullanıcı temsilcisi anahtarı. |
Yetkilendirme
Azure Depolama'da herhangi bir veri erişimi işlemi çağrılırken yetkilendirme gereklidir. İşlemi yalnızca Microsoft Entra ID kullanarak yetki vekleyebilirsinizGet User Delegation Key
.
İzinler
Kullanıcı temsilcisi anahtarını isteyen güvenlik sorumlusunun bunu yapmak için uygun izinlere sahip olması gerekir. Microsoft Entra güvenlik sorumlusu bir kullanıcı, grup, hizmet sorumlusu veya yönetilen kimlik olabilir.
Aşağıda, bir Microsoft Entra güvenlik sorumlusunun işlemi çağırması Get User Delegation Key
için gereken RBAC eylemi ve bu eylemi içeren en az ayrıcalıklı yerleşik Azure RBAC rolü verilmiştir:
- Azure RBAC eylemi:Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey/action
- En az ayrıcalıklı yerleşik rol:Depolama Blobu Temsilci
Bu Azure RBAC eylemini içeren herhangi bir yerleşik rolün( açıkça veya joker karakter tanımının bir parçası olarak) işlemi çağırmasına Get User Delegation Key
izin verilir.
Azure RBAC kullanarak rol atama hakkında daha fazla bilgi edinmek için bkz. Blob verilerine erişim için Azure rolü atama.
Get User Delegation Key
İşlem depolama hesabı düzeyinde hareket ettiğinden, Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey eyleminin kapsamı depolama hesabı, kaynak grubu veya abonelik düzeyinde yapılmalıdır. Güvenlik sorumlusuna daha önce listelenen yerleşik rollerden biri veya Depolama hesabı, kaynak grubu veya abonelik düzeyinde Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey eylemini içeren özel bir rol atanmışsa, güvenlik sorumlusu kullanıcı temsilci anahtarı isteyebilir.
Güvenlik sorumlusuna veri erişimine izin veren bir rol atanmışsa ancak kapsamı kapsayıcı düzeyine göre belirlenmişse, depolama hesabı, kaynak grubu veya abonelik düzeyinde depolama Blobu Temsilci Rolü'ni de bu güvenlik sorumlusuna atayabilirsiniz. Depolama Blobu Temsilcisi rolü, güvenlik sorumlusuna kullanıcı temsilcisi anahtarı istemek için izinler verir.
Azure Depolama için RBAC rolleri hakkında daha fazla bilgi için bkz. Azure Active Directory ile yetkilendirme.
Açıklamalar
Kullanıcı temsilcisi SAS'sini oluşturmak için kullanıcı temsilcisi anahtarını kullanın. kullanıcı temsilcisi SAS belirtecine yanıtında Get User Delegation Key
döndürülen alanları ekleyin. Daha fazla bilgi için bkz. Kullanıcı temsilcisi SAS oluşturma.
Kullanıcı temsilci anahtarı Blob Depolama kaynaklarına doğrudan erişmek için kullanılamaz.
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 ücretlendirilmeyi 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 Get User Delegation Key
faturalama kategorisi gösterilmektedir:
İşlem | Depolama hesabı türü | Faturalama kategorisi |
---|---|---|
Kullanıcı Temsilcisi Anahtarı Alma | Premium blok blobu Standart genel amaçlı v2 |
Diğer işlemler |
Kullanıcı Temsilcisi Anahtarı Alma | Standart genel amaçlı v1 | Okuma işlemleri |
Belirtilen faturalama kategorisinin fiyatlandırması hakkında bilgi edinmek için bkz. fiyatlandırma Azure Blob Depolama.