Bagikan melalui


Peran kustom untuk migrasi SQL Server ke Azure SQL Managed Instance menggunakan ADS

Artikel ini menjelaskan cara menyiapkan peran kustom di migrasi database Azure untuk SQL Server. Peran kustom dikonfigurasi hanya dengan izin yang diperlukan untuk memulai dan menjalankan migrasi menggunakan instans Azure Database Migration Service, yang menargetkan Azure SQL Managed Instance. Untuk menyediakan instans baru Azure Database Migration Service, pengguna harus diberi peran Pemilik atau Kontributor di tingkat langganan.

Gunakan bagian AssignableScopes string JSON definisi peran untuk mengontrol tempat izin muncul di UI Tambahkan penetapan peran di portal Azure. Untuk menghindari kekacauan UI dengan peran tambahan, Anda mungkin ingin menentukan peran pada tingkat grup sumber daya, atau bahkan tingkat sumber daya. Sumber daya yang diterapkan peran kustom tidak melakukan penetapan peran aktual.

{
    "properties": {
        "roleName": "DmsCustomRoleDemoForMI",
        "description": "",
        "assignableScopes": [
            "/subscriptions/<storageSubscription>/resourceGroups/<storageAccountRG>",
            "/subscriptions/<ManagedInstanceSubscription>/resourceGroups/<managedInstanceRG>",
            "/subscriptions/<DMSSubscription>/resourceGroups/<dmsServiceRG>"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.Storage/storageAccounts/read",
                    "Microsoft.Storage/storageAccounts/listkeys/action",
                    "Microsoft.Storage/storageAccounts/blobServices/read",
                    "Microsoft.Storage/storageAccounts/blobServices/write",
                    "Microsoft.Storage/storageAccounts/blobServices/containers/read",
                    "Microsoft.Sql/managedInstances/read",
                    "Microsoft.Sql/managedInstances/write",
                    "Microsoft.Sql/managedInstances/databases/read",
                    "Microsoft.Sql/managedInstances/databases/write",
                    "Microsoft.Sql/managedInstances/databases/delete",
                    "Microsoft.DataMigration/locations/operationResults/read",
                    "Microsoft.DataMigration/locations/operationStatuses/read",
                    "Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read",
                    "Microsoft.DataMigration/databaseMigrations/write",
                    "Microsoft.DataMigration/databaseMigrations/read",
                    "Microsoft.DataMigration/databaseMigrations/delete",
                    "Microsoft.DataMigration/databaseMigrations/cancel/action",
                    "Microsoft.DataMigration/databaseMigrations/cutover/action",
                    "Microsoft.DataMigration/sqlMigrationServices/write",
                    "Microsoft.DataMigration/sqlMigrationServices/delete",
                    "Microsoft.DataMigration/sqlMigrationServices/read",
                    "Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action",
                    "Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action",
                    "Microsoft.DataMigration/sqlMigrationServices/deleteNode/action",
                    "Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action",
                    "Microsoft.DataMigration/sqlMigrationServices/listMigrations/read",
                    "Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read",
                    "Microsoft.DataMigration/SqlMigrationServices/tasks/read",
                    "Microsoft.DataMigration/SqlMigrationServices/tasks/write",
                    "Microsoft.DataMigration/SqlMigrationServices/tasks/delete"
                ],
                "notActions": [],
                "dataActions": [
                  "Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read"
                ],
                "notDataActions": []
            }
        ]
    }
}

Anda dapat menggunakan portal Azure, Azure PowerShell, Azure CLI, atau Azure REST API untuk membuat peran.

Untuk informasi selengkapnya, lihat Membuat atau memperbarui peran kustom Azure menggunakan peran kustom portal Azure dan Azure.

Nota

Saat bermigrasi ke Azure SQL Managed Instance atau Azure SQL Virtual Machine melalui portal Microsoft Azure, pastikan pengguna yang masuk memiliki akses Storage Blob Data Reader pada kontainer blob yang berisi file cadangan. Izin ini diperlukan untuk mencantumkan folder dan file dalam kontainer blob selama penyiapan migrasi melalui portal Microsoft Azure saja.

Deskripsi izin yang diperlukan untuk bermigrasi ke Azure SQL Managed Instance

