Condividi tramite


Configurare account di servizio e autorizzazioni di Windows

Ogni servizio in SQL Server rappresenta un processo o un set di processi destinato a gestire l'autenticazione delle operazioni di SQL Server con Windows. Questo argomento descrive la configurazione predefinita dei servizi in questa versione di SQL Server e le opzioni di configurazione per i servizi DI SQL Server che è possibile impostare durante e dopo l'installazione di SQL Server.

Contenuto

Questo argomento è suddiviso nelle sezioni seguenti:

Servizi installati tramite SQL Server

A seconda dei componenti selezionati, durante l'installazione di SQL Server vengono installati i servizi seguenti:

  • Sql Server Database Services : servizio per il motore di database relazionale di SQL Server. Il file eseguibile è <MSSQLPATH>\MSSQL\Binn\sqlservr.exe.

  • SQL Server Agent : esegue processi, monitora SQL Server, genera avvisi e abilita l'automazione di alcune attività amministrative. Il servizio SQL Server Agent è presente, ma è disabilitato nelle istanze di SQL Server Express. Il file eseguibile è <MSSQLPATH>\MSSQL\Binn\sqlagent.exe.

  • Analysis Services : fornisce funzionalità di elaborazione analitica online (OLAP) e data mining per applicazioni di business intelligence. Il file eseguibile è <MSSQLPATH>\OLAP\Bin\msmdsrv.exe.

  • Reporting Services : gestisce, esegue, crea, pianificazioni e recapita report. Il file eseguibile è <MSSQLPATH>\Reporting Services\ReportServer\Bin\ReportingServicesService.exe.

  • Integration Services: offre supporto per la gestione per l'archiviazione e l'esecuzione dei pacchetti di Integration Services . Il percorso eseguibile è <MSSQLPATH>\120\DTS\Binn\MsDtsSrvr.exe

  • SQL Server Browser : servizio di risoluzione dei nomi che fornisce informazioni di connessione di SQL Server per i computer client. Il percorso dell'eseguibile è c:\Programmi (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe

  • Ricerca full-text: crea rapidamente indici full-text su contenuto e proprietà di dati strutturati e semistrutturati per fornire filtri di documenti e word break per SQL Server.

  • Writer SQL : consente alle applicazioni di backup e ripristino di operare nel framework del servizio Copia Shadow del volume (VSS).

  • SQL Server Riesecuzione distribuita Controller: fornisce l'orchestrazione di riproduzione della traccia in più computer client Riesecuzione distribuita.

  • SQL Server Riesecuzione distribuita Client: uno o più computer client Riesecuzione distribuita che interagiscono con un controller Riesecuzione distribuita per simulare carichi di lavoro simultanei in un'istanza di SQL Server motore di database.

Proprietà e configurazione dei servizi

Gli account di avvio usati per avviare ed eseguire SQL Server possono essere account utente di dominio, account utente locali, account dei servizi gestiti, account virtuali oppure account di sistema predefiniti. Per essere avviato ed eseguito, ogni servizio in SQL Server deve disporre di un account di avvio configurato durante l'installazione.

Questa sezione descrive gli account che possono essere configurati per avviare i servizi di SQL Server, i valori predefiniti usati dal programma di installazione di SQL Server, il concetto di SID per servizio, le opzioni di avvio e la configurazione del firewall.

Account di servizio predefiniti

Nella tabella sono vengono elencati gli account di servizio predefiniti usati dall'installazione quando si istallano tutti i componenti. Gli account predefiniti elencati sono gli account consigliati, ad eccezione dei casi indicati.

Server autonomo o controller di dominio

Componente Windows Server 2008 Windows 7 e Windows Server 2008 R2 e versioni successive
Motore di database NETWORK SERVICE Account virtuale *
SQL Server Agent NETWORK SERVICE Account virtuale *
SSAS NETWORK SERVICE Account virtuale *
SSIS NETWORK SERVICE Account virtuale *
SSRS NETWORK SERVICE Account virtuale *
Controller di Riesecuzione distribuita di SQL Server NETWORK SERVICE Account virtuale *
Client Riesecuzione distribuita di SQL Server NETWORK SERVICE Account virtuale *
Utilità di avvio FD (ricerca full-text) LOCAL SERVICE Account virtuale
SQL Server Browser LOCAL SERVICE LOCAL SERVICE
SQL Server VSS Writer LOCAL SYSTEM LOCAL SYSTEM

* Quando sono necessarie risorse esterne al computer SQL Server, Microsoft consiglia di usare un account del servizio gestito configurato con i privilegi minimi necessari.

Istanza del cluster di failover di SQL Server

Componente Windows Server 2008 Windows Server 2008 R2
Motore di database Nessuno. Fornire un account utente di dominio . Fornire un account utente di dominio .
SQL Server Agent Nessuno. Fornire un account utente di dominio . Fornire un account utente di dominio .
SSAS Nessuno. Fornire un account utente di dominio . Fornire un account utente di dominio .
SSIS NETWORK SERVICE Account virtuale
SSRS NETWORK SERVICE Account virtuale
Utilità di avvio FD (ricerca full-text) LOCAL SERVICE Account virtuale
SQL Server Browser LOCAL SERVICE LOCAL SERVICE
SQL Server VSS Writer LOCAL SYSTEM LOCAL SYSTEM

Modifica delle proprietà dell'account

Importante

  • Usare sempre strumenti di SQL Server, ad esempio Gestione configurazione SQL Server, per modificare l'account usato dai servizi Motore di database di SQL Server o SQL Server Agent oppure per modificare la password per l'account. Oltre alla modifica del nome dell'account, Gestione configurazione SQL Server consente di eseguire operazioni di configurazione aggiuntive, quali l'aggiornamento dell'archivio di sicurezza locale di Windows, tramite cui viene protetta la chiave master del servizio per il motore di database Altri strumenti, ad esempio Gestione controllo servizi di Windows, consentono di modificare il nome dell'account, ma non tutte le impostazioni necessarie.
  • Per le istanze di Analysis Services distribuite in una farm di SharePoint, usare sempre Amministrazione centrale SharePoint per modificare gli account server per le applicazioni di servizio PowerPivot e il servizio Analysis Services. Quando si usa Amministrazione centrale, le impostazioni e le autorizzazioni associate vengono aggiornate per l'uso delle nuove informazioni sull'account.
  • Per modificare le opzioni di Reporting Services, usare il relativo strumento di configurazione.

