Bagikan melalui


Tutorial: Mengimpor atau mengekspor database dengan autentikasi identitas terkelola untuk Azure SQL Database (pratinjau)

Aplikasi ke:Azure SQL Database

Tutorial ini menunjukkan cara mengimpor dan mengekspor file BACPAC Azure SQL Database dengan autentikasi identitas terkelola.

Autentikasi identitas terkelola menghapus kebutuhan untuk memberikan kredensial administrator SQL dan kunci akun penyimpanan dalam permintaan impor dan ekspor.

Nota

Impor dan ekspor file BACPAC dengan autentikasi identitas terkelola saat ini dalam pratinjau.

Gambaran Umum

Azure SQL Database mengimpor dan mengekspor dengan autentikasi identitas terkelola membantu Anda menyelesaikan hal berikut:

  • Hilangkan kata sandi administrator SQL dan kunci akun penyimpanan.
  • Menerapkan autentikasi khusus Microsoft Entra.
  • Kurangi manajemen kredensial dan beban tambahan penggantian berkala.

Penting

Impor dan ekspor adalah operasi hak istimewa tinggi. Berikan izin hanya kepada prinsipal tepercaya.

Architecture

Autentikasi identitas terkelola untuk impor dan ekspor menggunakan arsitektur berikut:

  • Layanan impor dan ekspor berjalan di infrastruktur yang dikelola Microsoft.
  • Identitas terkelola yang ditetapkan oleh pengguna ke server logis digunakan untuk autentikasi.
  • Azure RBAC mengontrol akses ke Azure Storage.

Skenario yang didukung

Skenario berikut didukung dengan autentikasi identitas terkelola:

  • Impor ke database baru.
  • Impor ke database kosong yang sudah ada.
  • Ekspor dari database yang sudah ada.

Skenario berikut tidak didukung dengan autentikasi identitas terkelola:

  • Operasi impor lintas penyewa.
  • Identitas terkelola hanya ditetapkan di tingkat database.

Prasyarat

  • Langganan Azure.
  • Server logis untuk Azure SQL Database.
  • Akun penyimpanan Azure dengan kontainer blob.

Buat identitas terkelola yang ditetapkan pengguna

Buat satu atau beberapa identitas terkelola.

Pilih dari model autentikasi berikut:

  • Satu identitas untuk akses SQL dan Azure Storage.
  • Identitas terpisah untuk akses SQL dan penyimpanan.

Gunakan identitas terpisah untuk menyederhanakan manajemen izin hak istimewa terendah.

Untuk membuat identitas terkelola, Anda dapat menggunakan portal Azure, Azure CLI, Azure PowerShell, templat ARM, atau REST API.

Anda memerlukan ID sumber daya identitas terkelola yang ditetapkan pengguna untuk operasi ekspor atau impor, dan untuk akses akun penyimpanan. ID sumber daya dalam format:

/subscriptions/<subscriptionId>/resourceGroups/<resourceGroup>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identityName>

Untuk menentukan ID sumber daya untuk identitas terkelola yang ditetapkan pengguna yang ada di portal Azure, ikuti langkah-langkah berikut:

  1. Buka identitas terkelola yang ditetapkan pengguna Anda di portal Azure.
  2. Di bawah Pengaturan, pilih Properti.
  3. Di bawah Esensial, salin nilai untuk ID yang akan digunakan di langkah selanjutnya.

Memberikan izin penyimpanan

Untuk menggunakan autentikasi identitas terkelola untuk operasi impor dan ekspor, identitas terkelola yang ditetapkan pengguna yang mengakses akun penyimpanan harus memiliki izin RBAC Azure yang sesuai untuk akun target.

Berikan izin untuk identitas terkelola yang ditetapkan pengguna yang ingin Anda gunakan untuk akses akun penyimpanan. Ini bisa menjadi identitas terkelola yang berbeda dari yang ditetapkan ke server logis, atau dapat menjadi identitas yang sama jika Anda ingin menggunakan satu identitas untuk akses SQL dan penyimpanan.

Nota

Untuk menambahkan penetapan peran atau menambahkan rekan administrator, pengguna harus menjadi admin langganan, atau menjadi Administrator Akses Pengguna.

