Aracılığıyla paylaş


Kuyruk verilerine erişmek için Microsoft Entra kimlik bilgileriyle PowerShell komutlarını çalıştırma

Azure Depolama, Microsoft Entra kimlik bilgileriyle oturum açmanızı ve betik komutlarını çalıştırmanızı sağlayan PowerShell uzantıları sağlar. Microsoft Entra kimlik bilgileriyle PowerShell'de oturum açtığınızda bir OAuth 2.0 erişim belirteci döndürülür. Bu belirteç, Sonraki veri işlemlerini Kuyruk Depolama'ya karşı yetkilendirmek için PowerShell tarafından otomatik olarak kullanılır. Desteklenen işlemler için, artık komutla birlikte bir hesap anahtarı veya SAS belirteci geçirmeniz gerekmiyor.

Azure rol tabanlı erişim denetimi (Azure RBAC) aracılığıyla bir Microsoft Entra güvenlik sorumlusuna kuyruk verilerine izin atayabilirsiniz. Azure Depolama'daki Azure rolleri hakkında daha fazla bilgi için bkz. Azure RBAC ile Azure Depolama verilerine erişim haklarını yönetme.

Desteklenen işlemler

Azure Depolama uzantıları, kuyruk verileri üzerindeki işlemler için desteklenir. Hangi işlemleri çağırabileceğiniz, PowerShell'de oturum açtığınızda Microsoft Entra güvenlik sorumlusuna verilen izinlere bağlıdır. Kuyruklara yönelik izinler Azure RBAC aracılığıyla atanır. Örneğin, Size Kuyruk Veri Okuyucusu rolü atanmışsa, kuyruktan veri okuyan betik komutlarını çalıştırabilirsiniz. Kuyruk Verileri Katkıda Bulunan rolüne atanmışsanız, bir kuyruğu veya içerdikleri veriyi okuma, yazma veya silme betik komutlarını çalıştırabilirsiniz.

Bir kuyruk üzerindeki her Azure Depolama işlemi için gereken izinler hakkında ayrıntılı bilgi için bkz. OAuth belirteçleriyle depolama işlemlerini çağırma.

Önemli

Bir depolama hesabı Bir Azure Resource Manager ReadOnly kilidiyle kilitlendiğinde, söz konusu depolama hesabı için Liste Anahtarları işlemine izin verilmez. Liste Anahtarları bir POST işlemidir ve hesap için ReadOnly kilidi yapılandırıldığında tüm POST işlemleri engellenir. Bu nedenle, hesap ReadOnly kilidiyle kilitlendiğinde, hesap anahtarlarına sahip olmayan kullanıcıların kuyruk verilerine erişmek için Microsoft Entra kimlik bilgilerini kullanması gerekir. PowerShell'de, Microsoft Entra kimlik bilgilerinizle bir -UseConnectedAccount nesnesi oluşturmak için parametresini ekleyin.

Microsoft Entra kimlik bilgilerini kullanarak PowerShell komutlarını çağırma

Uyarı

Azure ile etkileşime geçmek için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Microsoft Entra kimlik bilgilerini kullanarak Azure Depolama'da oturum açmak ve sonraki işlemleri gerçekleştirmek için Azure PowerShell'i kullanırken, depolama hesabına başvuran bir depolama bağlamı oluşturun ve -UseConnectedAccount parametresini ekleyin.

Aşağıdaki örnekte, Microsoft Entra kimlik bilgilerinizi kullanarak Azure PowerShell'den yeni bir depolama hesabında kuyruk oluşturma adımları gösterilmektedir. Köşeli ayraçlardaki yer tutucu değerleri kendi değerlerinizle değiştirmeyi unutmayın:

  1. Connect-AzAccount komutuyla Azure hesabınızda oturum açın:

    Connect-AzAccount
    

    PowerShell ile Azure'da oturum açma hakkında daha fazla bilgi için bkz. Azure PowerShell ile oturum açma.

  2. New-AzResourceGroup çağrısı yaparak bir Azure kaynak grubu oluşturun.

    $resourceGroup = "sample-resource-group-ps"
    $location = "eastus"
    New-AzResourceGroup -Name $resourceGroup -Location $location
    
  3. New-AzStorageAccount çağrısı yaparak bir depolama hesabı oluşturun.

    $storageAccount = New-AzStorageAccount -ResourceGroupName $resourceGroup `
      -Name "<storage-account>" `
      -SkuName Standard_LRS `
      -Location $location `
    
  4. New-AzStorageContext çağrısı yaparak yeni depolama hesabını belirten depolama hesabı bağlamını alın. Bir depolama hesabı üzerinde hareket ederken, kimlik bilgilerini tekrar tekrar geçirmek yerine bağlamı referans alabilirsiniz. -UseConnectedAccount Microsoft Entra kimlik bilgilerinizi kullanarak sonraki veri işlemlerini çağırmak için parametresini ekleyin:

    $ctx = New-AzStorageContext -StorageAccountName "<storage-account>" -UseConnectedAccount
    
  5. Kuyruğu oluşturmadan önce Depolama Kuyruğu Veri Katkıda Bulunanı rolünü kendinize atayın. Hesap sahibi olmanıza rağmen, depolama hesabında veri işlemleri gerçekleştirmek için açık izinlere ihtiyacınız vardır. Azure rollerini atama hakkında daha fazla bilgi için bkz. Kuyruk verilerine erişim için Azure rolü atama.

    Önemli

    Azure rol atamalarının yayılması birkaç dakika sürebilir.

  6. New-AzStorageQueue çağrısı yaparak bir kuyruk oluşturun. Bu çağrı önceki adımlarda oluşturulan bağlamı kullandığından, kuyruk Microsoft Entra kimlik bilgileriniz kullanılarak oluşturulur.

    $queueName = "sample-queue"
    New-AzStorageQueue -Name $queueName -Context $ctx
    

Sonraki adımlar