Bagikan melalui


Pilih cara mengotorisasi akses ke data blob dengan Azure CLI

Azure Storage menyediakan ekstensi untuk Azure CLI yang memungkinkan Anda menentukan bagaimana Anda ingin mengotorisasi operasi pada data blob. Anda dapat mengotorisasi operasi data dengan cara berikut:

  • Dengan perwakilan keamanan Microsoft Entra. Microsoft merekomendasikan penggunaan kredensial Microsoft Entra untuk keamanan yang unggul dan kemudahan penggunaan.
  • Dengan kunci akses akun atau token tanda tangan akses bersama (SAS).

Tentukan bagaimana operasi data diotorisasi

Perintah Azure CLI untuk membaca dan menulis data blob menyertakan parameter opsional --auth-mode . Tentukan parameter ini untuk menunjukkan bagaimana operasi data akan diotorisasi:

  • Atur parameter --auth-mode ke login untuk masuk menggunakan entitas keamanan Microsoft Entra (disarankan).
  • Atur --auth-mode parameter ke nilai warisan key untuk mencoba mengambil kunci akses akun yang akan digunakan untuk otorisasi. Jika Anda menghilangkan --auth-mode parameter, maka Azure CLI juga mencoba mengambil kunci akses.

Untuk menggunakan --auth-mode parameter , pastikan Anda telah menginstal Azure CLI versi 2.0.46 atau yang lebih baru. Jalankan az --version untuk memeriksa versi yang terinstal.

Nota

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.

Penting

Jika Anda menghilangkan --auth-mode parameter atau mengaturnya ke key, maka Azure CLI mencoba menggunakan kunci akses akun untuk otorisasi. Dalam hal ini, Microsoft menyarankan agar Anda memberikan kunci akses baik pada perintah atau dalam variabel lingkungan AZURE_STORAGE_KEY . Untuk informasi selengkapnya tentang variabel lingkungan, lihat bagian berjudul Atur variabel lingkungan untuk parameter otorisasi.

Jika Anda tidak memberikan kunci akses, maka Azure CLI mencoba memanggil penyedia sumber daya Azure Storage untuk mengambilnya untuk setiap operasi. Melakukan banyak operasi data yang memerlukan panggilan ke penyedia sumber daya dapat mengakibatkan pembatasan. Untuk informasi selengkapnya tentang batas penyedia sumber daya, lihat Skalabilitas dan target performa untuk penyedia sumber daya Azure Storage.

Otorisasi dengan kredensial Microsoft Entra

Saat Anda masuk ke Azure CLI dengan kredensial Microsoft Entra, token akses OAuth 2.0 dikembalikan. Token tersebut secara otomatis digunakan oleh Azure CLI untuk mengotorisasi operasi data berikutnya terhadap penyimpanan Blob atau Antrian. Untuk operasi yang didukung, Anda tidak perlu lagi meneruskan kunci akun atau token SAS dengan perintah .

Anda dapat menetapkan izin ke data blob untuk prinsipal 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.

Izin untuk memanggil operasi data

Ekstensi Azure Storage didukung untuk operasi pada data blob. Operasi yang dapat Anda panggil bergantung pada izin yang diberikan kepada prinsipal keamanan Microsoft Entra yang Anda gunakan untuk masuk ke Azure CLI. Izin ke kontainer Azure Storage ditetapkan melalui Azure RBAC. Misalnya, jika Anda diberi peran Pembaca Data Blob Penyimpanan , maka Anda dapat menjalankan perintah pembuatan skrip yang membaca data dari kontainer. Jika Anda diberi peran Kontributor Data Blob Penyimpanan , maka Anda dapat menjalankan perintah pembuatan skrip yang membaca, menulis, atau menghapus kontainer atau data yang dikandungnya.

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

Contoh: Mengotorisasi operasi untuk membuat kontainer dengan kredensial Microsoft Entra