Untuk memberikan izin RBAC Azure untuk akun penyimpanan ke identitas terkelola, ikuti langkah-langkah berikut:

  1. Pilih penetapan peran Azure untuk identitas terkelola dengan penetapan pengguna di portal Azure.
  2. Pada panel Penetapan Peran Azure, pilih + Tambahkan Penetapan Peran (Pratinjau) untuk membuka panel Tambahkan Penetapan Peran (Pratinjau).
  3. Dari daftar dropdown Cakupan , pilih Penyimpanan.
  4. Di bawah Langganan, pastikan langganan yang benar dipilih.
  5. Di bawah Sumber Daya, pilih akun penyimpanan yang ingin Anda gunakan untuk operasi ekspor atau impor Anda.
  6. Di bawah Peran, cari peran Blob Penyimpanan yang relevan untuk operasi Anda:
    • Untuk operasi ekspor, tetapkan peran Storage Blob Data Contributor.
    • Untuk operasi impor, tetapkan peran Pembaca Data Blob pada Penyimpanan.
  7. Pilih Simpan untuk menyimpan penetapan peran.

Menetapkan identitas terkelola ke server logis

Tetapkan identitas terkelola yang ditetapkan pengguna yang Anda buat untuk server logis ke server logis.

Untuk menetapkan identitas terkelola ke server logis, ikuti langkah-langkah berikut:

  1. Buka server logis Anda untuk Azure SQL Database di portal Azure.
  2. Di bawah Keamanan, pilih Identitas.
  3. Di bagian Identitas terkelola yang ditetapkan pengguna , gunakan + Tambahkan untuk membuka panel Pilih identitas terkelola yang ditetapkan pengguna .
  4. Cari identitas terkelola yang Anda buat di langkah sebelumnya, pilih identitas tersebut, lalu pilih Tambahkan untuk menetapkannya ke server.
  5. Tetapkan identitas terkelola yang ditetapkan pengguna sebagai identitas utama.
  6. Gunakan ikon Simpan di bilah navigasi untuk menyimpan perubahan.

Konfigurasi Administrator Microsoft Entra

Untuk mengonfigurasi administrator Microsoft Entra, ikuti langkah-langkah berikut:

  1. Pada panel logical server for Azure SQL Database, di bawah Settings, pilih admin Microsoft Entra.
  2. Pilih Set admin untuk membuka panel Microsoft Entra ID.
  3. Cari identitas terkelola yang ditetapkan pengguna yang Anda buat, pilih identitas tersebut, lalu gunakan Pilih untuk mengaturnya sebagai administrator Microsoft Entra.
  4. (Opsional) Gunakan kotak centang untuk mengaktifkan mendukung hanya autentikasi Microsoft Entra untuk server ini guna menerapkan hanya autentikasi Microsoft Entra untuk server logis tersebut. Pengaturan ini memblokir semua autentikasi SQL, jadi hanya identitas terkelola dan prinsipal Microsoft Entra lainnya yang dapat mengakses server.
  5. Gunakan ikon Simpan di bilah navigasi untuk menyimpan perubahan.

Nota

Jika Anda perlu memberikan akses admin beberapa sumber daya ke server logis, pertimbangkan untuk membuat grup Microsoft Entra, tetapkan grup tersebut sebagai admin, lalu tetapkan identitas terkelola yang ditetapkan pengguna sebagai anggota grup tersebut.

Mengekspor sebuah database

Anda dapat mengekspor database dengan autentikasi identitas terkelola dengan menggunakan portal Azure, Azure CLI, Azure PowerShell, atau REST API.

Untuk mengekspor database dengan autentikasi identitas terkelola dari portal Azure, ikuti langkah-langkah berikut:

  1. Pergi ke Azure SQL Database Anda di portal Azure.
  2. Dari panel Gambaran Umum , pilih Ekspor untuk membuka panel Ekspor database .
  3. Untuk mengakses akun penyimpanan dengan identitas terkelola, centang kotak untuk Gunakan identitas terkelola untuk autentikasi penyimpanan lalu berikan ID Sumber Daya untuk identitas terkelola yang diberikan akses akun penyimpanan.
  4. Untuk Jenis autentikasi, pilih Identitas Terkelola.
  5. Bidang ID Sumber Daya Identitas Terkelola SQL harus diisi secara otomatis dengan ID Sumber Daya untuk identitas terkelola yang ditetapkan oleh pengguna ke server logis. Jika tidak, berikan ID Sumber Daya untuk identitas terkelola yang ditetapkan pengguna yang Anda simpan saat membuat identitas terkelola.

Mengimpor sebuah database

Anda dapat mengimpor database dengan autentikasi identitas terkelola dengan menggunakan portal Azure, Azure CLI, Azure PowerShell, atau REST API.

Anda bisa mengimpor database sebagai database baru, atau ke database kosong yang sudah ada.