Nuovi tipi di account disponibili con Windows 7 e Windows Server 2008 R2

Windows 7 e Windows Server 2008 R2 offrono due nuovi tipi di account del servizio denominati account del servizio gestito e account virtuali. Gli account del servizio gestito e gli account virtuali sono progettati per fornire applicazioni cruciali come SQL Server con l'isolamento dei propri account, eliminando al tempo stesso la necessità di un amministratore di amministrare manualmente il nome dell'entità servizio (SPN) e le credenziali per questi account. Inoltre, grazie a questi account, la gestione a lungo termine di utenti di account di servizio, di password e di nomi SPN è più semplice.

  • Account del servizio gestiti

    Un account del servizio gestito è un tipo di account di dominio creato e gestito dal controller di dominio. Viene assegnato al computer di un singolo membro per l'esecuzione di un servizio e la password viene gestita automaticamente dal controller di dominio. Non è possibile usare un account del servizio gestito per accedere a un computer, tuttavia tale account può essere usato da un computer per l'avvio di un servizio Windows. Un account del servizio gestito consente di registrare un nome dell'entità servizio (SPN) con Active Directory Un account del servizio gestito è denominato con un suffisso $ , ad esempio DOMAIN\ACCOUNTNAME$. Quando si specifica un account del servizio gestito, lasciare la password vuota. Dal momento che un account del servizio gestito viene assegnato a un singolo computer, non può essere usato in nodi diversi di un cluster Windows.

    Nota

    Questo tipo di account deve essere creato in Active Directory dall'amministratore di dominio prima che possa essere usato dal programma di installazione di SQL Server per i servizi SQL Server.

  • Account del servizio gestito di gruppo

    Un account del servizio gestito di gruppo è un account del servizio gestito per più server. Windows gestisce un account del servizio per i servizi in esecuzione in un gruppo di server. Active Directory aggiorna automaticamente la password dell'account del servizio gestito di gruppo senza riavviare i servizi. È possibile configurare i servizi di SQL Server per l'uso di un'entità account del servizio gestita del gruppo. A partire da SQL Server 2014, SQL Server supporta gli account del servizio gestito del gruppo per le istanze autonome.

    Per usare un account del servizio gestito di gruppo per SQL Server 2014 o versioni successive, il sistema operativo deve essere Windows Server 2012 R2 o versioni successive. I server con Windows Server 2012 R2 richiedono l'applicazione di KB 2998082 in modo che i servizi possano accedere senza interruzioni immediatamente dopo una modifica della password.

    Per altre informazioni, vedere Account dei servizi gestiti di gruppo

    Nota

    L'account del servizio gestito del gruppo deve essere creato in Active Directory dall'amministratore di dominio prima che il programma di installazione di SQL Server possa usarlo per i servizi di SQL Server.

  • Account virtuali

    Gli account virtuali a partire da Windows Server 2008 R2 e Windows 7 sono account locali gestiti che forniscono le funzionalità seguenti per semplificare l'amministrazione dei servizi. L'account virtuale è gestito automaticamente e consente di accedere alla rete in un ambiente di dominio. Se il valore predefinito viene usato per gli account del servizio durante l'installazione di SQL Server, viene usato un account virtuale usando il nome dell'istanza come nome del servizio, nel formato NT SERVICE\<SERVICENAME.> I servizi eseguiti come account virtuali accedono alle risorse di rete usando le credenziali dell'account computer nel formato domain_name computer_name>\>$<.< Quando si specifica un account virtuale per avviare SQL Server, lasciare vuoto il campo della password. Se tramite l'account virtuale non è possibile registrare il nome dell'entità servizio (SPN), registrarlo manualmente. Per altre informazioni sulla registrazione manuale di un SPN, vedere Registrazione manuale del nome SPN.

    Nota

    Non è possibile usare gli account virtuali per l'istanza del cluster di failover di SQL Server, perché l'account virtuale non ha lo stesso SID in ogni nodo del cluster.

    Nella tabella seguente sono elencati esempi di nomi di account virtuali.

    Service Nome dell'account virtuale
    Istanza predefinita del servizio motore di database NT SERVICE\MSSQLSERVER
    Istanza denominata di un servizio di motore di database denominato PAYROLL NT SERVICE\MSSQL$PAYROLL
    Servizio SQL Server Agent nell'istanza predefinita di SQL Server NT SERVICE\SQLSERVERAGENT
    Servizio SQL Server Agent in un'istanza di SQL Server denominata PAYROLL NT SERVICE\SQLAGENT$PAYROLL

Per altre informazioni sugli account dei servizi gestiti e sugli account virtuali, vedere la sezione Concetti relativi agli account dei servizi gestiti e agli account virtuali nella pagina Guida dettagliata agli account di servizio e la pagina relativa alle domande frequenti sugli account dei servizi gestiti.

Nota sulla sicurezza: eseguire sempre i servizi di SQL Server usando i diritti utente più bassi possibili. Quando possibile, usare un account del servizio gestito o virtuale. Quando l'account del servizio gestito e gli account virtuali non sono possibili, usare un account utente o un account di dominio con privilegi limitati specifici anziché un account condiviso per i servizi di SQL Server. assegnando account distinti ai diversi servizi SQL Server. Non concedere autorizzazioni aggiuntive all'account del servizio SQL Server o ai gruppi di servizi. Le autorizzazioni verranno concesse mediante l'appartenenza a un gruppo o direttamente a un SID del servizio, se quest'ultimo è supportato.

