Bagikan melalui


Mengonfigurasi akun dan izin layanan Windows untuk ekstensi Azure untuk SQL Server

Berlaku untuk:SQL Server

Artikel ini mencantumkan izin yang diberikan ekstensi Azure untuk SQL Server ke NT Service\SQLServerExtension akun saat Anda menggunakan hak istimewa paling sedikit untuk instans SQL Server yang diaktifkan oleh Azure Arc. Dengan konfigurasi hak istimewa paling sedikit, ekstensi hanya memberikan izin yang diperlukan saat Anda mengaktifkan fitur di portal Microsoft Azure.

Note

NT Authority\System harus memiliki akses untuk mengubah izin pada direktori dan kunci registri yang tercantum. Akses ini diperlukan sehingga dapat memberikan akses yang NT Authority\System diperlukan ke NT Service\SqlServerExtension akun untuk mode hak istimewa paling sedikit.

Overview

Saat Anda menyambungkan SQL Server ke Azure Arc dengan hak istimewa paling sedikit diaktifkan, ekstensi Azure Arc memberikan akun layanannya, NT SERVICE\SQLServerExtension, hanya izin yang dibutuhkan setiap fitur saat Anda mengaktifkan fitur tersebut. Ekstensi secara otomatis menghapus izin tersebut jika Anda menonaktifkan fitur tersebut. Jika fitur tidak aktif, ekstensi tidak memberikan izin apa pun untuk fitur tersebut.

Mengatur izin untuk akun agen secara manual tidak didukung.

Note

Saat ini, konfigurasi dengan hak istimewa paling sedikit tidak diterapkan secara default.

Server yang ada dengan versi 1.1.2859.223 atau lebih tinggi pada akhirnya akan diterapkan konfigurasi dengan hak akses paling rendah. Ekstensi ini dirilis pada November 2024. Untuk mencegah penerapan otomatis prinsip hak istimewa paling sedikit, blokir peningkatan ekstensi setelah 1.1.2859.223.

Bagian hak istimewa SQL berdasarkan fitur menjelaskan izin yang diberikan ekstensi saat Anda mengaktifkan fitur berikut:

Izin direktori

Jalur direktori Memerlukan izin Details Feature
<SystemDrive>\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SQLServer Kontrol penuh DLL terkait ekstensi dan file EXE. Default
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\RuntimeSettings Kontrol penuh File pengaturan ekstensi. Default
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status Kontrol penuh File status ekstensi. Default
C:\ProgramData\GuestConfig\extension_logs\Microsoft.AzureData.WindowsAgent.SqlServer Kontrol penuh File log ekstensi. Default
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status\HeartBeat.Json Kontrol penuh File heartbeat ekstensi. Default
%ProgramFiles%\Sql Server Extension Kontrol penuh File layanan ekstensi. Default
<SystemDrive>\Windows\system32\extensionUpload Kontrol penuh Diperlukan untuk menulis file penggunaan yang diperlukan untuk penagihan. Default
<SystemDrive>\Windows\system32\ExtensionHandler.log Kontrol penuh Folder pra-log dibuat oleh ekstensi. Default
<ProgramData>\AzureConnectedMachineAgent\Config Read Direktori file konfigurasi Arc. Default
C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft SQL Server Extension Agent Kontrol penuh Diperlukan untuk menulis laporan penilaian dan status. Default
Direktori log SQL (sebagaimana diatur dalam registri) 1 :
C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\log
Read Diperlukan untuk mengekstrak info SQL vCores dari log SQL. Default
Direktori cadangan SQL (sebagaimana diatur dalam registri) 1 :
C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\Backup
ReadAndExecute/Write /Delete Diperlukan untuk Pencadangan Backup

1 Untuk informasi selengkapnya, lihat Lokasi File dan Pemetaan Registri.

Izin registri

Kunci dasar: HKEY_LOCAL_MACHINE

Kunci registri Izin yang diperlukan Details Feature
SOFTWARE\Microsoft\Microsoft SQL Server Read Baca properti SQL Server seperti installedInstances. Default
SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRegistryName>\MSSQLSERVER Kontrol penuh ID Microsoft Entra dan Purview. Microsoft Entra ID

