Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
si applica a:SQL Server
Questo articolo elenca le autorizzazioni concesse dall'estensione azure per SQL Server all'account NT Service\SQLServerExtension quando si usano privilegi minimi per le istanze di SQL Server abilitate da Azure Arc. Con la configurazione con privilegi minimi, l'estensione concede solo le autorizzazioni necessarie quando si abilitano le funzionalità nel portale di Azure.
Note
NT Authority\System deve avere accesso per modificare le autorizzazioni per le directory e le chiavi del Registro di sistema elencate. Questo accesso è necessario in modo che NT Authority\System possa concedere l'accesso necessario all'account per la NT Service\SqlServerExtension modalità con privilegi minimi.
Overview
Quando si connette SQL Server ad Azure Arc con privilegi minimi abilitati, l'estensione Azure Arc concede l'account del servizio, NT SERVICE\SQLServerExtension, solo le autorizzazioni necessarie per ogni funzionalità quando si abilita tale funzionalità. L'estensione rimuove automaticamente tali autorizzazioni se si disabilita la funzionalità. Se una funzionalità è inattiva, l'estensione non concede alcuna autorizzazione per tale funzionalità.
L'impostazione manuale delle autorizzazioni per l'account agente non è supportata.
Note
Attualmente, la configurazione con privilegi minimi non viene applicata per impostazione predefinita.
I server esistenti con versione dell'estensione 1.1.2859.223 o maggiore avranno eventualmente applicata la configurazione con privilegi minimi. Questa estensione è stata rilasciata a novembre 2024. Per impedire l'applicazione automatica dei privilegi minimi, bloccare gli aggiornamenti dell'estensione dopo 1.1.2859.223.
La sezione Privilegi SQL per funzionalità illustra le autorizzazioni concesse dall'estensione quando si abilitano le funzionalità seguenti:
- Autorizzazioni predefinite per l'estensione
- Backup automatici
- Gruppi di disponibilità
- Valutazione delle procedure consigliate
- Valutazione della migrazione
- Migrazione del database
- Ripristino temporizzato
- Purview
Autorizzazioni della directory
| Percorso directory | Autorizzazioni necessarie | Details | Feature |
|---|---|---|---|
<SystemDrive>\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SQLServer |
Controllo completo | DLL e file EXE correlati all'estensione. | Default |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\RuntimeSettings |
Controllo completo | File delle impostazioni di estensione. | Default |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status |
Controllo completo | File di stato dell'estensione. | Default |
C:\ProgramData\GuestConfig\extension_logs\Microsoft.AzureData.WindowsAgent.SqlServer |
Controllo completo | File di log di estensione. | Default |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status\HeartBeat.Json |
Controllo completo | File heartbeat di estensione. | Default |
%ProgramFiles%\Sql Server Extension |
Controllo completo | File del servizio di estensione. | Default |
<SystemDrive>\Windows\system32\extensionUpload |
Controllo completo | Obbligatorio per scrivere il file di utilizzo necessario per la fatturazione. | Default |
<SystemDrive>\Windows\system32\ExtensionHandler.log |
Controllo completo | Cartella di pre-log creata dall'estensione. | Default |
<ProgramData>\AzureConnectedMachineAgent\Config |
Read | Directory dei file di configurazione arc. | Default |
C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft SQL Server Extension Agent |
Controllo completo | Obbligatorio per scrivere report e stato di valutazione. | Default |
Directory di log SQL (come impostato nel Registro di sistema) 1 :C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\log |
Read | Obbligatorio per estrarre le informazioni di SQL vCore dai log SQL. | Default |
Directory di backup SQL (come impostato nel Registro di sistema) 1 :C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\Backup |
ReadAndExecute/Write /Delete | Obbligatorio per i backup | Backup |
1 Per altre informazioni, vedere Percorsi dei file e Mapping del Registro di sistema.
Autorizzazioni del Registro di sistema
Chiave di base: HKEY_LOCAL_MACHINE
| Chiave di Registro | Autorizzazione necessaria | Details | Feature |
|---|---|---|---|
SOFTWARE\Microsoft\Microsoft SQL Server |
Read | Leggere le proprietà di SQL Server, ad esempio installedInstances. |
Default |
SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRegistryName>\MSSQLSERVER |
Controllo completo | Microsoft Entra ID e Purview. | Microsoft Entra ID Purview |
SOFTWARE\Microsoft\SystemCertificates |
Controllo completo | Obbligatorio per Microsoft Entra ID. | Microsoft Entra ID |
SYSTEM\CurrentControlSet\Services |
Read | Nome dell'account di SQL Server. | Default |
SOFTWARE\Microsoft\AzureDefender\SQL |
Read | Stato di Azure Defender e ora dell'ultimo aggiornamento. | Default |
SOFTWARE\Microsoft\SqlServerExtension |
Controllo completo | Valori correlati all'estensione. | Default |
SOFTWARE\Policies\Microsoft\Windows |
Lettura e scrittura | Abilitazione dell'aggiornamento automatico di Windows tramite estensione. | Aggiornamenti automatici |
Autorizzazioni per i gruppi
NT Service\SQLServerExtension viene aggiunto alle applicazioni di estensione dell'agente ibrido. Ciò consente all'handshake del servizio metadati dell'istanza di Azure (IMDS) di recuperare il token di identità gestito delle risorse del computer necessario per comunicare con i servizi del piano dati di Azure, ad esempio il servizio di elaborazione dati (DPS) e l'endpoint di telemetria per l'utilizzo della fatturazione, i log delle estensioni e il monitoraggio della raccolta dei dati del dashboard.
Autorizzazioni SQL
L'account NT Service\SQLServerExtension viene aggiunto:
- Come account di accesso SQL a tutte le istanze attualmente presenti nel computer
- Come utente in ogni database
L'estensione concede anche le autorizzazioni per gli oggetti di istanza e di database quando sono abilitate le funzionalità.
Note
Le autorizzazioni minime dipendono dalle funzionalità abilitate. L'estensione aggiorna le autorizzazioni quando non sono più necessarie. Concede le autorizzazioni necessarie quando si abilitano le funzionalità.
NT Service\SQLServerExtension dettagli delle autorizzazioni dell'account
| Percorso del Registro | Autorizzazione | Rischio associato per le autorizzazioni se l'account NT Service\SQLServerExtension è compromesso |
|---|---|---|
SOFTWARE\Microsoft\Microsoft SQL Server |
Read | L'estensione può vedere quali versioni di SQL Server sono installate. |
SOFTWARE\Microsoft\Microsoft SQL Server\\MSSQLSERVER |
Controllo completo | È necessario solo quando è abilitata l'autenticazione di Microsoft Entra o Purview. L'estensione potrebbe modificare la configurazione di SQL Server. |
SOFTWARE\Microsoft\SystemCertificates |
Controllo completo | È necessario solo quando è abilitata l'autenticazione di Microsoft Entra. L'estensione potrebbe sostituire le autorità di certificazione radice attendibili. |
SYSTEM\CurrentControlSet\Services |
Read | L'estensione può visualizzare i nomi degli account del servizio. |
SOFTWARE\Microsoft\AzureDefender\SQL |
Read | L'estensione può apprendere lo stato e gli orari di aggiornamento di Microsoft Defender. |
SOFTWARE\Microsoft\SqlServerExtension |
Controllo completo | L'estensione potrebbe modificare le impostazioni dell'estensione. |
SOFTWARE\Policies\Microsoft\Windows |
Lettura e scrittura | È necessario solo quando l'aggiornamento automatico è abilitato. L'estensione potrebbe modificare i criteri di Windows Update e disabilitare Device Guard, che controlla l'integrità del codice e la sicurezza basata sulla virtualizzazione, l'esposizione estesa a causa di patch perse. |
Privilegi SQL per funzionalità
La tabella seguente elenca il comportamento predefinito per le funzionalità che controllano le autorizzazioni concesse dall'estensione di Azure per SQL Server:
| Feature | Comportamento predefinito |
|---|---|
| Autorizzazioni di estensione predefinite | Abilitato per impostazione predefinita |
| Backup automatici | Disattivato per impostazione predefinita |
| Gruppi di disponibilità | Abilitato per impostazione predefinita |
| Valutazione delle procedure consigliate | Disattivato per impostazione predefinita |
| Valutazione della migrazione | Abilitato per impostazione predefinita |
| Migrazione del database | Abilitato per impostazione predefinita |
| Ripristino temporizzato | Disattivato per impostazione predefinita |
| Purview | Disattivato per impostazione predefinita |
Autorizzazioni di estensione predefinite
Le autorizzazioni predefinite seguenti sono il requisito minimo per il livello di funzionalità di base fornito dall'estensione di Azure per SQL Server e devono essere applicate:
| Tipo di oggetto | Nome database o oggetto | 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 |
Backup automatizzati
I backup automatici sono disabilitati per impostazione predefinita. L'estensione concede le autorizzazioni di backup a qualsiasi database con backup automatizzati abilitati. L'abilitazione della funzionalità di backup abilita anche la funzionalità di ripristino temporizzato , pertanto viene concessa anche l'autorizzazione per creare un database.
Se le funzionalità sono abilitate, l'estensione concede automaticamente le autorizzazioni seguenti:
| Tipo di oggetto | Nome database o oggetto | Privilege |
|---|---|---|
| Database | Tutti i database | DB BACKUP OPERATOR |
| Server | CREATE ANY DATABASE |
|
| Server | master |
DB CREATOR |
Gruppi di disponibilità
Le funzionalità di individuazione e gestione dei gruppi di disponibilità, ad esempio il failover, sono abilitate per impostazione predefinita, ma è possibile disabilitarle tramite il flag di AvailabilityGroupDiscovery funzionalità.
Se la funzionalità è abilitata, l'estensione concede automaticamente le autorizzazioni seguenti:
| Tipo di oggetto | Nome database o oggetto | Privilege |
|---|---|---|
| Server | ALTER ANY AVAILABILITY GROUP |
|
| Server | VIEW ANY DEFINITION |
Valutazione delle procedure consigliate
La valutazione delle procedure consigliate è disabilitata per impostazione predefinita.
Se la funzionalità è abilitata, l'estensione concede automaticamente le autorizzazioni seguenti:
| Tipo di oggetto | Nome database o oggetto | 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 |
Migrazione del database
La funzionalità Di migrazione del database è abilitata per impostazione predefinita e richiede solo le autorizzazioni elencate nelle autorizzazioni di estensione predefinite, anche se alcune autorizzazioni usate dalla funzionalità Migrazione del database vengono concesse autorizzazioni JUST-In-Time quando viene eseguita un'azione di migrazione specifica.
Le azioni seguenti richiedono autorizzazioni aggiuntive concesse dall'estensione just-in-time:
- Creare una migrazione dei collegamenti a Istanza gestita
- Completare il cutover della migrazione dei collegamenti a Istanza gestita
- Annullare la migrazione del collegamento a Istanza gestita
Note
Gli utenti con SqlServerAvailabilityGroups_CreateManagedInstanceLinkle autorizzazioni , SqlServerAvailabilityGroups_failoverMiLinke SqlServerAvailabilityGroups_deleteMiLink in Azure possono eseguire azioni nella pagina Migrazione del database durante il processo di migrazione che elevano le autorizzazioni di SQL Server dell'account usato dall'estensione, incluso il sysadmin ruolo .
Creare una migrazione dei collegamenti a Istanza gestita
Nel passaggio Eseguire la migrazione dei dati , l'estensione concede le autorizzazioni JIT quando si seleziona Avvia migrazione dei dati nella scheda Rivedi e crea per una migrazione del collegamento a Istanza gestita. L'account del servizio necessita di autorizzazioni elevate per configurare il gruppo di disponibilità distribuito. Revoca le autorizzazioni dopo la creazione del gruppo di disponibilità distribuito e la distribuzione visibile nel portale di Azure è nello stato completato. Se un'altra migrazione è in esecuzione contemporaneamente, l'estensione non revoca le autorizzazioni fino alla creazione dell'ultimo gruppo di disponibilità distribuito.
L'azione per creare una migrazione dei collegamenti a Istanza gestita acquisisce le autorizzazioni seguenti per la durata della richiesta di creazione:
| Tipo di oggetto | Nome database o oggetto | 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] |
Completare il cutover della migrazione dei collegamenti a Istanza gestita
Nel passaggio Monitoraggio e cutover l'estensione concede le autorizzazioni JIT quando si seleziona l'opzione Completa cutover per una migrazione del collegamento a Istanza gestita. L'estensione revoca le autorizzazioni al termine del cutover.
L'azione per completare il cutover di una migrazione dei collegamenti a Istanza gestita acquisisce le autorizzazioni seguenti per la durata della richiesta completa:
| Tipo di oggetto | Nome database o oggetto | Privilege |
|---|---|---|
| Server | CREATE AVAILABILITY GROUP |
|
| Server | ALTER ANY AVAILABILITY GROUP |
|
| Server | ALTER ANY DATABASE |
|
| Server |
sysadmin
1 |
1 Se è abilitato il privilegio minimo, l'azione completa di cutover concede anche il sysadmin ruolo all'account NT Service\SQLServerExtension per la durata del cutover. Questo ruolo è necessario per eseguire il failover del gruppo di disponibilità distribuito per il cutover nell'istanza gestita di SQL di Azure.
Annullare la migrazione del collegamento a Istanza gestita
Nel passaggio Monitoraggio e cutover l'estensione concede le autorizzazioni JIT quando si seleziona l'opzione Annulla migrazione per una migrazione del collegamento a Istanza gestita. L'estensione revoca le autorizzazioni dopo l'annullamento della migrazione.
L'azione per annullare una migrazione del collegamento a Istanza gestita acquisisce le autorizzazioni seguenti per la durata della richiesta di annullamento:
| Tipo di oggetto | Nome database o oggetto | Privilege |
|---|---|---|
| Server | ALTER ANY AVAILABILITY GROUP |
|
| Server | ALTER ANY DATABASE |
|
| Server |
sysadmin
1 |
1 Se è abilitato il privilegio minimo, l'azione di annullamento concede anche il sysadmin ruolo all'account NT Service\SQLServerExtension per la durata della richiesta di annullamento. Questo ruolo è necessario quando si elimina un gruppo di disponibilità distribuito.
Valutazione della migrazione
Le valutazioni della migrazione sono abilitate per impostazione predefinita.
Se la funzionalità è disabilitata, l'estensione revoca le autorizzazioni seguenti, a meno che non siano necessarie altre funzionalità abilitate:
| Tipo di oggetto | Nome database o oggetto | Privilege |
|---|---|---|
| Database | Tutti i database | 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
Le funzionalità di Purview sono disabilitate per impostazione predefinita.
Se la funzionalità è abilitata, l'estensione concede automaticamente le autorizzazioni seguenti:
| Tipo di oggetto | Nome database o oggetto | Privilege |
|---|---|---|
| Database | Tutti i database | EXECUTE |
| Database | Tutti i database | SELECT |
| Server | CONNECT ANY DATABASE |
|
| Server | VIEW ANY DATABASE |
Autorizzazioni SQL JITE
Alcune autorizzazioni SQL vengono assegnate solo al momento in cui sono necessarie per eseguire un'azione specifica e vengono revocate non appena l'operazione che richiede il completamento delle autorizzazioni. Se la revoca non viene eseguita, un processo di pulizia in background che viene eseguito ogni 50 minuti revoca automaticamente le autorizzazioni che sono diventate non aggiornati.
Le autorizzazioni JUST-in-time vengono assegnate all'account del servizio:
-
NT Service\SQLServerExtensionse il privilegio minimo è abilitato - Account di sistema locale se il privilegio minimo è disabilitato.
Attualmente, la funzionalità seguente usa le autorizzazioni JUST-In-Time:
- Migrazione del database quando si usa l'opzione di migrazione del collegamento a Istanza gestita.
Autorizzazioni aggiuntive
- Autorizzazioni per l'account del servizio per accedere al servizio di estensione e configurare la funzionalità di salvataggio automatico.
- Diritti di accesso come servizio per l'account del servizio.