Untuk mengimpor database dengan autentikasi identitas terkelola dari portal Azure, ikuti langkah-langkah berikut:

  1. Buka server logical Anda untuk Azure SQL Database di portal Azure.
  2. Dari panel Gambaran Umum , pilih Impor untuk membuka panel Impor database .
  3. Untuk mengakses akun penyimpanan dengan identitas terkelola, centang kotak untuk Gunakan identitas terkelola untuk autentikasi penyimpanan lalu berikan ID Sumber Daya untuk identitas terkelola yang diberikan akses akun penyimpanan.
  4. Di bawah Nama database, berikan nama untuk database target.
  5. Untuk Jenis autentikasi, pilih Identitas Terkelola.
  6. Bidang Id Sumber Daya Identitas Terkelola SQL harus terisi secara otomatis dengan Resource ID untuk identitas terkelola yang ditetapkan oleh pengguna yang ditetapkan ke server logis. Jika tidak, berikan ID Sumber Daya untuk identitas terkelola yang ditetapkan pengguna yang Anda simpan saat membuat identitas terkelola.

Pemecahan Masalah Umum

Masalah umum berikut dapat terjadi saat Anda menggunakan autentikasi identitas terkelola untuk impor dan ekspor. Coba langkah-langkah pemecahan masalah untuk setiap masalah:

  • Tenant tidak cocok: Verifikasi bahwa server logis, identitas terkelola yang ditetapkan pengguna, dan akun penyimpanan berada di penyewa Microsoft Entra yang sama.
  • Identitas Terkelola tidak dikonfigurasi sebagai administrator Microsoft Entra: Atur identitas terkelola yang ditetapkan pengguna sebagai administrator Microsoft Entra tingkat server.
  • Kegagalan otorisasi penyimpanan: Pastikan Pembaca Data Blob Penyimpanan (impor) atau Kontributor Data Blob Penyimpanan (ekspor) diberikan di cakupan Penyimpanan yang tepat.
  • Kegagalan otorisasi operasi: Pastikan bahwa pengguna memiliki izin RBAC Azure untuk mengirimkan operasi impor atau ekspor pada cakupan SQL target.
  • Authorization dengan kunci bersama dinonaktifkan: Ketika memilih akun penyimpanan di portal Azure selama operasi impor atau ekspor, portal tersebut menggunakan kredensial dari pengguna yang telah masuk dan mengandalkan autorisasi berbasis kunci bersama. Saat otorisasi kunci bersama dinonaktifkan untuk akun penyimpanan, impor dan ekspor dari portal Azure tidak tersedia. Gunakan Azure CLI, PowerShell, atau REST API untuk operasi impor dan ekspor saat akses kunci bersama dinonaktifkan.
  • akun Storage tidak tersedia di menu dropdown pilihan akun: Saat menggunakan portal Azure untuk operasi impor atau ekspor, hanya akun penyimpanan yang dapat diakses pengguna yang masuk yang ditampilkan dalam menu dropdown pemilihan akun penyimpanan. Jika Anda tidak melihat akun penyimpanan Anda di menu dropdown, pastikan bahwa pengguna yang masuk memiliki setidaknya akses peran Pembaca ke akun penyimpanan.

Permissions

Pengguna yang mengirimkan permintaan impor atau ekspor harus memiliki izin RBAC Azure yang diperlukan untuk menjalankan operasi impor atau ekspor pada cakupan target (database, server, grup sumber daya, atau langganan).

Peran bawaan umum berikut ini memiliki izin yang diperlukan:

  • Kontributor SQL DB
  • Contributor
  • Pemilik

Anda juga dapat menggunakan peran kustom yang menyertakan izin berikut yang diperlukan untuk Microsoft.Sql tindakan impor dan ekspor:

  • Microsoft.Sql/servers/databases/export/action (POST)
  • Microsoft.Sql/servers/databases/import/action (POST)
  • Microsoft.Sql/servers/import/action (POST)
  • Microsoft.Sql/servers/databases/extensions/write (PUT)

Keterbatasan

Pertimbangkan batasan berikut saat menggunakan autentikasi identitas terkelola untuk operasi impor dan ekspor:

  • Operasi lintas penyewa tidak didukung.
  • Identitas terkelola tingkat database tidak didukung untuk operasi impor dan ekspor.
  • Selama pratinjau, beberapa pengalaman portal Azure dapat dibatasi.
  • Identitas terkelola yang ditetapkan sistem tidak didukung.
  • Mengimpor ke, dan mengekspor dari, akun penyimpanan yang telah menonaktifkan akses kunci bersama tidak didukung saat menggunakan portal Azure. Untuk mengimpor ke, atau mengekspor dari, akun penyimpanan dengan akses kunci bersama yang dinonaktifkan, gunakan Azure CLI, PowerShell, atau REST API.