Avvio automatico

Oltre agli account utente, ogni servizio dispone di tre stati possibili di avvio controllabili dagli utenti:

  • Disabilitato Il servizio è installato ma non è attualmente in esecuzione.

  • Manuale Il servizio è installato ma verrà avviato solo quando le relative funzionalità saranno necessarie per un altro servizio o un'altra applicazione.

  • Automatico Il servizio viene avviato automaticamente dal sistema operativo.

Lo stato di avvio viene selezionato durante l'installazione. Quando si installa un'istanza denominata, il servizio SQL Server Browser deve essere impostato per l'avvio automatico.

Configurazione dei servizi durante l'installazione automatica

Nella tabella seguente vengono indicati i servizi SQL Server configurabili durante l'installazione. Per le installazioni automatiche, è possibile usare le opzioni in un file di configurazione o al prompt dei comandi.

Nome del servizio SQL Server Commutatori per installazioniautomatiche 1
MSSQLSERVER SQLSVCACCOUNT, SQLSVCPASSWORD, SQLSVCSTARTUPTYPE
SQLServerAgent2 AGTSVCACCOUNT, AGTSVCPASSWORD, AGTSVCSTARTUPTYPE
MSSQLServerOLAPService ASSVCACCOUNT, ASSVCPASSWORD, ASSVCSTARTUPTYPE
ReportServer RSSVCACCOUNT, RSSVCPASSWORD, RSSVCSTARTUPTYPE
Integration Services ISSVCACCOUNT, ISSVCPASSWORD, ISSVCSTARTUPTYPE
Controller di Riesecuzione distribuita di SQL Server DRU_CTLR, CTLRSVCACCOUNT, CTLRSVCPASSWORD, CTLRSTARTUPTYPE, CTLRUSERS
Client Riesecuzione distribuita di SQL Server DRU_CLT, CLTSVCACCOUNT, CLTSVCPASSWORD, CLTSTARTUPTYPE, CLTCTLRNAME, CLTWORKINGDIR, CLTRESULTDIR

1Per altre informazioni e sintassi di esempio per le installazioni automatiche, vedere Installare SQL Server 2014 dal prompt dei comandi.

2Il servizio SQL Server Agent è disabilitato nelle istanze di SQL Server Express e SQL Server Express con Servizi avanzati.

Porte del firewall

Nella maggior parte dei casi, al momento dell'installazione iniziale, è possibile connettersi al motore di database mediante strumenti quali SQL Server Management Studio installati nello stesso computer di SQL Server. Il programma di installazione di SQL Server non apre le porte in Windows Firewall. Connessioni da altri computer potrebbero non essere possibili finché il motore di database non è configurato per essere in ascolto su una porta TCP e la porta appropriata non viene aperta per le connessioni in Windows Firewall. Per altre informazioni, vedere Configurare Windows Firewall per consentire l'accesso a SQL Server.

Autorizzazioni del servizio

In questa sezione vengono descritte le autorizzazioni configurate dal programma di installazione di SQL Server per il SID per servizio dei servizi DI SQL Server.

Configurazione e controllo di accesso del servizio

SQL Server 2014 consente al SID per servizio per ogni servizio di fornire l'isolamento e la difesa dei servizi in profondità. Il SID per servizio deriva dal nome del servizio ed è univoco per il servizio. Ad esempio, un nome SID del servizio per il servizio motore di database potrebbe essere NT Service\MSSQL$<InstanceName.> Attraverso l'isolamento, è possibile accedere a oggetti specifici anche se non vengono eseguiti in un account con privilegi elevati e senza indebolire la sicurezza dell'oggetto. Mediante una voce di controllo di accesso contenente un SID del servizio, un servizio SQL Server può limitare l'accesso alle proprie risorse.

Nota

In Windows 7 e Windows Server 2008 R2 (e versioni successive) il SID per servizio può essere l'account virtuale usato dal servizio.

Per la maggior parte dei componenti, l'elenco di controllo di accesso (ACL) per l'account per servizio viene configurato direttamente da SQL Server, quindi è possibile modificare l'account di servizio senza dover ripetere il processo ACL per le risorse.

Quando si installa SQL Server Analysis Services, vengono creati un SID per servizio per il servizio Analysis Services Viene creato un gruppo locale di Windows, denominato in base al formato SQLServerMSASUser$nome_computer$nome_istanza. Al nome SID per servizio NT SERVICE\MSSQLServerOLAPService viene concessa l'appartenenza al gruppo locale di Windows e a tale gruppo vengono concesse le autorizzazioni appropriate nell'elenco ACL. Se l'account usato per avviare il servizio Analysis Services viene modificato, Gestione configurazione SQL Server deve modificare alcune autorizzazioni di Windows (ad esempio il diritto di accedere come servizio), ma le autorizzazioni assegnate al gruppo di Windows locale saranno comunque disponibili senza alcun aggiornamento, perché il SID per servizio non è stato modificato. Questo metodo consente di rinominare il servizio Analysis Services durante gli aggiornamenti.

Durante l'installazione di SQL Server, il programma di installazione di SQL Server crea gruppi di Windows locali per SSAS e il servizio SQL Server Browser. Per tali servizi, in SQL Server viene configurato l'elenco ACL per i gruppi locali di Windows.

A seconda della configurazione del servizio, l'account del servizio o il SID del servizio viene aggiunto come membro del gruppo di servizi durante l'installazione o l'aggiornamento.

Privilegi e diritti di Windows

L'account assegnato per l'avvio di un servizio deve disporre delle autorizzazioni di avvio, arresto e pausa per il servizio, che verranno assegnate automaticamente dal programma di installazione di SQL Server. Installare innanzitutto gli strumenti di amministrazione remota del server (RSAT). Per informazioni vedere la pagina relativa agli strumenti di amministrazione remota del server per Windows 7.

Nella tabella seguente vengono mostrate le autorizzazioni richieste dal programma di installazione di SQL Server per i SID per servizio o per i gruppi locali di Windows usati dai componenti di SQL Server.