Contoh berikut menunjukkan cara membuat kontainer dari Azure CLI menggunakan kredensial Microsoft Entra Anda. Untuk membuat kontainer, Anda harus masuk ke Azure CLI, dan Anda memerlukan grup sumber daya dan akun penyimpanan. Untuk mempelajari cara membuat sumber daya ini, lihat Mulai Cepat: Membuat, mengunduh, dan mencantumkan blob dengan Azure CLI.

  1. Sebelum Anda membuat kontainer, tetapkan peran Kontributor Data Blob Penyimpanan untuk diri Anda sendiri. Meskipun Anda adalah pemilik akun, Anda memerlukan izin eksplisit untuk melakukan operasi data terhadap akun penyimpanan. Untuk informasi selengkapnya tentang menetapkan peran Azure, lihat Menetapkan peran Azure untuk akses ke data blob.

    Penting

    Penetapan peran Azure mungkin perlu waktu beberapa menit untuk disebarluaskan.

  2. Panggil perintah az storage container create dengan parameter yang --auth-mode diatur ke login untuk membuat kontainer menggunakan kredensial Microsoft Entra Anda. Ingatlah untuk mengganti nilai placeholder dalam tanda kurung sudut dengan nilai Anda sendiri.

    az storage container create \
        --account-name <storage-account> \
        --name sample-container \
        --auth-mode login
    

Mengotorisasi dengan kunci akses akun

Jika Anda memiliki kunci akun, Anda dapat memanggil operasi data Azure Storage apa pun. Secara umum, menggunakan kunci akun kurang aman. Jika kunci akun disusupi, semua data di akun Anda dapat disusupi.

Contoh berikut menunjukkan cara membuat kontainer menggunakan kunci akses akun. Tentukan kunci akun, dan berikan --auth-mode parameter dengan key nilai :

az storage container create \
    --account-name <storage-account> \
    --name sample-container \
    --account-key <key>
    --auth-mode key

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 harus mengakses data dengan kredensial Microsoft Entra.

Mengotorisasi dengan token SAS

Jika Anda memiliki token SAS, Anda dapat memanggil operasi data yang diizinkan oleh SAS. Contoh berikut menunjukkan cara membuat kontainer menggunakan token SAS:

az storage container create \
    --account-name <storage-account> \
    --name sample-container \
    --sas-token <token>

Mengatur variabel lingkungan untuk parameter otorisasi

Anda dapat menentukan parameter otorisasi dalam variabel lingkungan untuk menghindari menyertakannya pada setiap panggilan ke operasi data Azure Storage. Tabel berikut ini menjelaskan variabel lingkungan yang tersedia.

Variabel lingkungan Deskripsi
AZURE_STORAGE_ACCOUNT Nama akun penyimpanan. Variabel ini harus digunakan bersama dengan kunci akun penyimpanan atau token SAS. Jika keduanya tidak ada, Azure CLI mencoba mengambil kunci akses akun penyimpanan dengan mengecek akun Microsoft Entra yang terautentikasi. Jika sejumlah besar perintah dijalankan pada satu waktu, batas pembatasan penyedia sumber daya Azure Storage dapat tercapai. Untuk informasi selengkapnya tentang batas penyedia sumber daya, lihat Skalabilitas dan target performa untuk penyedia sumber daya Azure Storage.
AZURE_STORAGE_KEY Kunci akun penyimpanan. Variabel ini harus digunakan bersama dengan nama akun penyimpanan.
AZURE_STORAGE_CONNECTION_STRING String koneksi yang menyertakan kunci akun penyimpanan atau token SAS. Variabel ini harus digunakan bersama dengan nama akun penyimpanan.
AZURE_STORAGE_SAS_TOKEN Token tanda tangan akses bersama (SAS). Variabel ini harus digunakan bersama dengan nama akun penyimpanan.
AZURE_STORAGE_AUTH_MODE Mode otorisasi untuk menjalankan perintah. Nilai yang diizinkan adalah login (disarankan) atau key. Jika Anda menentukan login, Azure CLI menggunakan kredensial Microsoft Entra Anda untuk mengotorisasi operasi data. Jika Anda menentukan mode warisan key , Azure CLI mencoba mengkueri kunci akses akun dan untuk mengotorisasi perintah dengan kunci.

Langkah berikutnya