Purview
SOFTWARE\Microsoft\SystemCertificates Kontrol penuh Diperlukan untuk ID Microsoft Entra. Microsoft Entra ID
SYSTEM\CurrentControlSet\Services Read Nama akun SQL Server. Default
SOFTWARE\Microsoft\AzureDefender\SQL Read Status Azure Defender dan waktu pembaruan terakhir. Default
SOFTWARE\Microsoft\SqlServerExtension Kontrol penuh Nilai terkait ekstensi. Default
SOFTWARE\Policies\Microsoft\Windows Baca dan Tulis Mengaktifkan pembaruan windows otomatis melalui ekstensi. Pembaruan otomatis

Izin grup

NT Service\SQLServerExtension ditambahkan ke aplikasi ekstensi agen Hibrid. Ini memungkinkan jabat tangan Azure Instance Metadata Service (IMDS) untuk mengambil token identitas terkelola sumber daya Mesin yang diperlukan untuk berkomunikasi ke layanan sarana data Azure seperti Data Processing Service (DPS) dan titik akhir telemetri untuk penggunaan penagihan, log ekstensi, dan pengumpulan data dasbor pemantauan.

Izin SQL

Akun NT Service\SQLServerExtension ditambahkan:

  • Sebagai login SQL ke semua instans yang saat ini ada di komputer
  • Sebagai pengguna di setiap database

Ekstensi ini juga memberikan izin ke objek instans dan database saat fitur diaktifkan.

Note

Izin minimum bergantung pada fitur yang diaktifkan. Ekstensi memperbarui izin saat tidak lagi diperlukan. Ini memberikan izin yang diperlukan saat Anda mengaktifkan fitur.

NT Service\SQLServerExtension detail izin akun

Jalur Registri Persetujuan Risiko terkait pada izin jika akun disusupi NT Service\SQLServerExtension
SOFTWARE\Microsoft\Microsoft SQL Server Read Ekstensi dapat melihat versi SQL Server mana yang diinstal.
SOFTWARE\Microsoft\Microsoft SQL Server\\MSSQLSERVER Kontrol penuh Hanya diperlukan saat autentikasi Microsoft Entra atau Purview diaktifkan. Ekstensi dapat mengubah konfigurasi SQL Server.
SOFTWARE\Microsoft\SystemCertificates Kontrol penuh Hanya diperlukan saat autentikasi Microsoft Entra diaktifkan. Ekstensi dapat menggantikan otoritas sertifikat akar tepercaya.
SYSTEM\CurrentControlSet\Services Read Ekstensi dapat melihat nama akun layanan.
SOFTWARE\Microsoft\AzureDefender\SQL Read Ekstensi dapat mempelajari status Pertahanan Microsoft dan waktu pembaruan.
SOFTWARE\Microsoft\SqlServerExtension Kontrol penuh Ekstensi dapat mengubah pengaturan ekstensi.
SOFTWARE\Policies\Microsoft\Windows Baca dan Tulis Hanya diperlukan saat Pembaruan otomatis diaktifkan. Ekstensi dapat mengubah kebijakan Windows Update dan menonaktifkan Device Guard, yang mengontrol integritas kode dan keamanan berbasis virtualisasi, paparan yang diperluas karena patch yang terlewat.

Hak istimewa SQL berdasarkan fitur

Tabel berikut ini mencantumkan perilaku default untuk fitur yang mengontrol izin yang diberikan oleh Ekstensi Azure untuk SQL Server:

Feature Perilaku bawaan
Izin ekstensi default Diaktifkan secara default
Pencadangan otomatis Dinonaktifkan secara default
Grup ketersediaan Diaktifkan secara default
Penilaian praktik terbaik Dinonaktifkan secara default
Penilaian migrasi Diaktifkan secara default
Migrasi database Diaktifkan secara default
Pemulihan Titik Waktu Tertentu Dinonaktifkan secara default
Purview Dinonaktifkan secara default

Izin ekstensi default

Izin default berikut adalah persyaratan minimum untuk tingkat fungsionalitas dasar yang disediakan oleh Ekstensi Azure untuk SQL Server dan harus diterapkan:

Jenis objek Nama database atau objek Privilege
Database master VIEW DATABASE STATE
Database msdb ALTER ANY SCHEMA
Database msdb CREATE TABLE
Database msdb CREATE TYPE
Database msdb DB DATA READER
Database msdb DB DATA WRITER
Database msdb EXECUTE
Database msdb SELECT dbo.backupfile
Database msdb SELECT dbo.backupmediaset
Database msdb SELECT dbo.backupmediafamily
Database msdb SELECT dbo.backupset
Database msdb SELECT dbo.syscategories
Database msdb SELECT dbo.sysjobactivity
Database msdb SELECT dbo.sysjobhistory
Database msdb SELECT dbo.sysjobs
Database msdb SELECT dbo.sysjobsteps
Database msdb SELECT dbo.syssessions
Database msdb SELECT dbo.sysoperators
Database msdb SELECT dbo.suspectpages
Server CONNECT ANY DATABASE
Server CONNECT SQL
Server VIEW ANY DATABASE
Server VIEW ANY DEFINITION
Server VIEW SERVER STATE

Pencadangan Otomatis

Pencadangan otomatis dinonaktifkan secara default. Ekstensi ini memberikan izin pencadangan ke database apa pun yang mengaktifkan pencadangan otomatis. Mengaktifkan fitur pencadangan juga memungkinkan fitur pemulihan point-in-time , sehingga izin untuk membuat database juga diberikan.

Jika fitur diaktifkan, ekstensi secara otomatis memberikan izin berikut:

Jenis objek Nama database atau objek Privilege
Database Semua basis data DB BACKUP OPERATOR
Server CREATE ANY DATABASE
Server master DB CREATOR

Kelompok Ketersediaan

Fitur penemuan dan manajemen grup ketersediaan seperti failover diaktifkan secara default, tetapi Anda dapat menonaktifkannya melalui AvailabilityGroupDiscovery bendera fitur.

Jika fitur diaktifkan, ekstensi secara otomatis memberikan izin berikut:

Jenis objek Nama database atau objek Privilege
Server ALTER ANY AVAILABILITY GROUP
Server VIEW ANY DEFINITION

Penilaian praktik terbaik

Penilaian praktik terbaik dinonaktifkan secara default.

Jika fitur diaktifkan, ekstensi secara otomatis memberikan izin berikut:

Jenis objek Nama database atau objek Privilege
Database master SELECT
Database master VIEW DATABASE STATE
Database msdb SELECT
Server VIEW ANY DATABASE
Server VIEW ANY DEFINITION
Server VIEW SERVER STATE
StoredProcedure EnumErrorLogsSP EXECUTE
StoredProcedure ReadErrorLogsSP EXECUTE

Migrasi database

Fitur Migrasi database diaktifkan secara default, dan hanya memerlukan izin yang tercantum dalam izin ekstensi default, meskipun beberapa izin yang digunakan oleh fitur Migrasi database diberikan izin just-in-time saat tindakan migrasi tertentu dilakukan.

Tindakan berikut memerlukan izin tambahan yang diberikan ekstensi just-in-time:

Note

Pengguna dengan SqlServerAvailabilityGroups_CreateManagedInstanceLinkizin , SqlServerAvailabilityGroups_failoverMiLink, dan SqlServerAvailabilityGroups_deleteMiLink di Azure dapat melakukan tindakan pada halaman Migrasi database selama proses migrasi yang meningkatkan izin SQL Server dari akun yang digunakan oleh ekstensi, termasuk peran .sysadmin

Pada langkah Migrasi data , ekstensi memberikan izin just-in-time saat Anda memilih Mulai migrasi data pada tab Tinjau + Buat untuk migrasi tautan Instans Terkelola. Akun layanan memerlukan izin yang ditinggikan untuk mengonfigurasi grup ketersediaan terdistribusi. Ini mencabut izin setelah grup ketersediaan terdistribusi dibuat, dan penyebaran yang terlihat di portal Microsoft Azure dalam status selesai. Jika migrasi lain berjalan pada saat yang sama, ekstensi tidak mencabut izin hingga grup ketersediaan terdistribusi terakhir dibuat.

Tindakan untuk membuat migrasi tautan Instans Terkelola memperoleh izin berikut selama durasi permintaan pembuatan:

Jenis objek Nama database atau objek Privilege
Server CREATE AVAILABILITY GROUP
Server ALTER ANY AVAILABILITY GROUP
Server ALTER ANY DATABASE
Server CREATE ENDPOINT
Server ALTER ANY ENDPOINT
Server CREATE CERTIFICATE
Database master IMPERSONATE ON USER::[dbo]

Pada langkah Monitor dan cutover , ekstensi memberikan izin just-in-time saat Anda memilih opsi Selesaikan cutover untuk migrasi tautan Instans Terkelola. Ekstensi mencabut izin setelah cutover selesai.

Tindakan untuk menyelesaikan cutover migrasi tautan Instans Terkelola memperoleh izin berikut selama durasi permintaan lengkap:

Jenis objek Nama database atau objek Privilege
Server CREATE AVAILABILITY GROUP
Server ALTER ANY AVAILABILITY GROUP
Server ALTER ANY DATABASE
Server sysadmin 1

1 Jika hak istimewa paling sedikit diaktifkan, tindakan cutover lengkap juga memberikan sysadmin peran ke NT Service\SQLServerExtension akun selama durasi cutover. Peran ini diperlukan untuk melakukan failover pada grup ketersediaan terdistribusi untuk cutover ke Azure SQL Managed Instance.

Pada langkah Monitor dan cutover, ekstensi memberikan izin just-in-time saat Anda memilih opsi Batalkan migrasi untuk migrasi tautan Instans Terkelola. Ekstensi mencabut izin setelah migrasi dibatalkan.

Tindakan untuk membatalkan migrasi tautan Instans Terkelola memperoleh izin berikut selama durasi permintaan pembatalan:

Jenis objek Nama database atau objek Privilege
Server ALTER ANY AVAILABILITY GROUP
Server ALTER ANY DATABASE
Server sysadmin 1

1 Jika hak istimewa paling sedikit diaktifkan, tindakan pembatalan juga memberikan sysadmin peran ke NT Service\SQLServerExtension akun selama durasi permintaan pembatalan. Peran ini diperlukan saat menghapus grup ketersediaan terdistribusi.

Penilaian migrasi

Penilaian migrasi diaktifkan secara default.

Jika fitur dinonaktifkan, ekstensi mencabut izin berikut kecuali fitur lain yang diaktifkan mengharuskannya:

Jenis objek Nama database atau objek Privilege
Database Semua basis data SELECT sys.sqlexpressiondependencies
Database msdb EXECUTE dbo.agentdatetime
Database msdb SELECT dbo.syscategories
Database msdb SELECT dbo.sysjobhistory
Database msdb SELECT dbo.sysjobs
Database msdb SELECT dbo.sysjobsteps
Database msdb SELECT dbo.sysmailaccount
Database msdb SELECT dbo.sysmailprofile
Database msdb SELECT dbo.sysmailprofileaccount
Database msdb SELECT dbo.syssubsystems

Purview

Fitur Purview dinonaktifkan secara default.

Jika fitur diaktifkan, ekstensi secara otomatis memberikan izin berikut:

Jenis objek Nama database atau objek Privilege
Database Semua basis data EXECUTE
Database Semua basis data SELECT
Server CONNECT ANY DATABASE
Server VIEW ANY DATABASE

Izin SQL just-in-time

Beberapa izin SQL hanya ditetapkan pada saat mereka diperlukan untuk melakukan tindakan tertentu, dan dicabut segera setelah operasi yang memerlukan izin selesai. Jika pencabutan gagal dijalankan, pekerjaan pembersihan latar belakang yang berjalan setiap 50 menit secara otomatis mencabut izin yang telah menjadi basi.

Izin just-in-time ditetapkan ke akun layanan:

  • NT Service\SQLServerExtension jika hak istimewa paling sedikit diaktifkan
  • Akun Sistem Lokal jika hak istimewa paling sedikit dinonaktifkan.

Saat ini, fitur berikut menggunakan izin just-in-time:

Izin tambahan

  • Izin ke akun layanan untuk mengakses layanan ekstensi dan mengonfigurasi pemulihan otomatis.
  • Hak masuk sebagai layanan ke akun layanan.