Servizio di SQL Server Autorizzazioni concesse dal programma di installazione di SQL Server
Motore di database di SQL Server:

Tutti i diritti vengono concessi al SID per servizio. Istanza predefinita: NT SERVICE\MSSQLSERVER. Istanza denominata: **NT SERVICE\MSSQL$**InstanceName.)
Accesso come servizio (SeServiceLogonRight)

Sostituzione di token a livello di processo (SeAssignPrimaryTokenPrivilege)

Ignorare controllo incrociato (SeChangeNotifyPrivilege)

Regolazione quote di memoria per un processo (SeIncreaseQuotaPrivilege)

Autorizzazione all'avvio del writer SQL

Autorizzazione di lettura del servizio Registro eventi

Autorizzazione di lettura del servizio RPC (Remote Procedure Call)
SQL Server Agent: 1

Tutti i diritti vengono concessi al SID per servizio. Istanza predefinita: NT Service\SQLSERVERAGENT. Istanza denominata: NT Service\SQLAGENT$InstanceName.)
Accesso come servizio (SeServiceLogonRight)

Sostituzione di token a livello di processo (SeAssignPrimaryTokenPrivilege)

Ignorare controllo incrociato (SeChangeNotifyPrivilege)

Regolazione quote di memoria per un processo (SeIncreaseQuotaPrivilege)
SSAS:

Tutti i diritti vengono concessi a un gruppo di Windows locale. Istanza predefinita: SQLServerMSASUser$ComputerName$MSSQLSERVER. Istanza denominata: SQLServerMSASUser$ComputerName$InstanceName. Istanza di PowerPivot per SharePoint: SQLServerMSASUser$ComputerName$PowerPivot.
Accesso come servizio (SeServiceLogonRight)

Solo per tabulare:

Aumento di un working set di processo (SeIncreaseWorkingSetPrivilege)

Regolazione limite risorse memoria per un processo (SeIncreaseQuotaSizePrivilege)

Blocco di pagine in memoria (SeLockMemoryPrivilege) - Necessario solo se il paging è disattivato completamente.

Solo per installazioni di cluster di failover:

Aumento della priorità di pianificazione (SeIncreaseBasePriorityPrivilege)
SSRS:

Tutti i diritti vengono concessi al SID per servizio. Istanza predefinita: NT SERVICE\ReportServer. Istanza denominata: NT SERVICE\$InstanceName.)
Accesso come servizio (SeServiceLogonRight)
SSIS:

Tutti i diritti vengono concessi al SID per servizio. Istanza predefinita e istanza denominata: NT SERVICE\MsDtsServer120. Integration Services non dispone di un processo separato per un'istanza denominata.
Accesso come servizio (SeServiceLogonRight)

Autorizzazione di scrittura sul registro eventi applicazioni

Ignorare controllo incrociato (SeChangeNotifyPrivilege)

Rappresenta un client dopo l'autenticazione (SeImpersonatePrivilege)
Ricerca full-text:

Tutti i diritti vengono concessi al SID per servizio. Istanza predefinita: NT Service\MSSQLFDLauncher. Istanza denominata: NT Service\ MSSQLFDLauncher$InstanceName.)
Accesso come servizio (SeServiceLogonRight)

Regolazione quote di memoria per un processo (SeIncreaseQuotaPrivilege)

Ignorare controllo incrociato (SeChangeNotifyPrivilege)
SQL Server Browser:

Tutti i diritti vengono concessi a un gruppo di Windows locale. Istanza predefinita o denominata: SQLServer2005SQLBrowserUser$ComputerName. SQL Server Browser non dispone di un processo separato per un'istanza denominata.
Accesso come servizio (SeServiceLogonRight)
SQL Server VSS Writer:

Tutti i diritti vengono concessi al SID per servizio. Istanza predefinita o denominata: NT Service\SQLWriter. SQL Server VSS Writer non dispone di un processo separato per un'istanza denominata.
Il servizio SQLWriter è in esecuzione con l'account LOCAL SYSTEM che dispone di tutte le autorizzazioni necessarie. L'installazione di SQL Server non controlla o concede le autorizzazioni per questo servizio.
Controller di Riesecuzione distribuita di SQL Server: Accesso come servizio (SeServiceLogonRight)
Client Riesecuzione distribuita di SQL Server: Accesso come servizio (SeServiceLogonRight)

1Il servizio SQL Server Agent è disabilitato nelle istanze di SQL Server Express.

Autorizzazioni del file system concesse ai SID per servizio SQL Server o a gruppi locali di Windows

Gli account del servizio di SQL Server devono disporre dell'accesso alle risorse. Gli elenchi di controllo di accesso sono impostati per il SID per servizio o per il gruppo locale di Windows.

Importante

Per le installazioni di cluster di failover, le risorse presenti in dischi condivisi devono essere impostate su un elenco di controllo di accesso per un account locale.

Nella tabella seguente sono indicati gli elenchi di controllo di accesso impostati dal programma di installazione di SQL Server.

