Menjalankan perintah PowerShell dengan informasi masuk Microsoft Entra untuk mengakses data blob

Azure Storage menyediakan ekstensi untuk PowerShell yang memungkinkan Anda masuk dan menjalankan perintah pembuatan skrip dengan kredensial Microsoft Entra. Saat Anda masuk ke PowerShell dengan kredensial Microsoft Entra, token akses OAuth 2.0 dikembalikan. Token tersebut secara otomatis digunakan oleh PowerShell untuk mengotorisasi operasi data berikutnya terhadap Penyimpanan Blob. Untuk operasi yang didukung, Anda tidak perlu lagi memberikan kunci akun atau token SAS dengan perintah.

Anda dapat menetapkan izin ke data blob ke prinsip keamanan Microsoft Entra melalui kontrol akses berbasis peran Azure (Azure RBAC). Untuk informasi selengkapnya tentang peran Azure di Azure Storage, lihat Menetapkan peran Azure untuk akses ke data blob.

Operasi yang didukung

Ekstensi Azure Storage didukung untuk operasi pada data blob. Operasi mana yang mungkin Anda panggil tergantung pada izin yang diberikan kepada perwakilan keamanan Microsoft Entra tempat Anda masuk ke PowerShell. Izin ke kontainer Azure Storage ditetapkan melalui Azure RBAC. Misalnya, jika Anda diberi peran Pembaca Data Blob, maka Anda dapat menjalankan perintah skrip yang membaca data dari kontainer. Jika Anda telah diberi peran Kontributor Data Blob, Anda dapat menjalankan perintah skrip yang membaca, menulis, atau menghapus kontainer atau data di dalamnya.

Untuk detail tentang izin yang diperlukan untuk setiap operasi Azure Storage pada kontainer, lihat Memanggil operasi penyimpanan dengan token OAuth.

Penting

Saat akun penyimpanan dikunci dengan kunci Baca Saja Azure Resource Manager, operasi Daftar Kunci tidak diizinkan untuk akun penyimpanan tersebut. Daftar Kunci adalah operasi POST, dan semua operasi POST dicegah ketika kunci Baca Saja dikonfigurasi untuk akun tersebut. Untuk alasan ini, ketika akun dikunci dengan kunci ReadOnly , pengguna yang belum memiliki kunci akun harus menggunakan kredensial Microsoft Entra untuk mengakses data blob. Di PowerShell, sertakan -UseConnectedAccount parameter untuk membuat objek AzureStorageContext dengan kredensial Microsoft Entra Anda.

Memanggil perintah PowerShell menggunakan kredensial Microsoft Entra

Untuk menggunakan Azure PowerShell untuk masuk dan menjalankan operasi berikutnya terhadap Azure Storage menggunakan kredensial Microsoft Entra, buat konteks penyimpanan untuk mereferensikan akun penyimpanan, dan sertakan -UseConnectedAccount parameter .

Contoh berikut menunjukkan cara membuat kontainer di akun penyimpanan baru dari Azure PowerShell menggunakan kredensial Microsoft Entra Anda. Ingatlah untuk mengganti nilai tempat penampung dalam tanda kurung sudut dengan nilai Anda sendiri:

  1. Masuk ke akun Azure Anda dengan perintah Connect-AzAccount:

    Connect-AzAccount
    

    Untuk informasi selengkapnya tentang proses masuk ke Azure dengan PowerShell, lihat Masuk dengan Azure PowerShell.

  2. Buat grup sumber daya Azure dengan memanggil New-AzResourceGroup.

    $resourceGroup = "sample-resource-group-ps"
    $location = "eastus"
    New-AzResourceGroup -Name $resourceGroup -Location $location
    
  3. Buat akun penyimpanan dengan memanggil New-AzStorageAccount.

    $storageAccount = New-AzStorageAccount -ResourceGroupName $resourceGroup `
      -Name "<storage-account>" `
      -SkuName Standard_LRS `
      -Location $location `
      -AllowBlobPublicAccess $false
    
  4. Dapatkan konteks akun penyimpanan yang menentukan akun penyimpanan baru dengan memanggil New-AzStorageContext. Saat bertindak di akun penyimpanan, Anda dapat mereferensikan konteks alih-alih berulang kali memberikan kredensial Anda. Sertakan -UseConnectedAccount parameter untuk memanggil operasi data berikutnya menggunakan kredensial Microsoft Entra Anda:

    $ctx = New-AzStorageContext -StorageAccountName "<storage-account>" -UseConnectedAccount
    
  5. Sebelum Anda membuat kontainer, tetapkan peran Kontributor Penyimpanan Data Blob untuk Anda sendiri. Meskipun Anda adalah pemilik akun, Anda memerlukan izin eksplisit untuk melakukan operasi data terhadap akun penyimpanan. Untuk informasi selengkapnya tentang penetapan peran Azure, lihat Menetapkan peran Azure untuk akses ke data blob.

    Penting

    Penetapan peran Azure mungkin memerlukan waktu hingga lima menit untuk disebarluaskan.

  6. Buat kontainer dengan memanggil New-AzStorageContainer. Karena panggilan ini menggunakan konteks yang dibuat di langkah-langkah sebelumnya, kontainer dibuat menggunakan kredensial Microsoft Entra Anda.

    $containerName = "sample-container"
    New-AzStorageContainer -Name $containerName -Context $ctx
    

Langkah berikutnya