Tindakan izin Deskripsi
Microsoft.Storage/storageAccounts/read Mengembalikan daftar akun penyimpanan atau mendapatkan properti untuk akun penyimpanan tertentu.
Microsoft.Storage/storageAccounts/listkeys/action Mengembalikan kunci akses untuk akun penyimpanan tertentu.
Microsoft.Storage/storageAccounts/blobServices/read Mencantumkan layanan blob.
Microsoft.Storage/storageAccounts/blobServices/write Mengembalikan hasil properti layanan blob put.
Microsoft.Storage/storageAccounts/blobServices/containers/read Mengembalikan daftar kontainer.
Microsoft.Sql/managedInstances/read Mengembalikan daftar instans terkelola atau mendapatkan properti untuk instans terkelola yang ditentukan.
Microsoft.Sql/managedInstances/write Membuat instans terkelola dengan parameter yang ditentukan atau memperbarui properti atau tag untuk instans terkelola yang ditentukan.
Microsoft.Sql/managedInstances/databases/read Mendapatkan database terkelola yang sudah ada.
Microsoft.Sql/managedInstances/databases/write Membuat database atau memperbarui database yang ada.
Microsoft.Sql/managedInstances/databases/delete Menghapus database terkelola yang sudah ada.
Microsoft.DataMigration/locations/operationResults/read Dapatkan status operasi jangka panjang yang terkait dengan respons 202 Diterima.
Microsoft.DataMigration/locations/operationStatuses/read Dapatkan status operasi jangka panjang yang terkait dengan respons 202 Diterima.
Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read Ambil Hasil Operasi Layanan.
Microsoft.DataMigration/databaseMigrations/write Membuat atau Memperbarui sumber daya Migrasi Database.
Microsoft.DataMigration/databaseMigrations/read Ambil sumber daya Migrasi Database.
Microsoft.DataMigration/databaseMigrations/delete Menghapus sumber daya Migrasi Database.
Microsoft.DataMigration/databaseMigrations/cancel/action Hentikan migrasi yang sedang berlangsung untuk database.
Microsoft.DataMigration/databaseMigrations/cutover/action Operasi migrasi online langsung untuk database.
Microsoft.DataMigration/sqlMigrationServices/write Membuat properti baru atau ubah Layanan yang ada
Microsoft.DataMigration/sqlMigrationServices/delete Hapus Layanan yang ada.
Microsoft.DataMigration/sqlMigrationServices/read Ambil detail Layanan Migrasi.
Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action Ambil Daftar Kunci Autentikasi.
Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action Regenerasi Kunci Autentikasi.
Microsoft.DataMigration/sqlMigrationServices/deleteNode/action Batalkan pendaftaran simpul runtime integrasi.
Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action Mencantumkan Data Pemantauan untuk semua migrasi.
Microsoft.DataMigration/sqlMigrationServices/listMigrations/read Mencantumkan migrasi untuk pengguna.
Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read Ambil Data Pemantauan.
Microsoft.SqlVirtualMachine/sqlVirtualMachines/read Ambil detail komputer virtual SQL.
Microsoft.SqlVirtualMachine/sqlVirtualMachines/write Buat properti baru atau ubah komputer virtual SQL yang ada.
Microsoft.DataMigration/SqlMigrationServices/tasks/read Detail Tugas Layanan Migrasi
Microsoft.DataMigration/SqlMigrationServices/tasks/write Membuat atau Memperbarui Tugas Layanan Migrasi
Microsoft.DataMigration/SqlMigrationServices/tasks/delete Menghapus Tugas Layanan Migrasi
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read Membaca kontainer blob di akun Azure Storage

Anda bisa mendapatkan contoh skrip untuk membuat login dan menyediakannya dengan izin yang diperlukan, untuk VMware, Hyper-V, atau server fisik, menggunakan autentikasi Windows atau autentikasi SQL Server.

Penetapan peran

Untuk menetapkan peran kepada pengguna atau ID aplikasi:

  1. Di portal Azure, buka sumber daya.

  2. Di menu sebelah kiri, pilih Kontrol akses (IAM), lalu gulir untuk menemukan peran kustom yang Anda buat.

  3. Pilih peran yang akan ditetapkan, pilih ID pengguna atau aplikasi, lalu simpan perubahan.

    ID pengguna atau aplikasi sekarang muncul di tab Penetapan peran.