Account del servizio per File e cartelle Accesso
MSSQLServer Instid\MSSQL\backup Controllo completo
Instid\MSSQL\binn Lettura, Esecuzione
Instid\MSSQL\data Controllo completo
Instid\MSSQL\FTData Controllo completo
Instid\MSSQL\Install Lettura, Esecuzione
Instid\MSSQL\Log Controllo completo
Instid\MSSQL\Repldata Controllo completo
120\shared Lettura, Esecuzione
Instid\MSSQL\Template Data (solo SQL Server Express) Lettura
SQLServerAgent1 Instid\MSSQL\binn Controllo completo
Instid\MSSQL\binn Controllo completo
Instid\MSSQL\Log Lettura, Scrittura, Eliminazione, Esecuzione
120\com Lettura, Esecuzione
120\shared Lettura, Esecuzione
120\shared\Errordumps Lettura, Scrittura
ServerName\EventLog Controllo completo
FTS Instid\MSSQL\FTData Controllo completo
Instid\MSSQL\FTRef Lettura, Esecuzione
120\shared Lettura, Esecuzione
120\shared\Errordumps Lettura, Scrittura
Instid\MSSQL\Install Lettura, Esecuzione
Instid\MSSQL\jobs Lettura, Scrittura
MSSQLServerOLAPService 120\shared\ASConfig Controllo completo
Instid\OLAP Lettura, Esecuzione
Instid\Olap\Data Controllo completo
Instid\Olap\Log Lettura, Scrittura
Instid\OLAP\Backup Lettura, Scrittura
Instid\OLAP\Temp Lettura, Scrittura
120\shared\Errordumps Lettura, Scrittura
ReportServer Instid\Reporting Services\Log Files Lettura, Scrittura, Eliminazione
Instid\Reporting Services\ReportServer Lettura, Esecuzione
Instid\Reporting Services\ReportServer\global.asax Controllo completo
Instid\Reporting Services\ReportServer\rsreportserver.config Lettura
Instid\Reporting Services\reportManager Lettura, Esecuzione
Instid\Reporting Services\RSTempfiles Lettura, Scrittura, Esecuzione, Eliminazione
120\shared Lettura, Esecuzione
120\shared\Errordumps Lettura, Scrittura
MSDTSServer100 120\dts\binn\MsDtsSrvr.ini.xml Lettura
120\dts\binn Lettura, Esecuzione
120\shared Lettura, Esecuzione
120\shared\Errordumps Lettura, Scrittura
SQL Server Browser 120\shared\ASConfig Lettura
120\shared Lettura, Esecuzione
120\shared\Errordumps Lettura, Scrittura
SQLWriter N/D (eseguito come sistema locale)
Utente Instid\MSSQL\binn Lettura, Esecuzione
Instid\Reporting Services\ReportServer Lettura, Esecuzione, Visualizzazione contenuto cartella
Instid\Reporting Services\ReportServer\global.asax Lettura
Instid\Reporting Services\reportManager Lettura, Esecuzione
Instid\Reporting Services\ReportManager\pages Lettura
Instid\Reporting Services\ReportManager\Styles Lettura
120\dts Lettura, Esecuzione
120\tools Lettura, Esecuzione
100\tools Lettura, Esecuzione
90\tools Lettura, Esecuzione
80\tools Lettura, Esecuzione
120\sdk Lettura
Microsoft SQL Server\120\Setup Bootstrap Lettura, Esecuzione
Controller di Riesecuzione distribuita di SQL Server <ToolsDir>\DReplayController\Log\ (directory vuota) Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayController\DReplayController.exe Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayController\resources|Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayController\{all dlls} Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayController\DReplayController.config Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayController\IRTemplate.tdf Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayController\IRDefinition.xml Lettura, Esecuzione, Visualizzazione contenuto cartella
Client Riesecuzione distribuita di SQL Server <ToolsDir>\DReplayClient\Log|Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayClient\DReplayClient.exe Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayClient\resources|Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayClient\ (all dlls) Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayClient\DReplayClient.config Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayClient\IRTemplate.tdf Lettura, Esecuzione, Visualizzazione contenuto cartella
<ToolsDir>\DReplayClient\IRDefinition.xml Lettura, Esecuzione, Visualizzazione contenuto cartella

1Il servizio SQL Server Agent è disabilitato nelle istanze di SQL Server Express e SQL Server Express con Servizi avanzati.

Se i file di database vengono archiviati in un percorso definito dall'utente, è necessario concedere l'accesso del SID per servizio al percorso in questione. Per altre informazioni sulla concessione di autorizzazioni del file system a un SID per servizio, vedere Configurare le autorizzazioni del file system per l'accesso al motore di database.

Autorizzazioni del file system concesse ad altri account utente o gruppi di Windows

Potrebbe essere necessario concedere alcune autorizzazioni relative al controllo dell'accesso ad account predefiniti o ad altri account del servizio SQL Server. Nella tabella seguente sono inclusi gli elenchi di controllo di accesso aggiuntivi impostati dal programma di installazione di SQL Server.

Componente richiedente Conto Conto risorse Autorizzazioni
MSSQLServer Performance Log Users Instid\MSSQL\binn Visualizzazione contenuto cartella
Performance Monitor Users Instid\MSSQL\binn Visualizzazione contenuto cartella
Performance Log Users, Performance Monitor Users \WINNT\system32\sqlctr120.dll Lettura, Esecuzione
Solo Amministratore \\.\root\Microsoft\SqlServer\ServerEvents\<sql_instance_name>1 Controllo completo
Administrators, Sistema \tools\binn\schemas\sqlserver\2004\07\showplan Controllo completo
Utenti \tools\binn\schemas\sqlserver\2004\07\showplan Lettura, Esecuzione
Reporting Services Account del servizio Windows del server di report <installazione>\Reporting Services\LogFiles DELETE

READ_CONTROL

SYNCHRONIZE

FILE_GENERIC_READ

FILE_GENERIC_WRITE

FILE_READ_DATA

FILE_WRITE_DATA

FILE_APPEND_DATA

FILE_READ_EA

FILE_WRITE_EA

FILE_READ_ATTRIBUTES

FILE_WRITE_ATTRIBUTES
Account del servizio Windows ReportServer, Tutti <install>\Reporting Services\ReportManager, <install>\Reporting Services\ReportManager\Pages\*.*, <install>\Reporting Services\ReportManager\Styles\*.*, <install>\Reporting Services\ReportManager\webctrl_client\1_0\*.* Lettura, Esecuzione
Account del servizio Windows del server di report <installazione>\Reporting Services\ReportServer Lettura
Account del servizio Windows del server di report <installazione>\Reporting Services\ReportServer\global.asax Completo
Tutti <installazione>\Reporting Services\ReportServer\global.asax READ_CONTROL

FILE_READ_DATA

