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 karşı yetkilendirmek için PowerShell tarafından otomatik olarak kullanılır. Desteklenen işlemler için artık komutuyla bir hesap anahtarı veya SAS belirteci geçirmeniz gerekmez.

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. Size Kuyruk Verileri Katkıda Bulunanı rolü atanmışsa, bir kuyruğu veya içerdikleri verileri okuyan, yazan veya silen betik komutlarını çalıştırabilirsiniz.

Bir kuyrukta 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 Azure Depolama Context nesnesi oluşturmak için parametresini ekleyin-UseConnectedAccount.

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

Dekont

Azure ile etkileşim kurmak 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'de oturum açmak ve sonraki işlemleri çalıştırmak için Azure PowerShell'i kullanmak için depolama hesabına başvurmak için bir depolama bağlamı oluşturun ve parametresini -UseConnectedAccount 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. Bağlan-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-Az Depolama Account çağrısı yaparak bir depolama hesabı oluşturun.

    $storageAccount = New-AzStorageAccount -ResourceGroupName $resourceGroup `
      -Name "<storage-account>" `
      -SkuName Standard_LRS `
      -Location $location `
    
  4. New-Az Depolama Context ç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ğlama başvurabilirsiniz. -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 Kuyruk Verileri 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-Az Depolama Queue ç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