FILE_READ_EA

FILE_READ_ATTRIBUTES
Account di Servizi Windows del server di report <installazione>\Reporting Services\ReportServer\rsreportserver.config DELETE

READ_CONTROL

SYNCHRONIZE

FILE_GENERIC_READ

FILE_GENERIC_WRITE

FILE_READ_DATA

FILE_WRITE_DATA

FILE_APPEND_DATA

FILE_READ_EA

FILE_WRITE_EA

FILE_READ_ATTRIBUTES

FILE_WRITE_ATTRIBUTES
Tutti Chiavi del server di report (hive Instid) Valore query

Enumera sottochiavi

Notify

Controllo di lettura
Utente di Servizi terminali Chiavi del server di report (hive Instid) Valore query

Imposta valore

Creazione sottochiave

Enumerazione sottochiavi

Notify

Elimina

Controllo di lettura
Power Users Chiavi del server di report (hive Instid) Valore query

Imposta valore

Creazione sottochiave

Enumerazione delle sottochiavi

Notify

Elimina

Controllo di lettura

1Si tratta dello spazio dei nomi del provider WMI.

Autorizzazioni del file system correlate a percorsi su disco non comuni

L'unità predefinita dei percorsi di installazione è systemdrive, in genere l'unità C quando vengono installati database tempdb o utente

Unità non predefinita

In caso di installazione in un'unità locale diversa dall'unità predefinita, il SID per servizio deve disporre dell'accesso al percorso dei file. Il programma di installazione di SQL Server eseguirà il provisioning dell'accesso necessario.

Condivisione di rete

Quando i database vengono installati in una condivisione di rete, l'account del servizio deve disporre dell'accesso al percorso dei file dei database utente e tempdb. Il programma di installazione di SQL Server non può effettuare il provisioning dell'accesso a una condivisione di rete. L'utente deve effettuare il provisioning dell'accesso a un percorso del database tempdb per l'account del servizio prima di eseguire l'installazione. Inoltre deve effettuare il provisioning dell'accesso al percorso del database utente prima della creazione del database.

Nota

Gli account virtuali non possono essere autenticati a un percorso remoto. Per tutti gli account virtuali viene usata l'autorizzazione dell'account del computer. Effettuare il provisioning dell'account del computer nel formato domain_name computer_name>\>$<.<

Considerazioni aggiuntive

Nella tabella seguente sono indicate le autorizzazioni necessarie per disporre di funzionalità aggiuntive dei servizi SQL Server.

Servizio/Applicazione Funzionalità Autorizzazione necessaria
SQL Server (MSSQLSERVER) Scrittura in uno slot di posta elettronica utilizzando xp_sendmail. Autorizzazioni di scrittura in rete.
SQL Server (MSSQLSERVER) Eseguire xp_cmdshell per un utente diverso dall'amministratore di SQL Server. Funzionamento come parte del sistema operativo e sostituzione di un token a livello di processo.
SQL Server Agent (MSSQLSERVER) Uso della funzionalità di riavvio automatico. È necessario essere membri del gruppo locale Administrators.
Ottimizzazione guidata motore di database Ottimizza i database per ottenere prestazioni ottimali delle query. Un utente che dispone di credenziali amministrative deve inizializzare l'applicazione al primo utilizzo. In seguito all'inizializzazione, gli utenti dbo possono usare Ottimizzazione guidata motore di database per ottimizzare solo le tabelle di loro proprietà. Per altre informazioni, vedere "Inizializzazione di Ottimizzazione guidata motore di database primo utilizzo" nella documentazione online di SQL Server.

Importante

Prima di aggiornare SQL Server, abilitare l'autenticazione di Windows per SQL Server Agent e verificare la configurazione predefinita richiesta: che l'account del servizio SQL Server Agent sia membro del gruppo SQL Serversysadmin.

Autorizzazioni del Registro di sistema

L'hive del Registro di sistema viene creato in HKLM\Software\Microsoft\Microsoft SQL Server\<Instance_ID> per i componenti con riconoscimento delle istanze. Ad esempio:

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL12. MyInstance

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSASSQL12. MyInstance

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.120

Nel Registro di sistema viene inoltre gestito un mapping degli ID istanza ai nomi delle istanze. Il mapping degli ID istanza in base ai nomi delle istanze è gestito nel modo seguente:

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\SQL] "InstanceName"="MSSQL12"

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Nomi istanza\OLAP] "InstanceName"="MSASSQL12"

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Nomi istanza\RS] "InstanceName"="MSRSSQL12"

WMI

Tramite Strumentazione gestione Windows (WMI) deve essere possibile eseguire la connessione al motore di database. A tale scopo, viene effettuato il provisioning del SID per servizio del provider WMI di Windows (NT SERVICE\winmgmt) nel motore di database.

Per il provider WMI di SQL sono necessarie le autorizzazioni seguenti:

  • Appartenenza ai ruoli predefiniti dei database db_ddladmin o db_owner nel database msdb.

  • AutorizzazioneCREATE DDL EVENT NOTIFICATION nel server.

  • AutorizzazioneCREATE TRACE EVENT NOTIFICATION nel motore di database.

  • AutorizzazioneVIEW ANY DATABASE a livello di server.

    Il programma di installazione di SQL Server crea uno spazio dei nomi WMI di SQL e concede l'autorizzazione di lettura al SID del servizio SQL Server Agent.

Named Pipe

In tutte le installazioni il programma di installazione di SQL Server fornisce l'accesso al motore di database di SQL Server tramite il protocollo Shared Memory, una named pipe locale.

Provisioning in corso

In questa sezione viene descritto il provisioning degli account nei vari componenti di SQL Server.

Provisioning del motore di database

Gli account seguenti vengono aggiunti come account di accesso nel motore di database di SQL Server.

Entità di Windows

Durante l'installazione il programma di installazione di SQL Server richiede che ad almeno un account utente venga assegnato il ruolo predefinito del server sysadmin.

Account SA

L'account sa è sempre presente come account di accesso del motore di database ed è membro del ruolo predefinito del server sysadmin. Quando il motore di database viene installato usando solo l'autenticazione di Windows, ovvero quando l'autenticazione di SQL Server non è abilitata, l'account di accesso sa è ancora presente ma è disabilitato. Per informazioni sull'abilitazione dell'account sa , vedere Modifica della modalità di autenticazione del server.

Account di accesso del SID per servizio SQL Server e privilegi

Viene effettuato il provisioning del SID per servizio del servizio SQL Server come account di accesso motore di database. L'account di accesso del SID per servizio è un membro del ruolo predefinito del server sysadmin .

Account di accesso di SQL Server Agent e privilegi

Il provisioning del SID per servizio del servizio SQL Server Agent viene effettuato come account di accesso del motore di database. L'account di accesso del SID per servizio è un membro del ruolo predefinito del server sysadmin .

Gruppi di disponibilità AlwaysOn e Istanza e privilegi del cluster di failover SQL

Quando si installa il motore di database come gruppi di disponibilità AlwaysOn o Istanza del cluster di failover SQL, viene effettuato il provisioning di LOCAL SYSTEM nel motore di database. All'account di accesso LOCAL SYSTEM viene concessa l'autorizzazione ALTER ANY AVAILABILITY GROUP (per i gruppi di disponibilità AlwaysOn) e l'autorizzazione VIEW SERVER STATE (per l'istanza del cluster di failover SQL).

Writer SQL e privilegi

Il provisioning del SID per servizio del servizio SQL Server VSS Writer viene effettuato come account di accesso del motore di database. L'account di accesso del SID per servizio è un membro del ruolo predefinito del server sysadmin .

WMI di SQL e privilegi

Il programma di installazione di SQL Server effettua il provisioning dell'account NT SERVICE\Winmgmt come account di accesso motore di database e lo aggiunge al ruolo predefinito del server sysadmin.

Provisioning di SSRS

Il provisioning dell'account specificato durante l'installazione viene effettuato come membro del ruolo del database RSExecRole . Per altre informazioni, vedere Configurare l'account del servizio del server di report (Gestione configurazione SSRS).

Provisioning di SSAS

I requisiti dell'account del servizio SQL Server Analysis Services variano a seconda della modalità di distribuzione del server. Se si installa PowerPivot per SharePoint, per l'installazione di SQL Server è necessario configurare il servizio Analysis Services per l'esecuzione con un account di dominio. Gli account di dominio sono necessari per supportare la funzionalità dell'account gestito compilato in SharePoint. Per questo motivo, il programma di installazione di SQL Server non fornisce un account di servizio predefinito, ad esempio un account virtuale, per un'installazione di PowerPivot per SharePoint. Per altre informazioni sul provisioning di PowerPivot per SharePoint, vedere Configurare gli account del servizio PowerPivot.

Per tutte le altre installazioni autonome di SQL Server Analysis Services, è possibile effettuare il provisioning del servizio da eseguire con un account di dominio, un account di sistema predefinito, un account gestito o un account virtuale. Per altre informazioni sul provisioning degli account, vedere Configurare gli account del servizio (Analysis Services).

Per le installazioni cluster, è necessario specificare un account di dominio o un account di sistema predefinito. Per i cluster di failover di SQL Server Analysis Services non sono supportati account gestiti, né account virtuali.

Per tutte le installazioni di SQL Server Analysis Services è necessario specificare un amministratore di sistema dell'istanza di Analysis Services. Il provisioning dei privilegi di amministratore viene effettuato nel ruolo Server di Analysis Services.

Provisioning di SSRS

Il provisioning dell'account specificato durante l'installazione viene effettuato nel motore di database come membro del ruolo del database RSExecRole. Per altre informazioni, vedere Configurare l'account del servizio del server di report (Gestione configurazione SSRS).

Aggiornamento da versioni precedenti

In questa sezione sono descritte le modifiche apportate durante l'aggiornamento da una versione precedente di SQL Server.

  • SQL Server 2014 richiede Windows Server 2008 R2 SP1, Windows Server 2012, Windows 8.0, Windows Server 2012 R2 o Windows 8.1, . Qualsiasi versione precedente di SQL Server in esecuzione in una versione meno recente del sistema operativo deve disporre del sistema operativo aggiornato prima dell'aggiornamento a SQL Server.

  • Durante l'aggiornamento di SQL Server 2005 a SQL Server 2014, il programma di installazione di SQL Server configurerà SQL Server nel modo seguente.

    • Il motore di database viene eseguito con il contesto di sicurezza del SID per servizio. Al SID per servizio è concesso l'accesso alle cartelle file dell'istanza di SQL Server (ad esempio DATA) e alle chiavi del Registro di sistema di SQL Server.

    • Il SID per servizio del motore di database viene sottoposto a provisioning nel motore di database come membro del ruolo predefinito del server sysadmin.

    • I SID per servizio vengono aggiunti ai gruppi di Windows di SQL Server locali, a meno che SQL Server non sia un'istanza del cluster di failover.

    • Le risorse di SQL Server continuano a essere sottoposte a provisioning nei gruppi locali di Windows di SQL Server.

    • Il gruppo windows locale per i servizi viene rinominato da SQLServer2005MSSQLUser$<computer_name<>$instance_name> a SQLServerMSSQLUser$<computer_name<$>instance_name.> I percorsi dei file per database migrati disporranno di voci di controllo di accesso per i gruppi locali di Windows. I percorsi dei file di nuovi database disporranno di voci di controllo di accesso per il SID per servizio.

  • Durante l'aggiornamento da SQL Server 2008, il programma di installazione di SQL Server manterrà il SID di SQL Server 2008 per servizio.

  • Per un'istanza del cluster di failover di SQL Server, verrà conservato l'ace per l'account di dominio configurato per il servizio.

Appendice

In questa sezione sono fornite informazioni aggiuntive sui servizi SQL Server.

Descrizione degli account di servizio

L'account del servizio è l'account usato per avviare un servizio Windows, ad esempio il motore di database di SQL Server.

Account disponibili con qualsiasi sistema operativo

Oltre ai nuovi account del servizio gestito e account virtuali descritti precedentemente, è possibile usare gli account seguenti.

Account utente di dominio

Se tramite il servizio si deve interagire con i servizi di rete, accedere a risorse di dominio come condivisioni di file o se sono usate connessioni server collegate ad altri computer che eseguono SQL Server, è possibile usare un account di dominio con privilegi minimi. Molte attività tra server possono essere eseguite solo con un account utente di dominio. Questo account deve essere creato in precedenza dall'amministrazione del dominio nell'ambiente.

Nota

Se si configura l'applicazione per usare un account di dominio, è possibile isolare i privilegi per l'applicazione, ma è necessario gestire manualmente le password o creare una soluzione personalizzata per tale gestione. Molte applicazioni server utilizzano questa strategia per migliorare la protezione, ma questa strategia richiede un'ulteriore amministrazione e complessità. In queste distribuzioni, gli amministratori di servizio impiegano un tempo considerevole in attività di manutenzione come la gestione delle password di servizio e dei nomi SPN necessari per l'autenticazione Kerberos. Inoltre, le attività di manutenzione possono interrompere il servizio.

Account utente locali

Se il computer non fa parte di un dominio, è consigliabile usare un account utente locale senza le autorizzazioni di amministratore di Windows.

Account del servizio locale

L'account Servizio locale è un account predefinito che dispone dello stesso livello di accesso a risorse e oggetti dei membri del gruppo Users. Questo accesso limitato permette di proteggere il sistema nel caso in cui singoli servizi o processi risultino danneggiati. I servizi eseguiti come account Servizio locale possono accedere alle risorse di rete come sessione Null senza credenziali. Tenere presente che l'account del servizio locale non è supportato per i servizi SQL Server o SQL Server Agent. Il servizio locale non è supportato come account che esegue tali servizi perché è un servizio condiviso e qualsiasi altro servizio in esecuzione nel servizio locale avrà accesso amministratore di sistema a SQL Server. Il nome effettivo dell'account è NT AUTHORITY\LOCAL SERVICE.

Account del servizio di rete

Servizio di rete è un account predefinito che dispone di un livello di accesso più elevato a risorse e oggetti rispetto ai membri del gruppo Users. I servizi eseguiti come account del servizio di rete accedono alle risorse di rete usando le credenziali dell'account computer nel formato domain_name computer_name>\>$<.< Il nome effettivo dell'account è NT AUTHORITY\NETWORK SERVICE.

Account di sistema locale

L'account di sistema locale è un account predefinito con privilegi molto elevati. Dispone di privilegi estesi sul sistema locale e opera come il computer sulla rete. Il nome effettivo dell'account è NT AUTHORITY\SYSTEM.

Identificazione dei servizi specifici, e non specifici, dell'istanza

I servizi specifici dell'istanza sono associati a un'istanza specifica di SQL Server e dispongono di hive del Registro di sistema propri. È possibile installare più copie di servizi specifici dell'istanza eseguendo il programma di installazione di SQL Server per ciascun componente o servizio. I servizi non specifici dell'istanza vengono condivisi tra tutte le istanze installate di SQL Server. Tali servizi non sono associati a un'istanza specifica, vengono installati solo una volta e non possono essere installati in modalità side-by-side.

Tra i servizi specifici dell'istanza disponibili in SQL Server sono inclusi i seguenti:

  • SQL Server

  • SQL Server Agent

    Tenere presente che il servizio SQL Server Agent è disabilitato nelle istanze di SQL Server Express e SQL Server Express con Servizi avanzati.

  • Analysis Services 1

  • Reporting Services

  • Ricerca full-text

Tra i servizi non specifici dell'istanza disponibili in SQL Server sono inclusi i seguenti:

  • Integration Services

  • SQL Server Browser

  • Writer SQL

1Analysis Services in modalità integrata SharePoint viene eseguito come 'PowerPivot' come singola istanza denominata. Il nome dell'istanza è fisso. Non è possibile specificare un nome diverso. È possibile installare una sola istanza di Analysis Services in esecuzione come 'PowerPivot' in ciascun server fisico.

Nomi dei servizi localizzati

Nella tabella seguente sono illustrati i nomi dei servizi visualizzati dalle versioni localizzate di Windows.

Lingua Nome del servizio locale Nome del servizio di rete Nome del sistema locale Nome del gruppo amministrativo
italiano

Cinese semplificato

Cinese tradizionale

Coreano

Giapponese
NT AUTHORITY\LOCAL SERVICE NT AUTHORITY\NETWORK SERVICE NT AUTHORITY\SYSTEM BUILTIN\Administrators
Tedesco NT-AUTORITÄT\LOKALER DIENST NT-AUTORITÄT\NETZWERKDIENST NT-AUTORITÄT\SYSTEM VORDEFINIERT\Administratoren
Francese AUTORITE NT\SERVICE LOCAL AUTORITE NT\SERVICE RÉSEAU AUTORITE NT\SYSTEM BUILTIN\Administrators
Italiano NT AUTHORITY\SERVIZIO LOCALE NT AUTHORITY\SERVIZIO DI RETE NT AUTHORITY\SYSTEM BUILTIN\Administrators
Spagnolo NT AUTHORITY\SERVICIO LOC NT AUTHORITY\SERVICIO DE RED NT AUTHORITY\SYSTEM BUILTIN\Administradores
Russo NT AUTHORITY\LOCAL SERVICE NT AUTHORITY\NETWORK SERVICE NT AUTHORITY\SYSTEM BUILTIN\Администраторы

Considerazioni sulla sicurezza per un'installazione di SQL Server

Percorsi dei file per le istanze predefinite e denominate di SQL Server

Installazione di Master Data Services