Configurer les comptes de service Windows et les autorisations
Chaque service de SQL Server représente un processus ou un ensemble de processus permettant de gérer l’authentification des opérations SQL Server avec Windows. Cette rubrique décrit la configuration par défaut des services compris dans cette version de SQL Server, ainsi que les options de configuration des services SQL Server que vous pouvez définir pendant et après l’installation de SQL Server.
Contenu
Cette rubrique comprend les sections suivantes :
Services installés par SQL Server
En fonction des composants que vous décidez d’installer, le programme d’installation de SQL Server installe les services suivants :
Services de base de données SQL Server : service pour le Moteur de base de données relationnel SQL Server. Le fichier exécutable est <MSSQLPATH>\MSSQL\Binn\sqlservr.exe.
SQL Server Agent : exécute les travaux, supervise SQL Server, déclenche les alertes et autorise l’automatisation de certaines tâches administratives. Le service SQL Server Agent est présent, mais désactivé sur les instances de SQL Server Express. Le fichier exécutable est <MSSQLPATH>\MSSQL\Binn\sqlagent.exe.
Analysis Services : fournit des fonctionnalités OLAP (traitement analytique en ligne) et d'exploitation de données pour les applications décisionnelles. Le fichier exécutable est <MSSQLPATH>\OLAP\Bin\msmdsrv.exe.
Reporting Services - gère, exécute, crée, planifie et publie les rapports. Le fichier exécutable est <MSSQLPATH>\Reporting Services\ReportServer\Bin\ReportingServicesService.exe.
Integration Services : fournit la prise en charge de la gestion du stockage et de l’exécution des packages Integration Services. Le chemin d’accès exécutable est <MSSQLPATH>\120\DTS\Binn\MsDtsSrvr.exe
SQL Server Browser : service de résolution de noms qui fournit les informations de connexion SQL Server pour les ordinateurs clients. Le chemin d’accès du fichier exécutable est c:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe
Recherche en texte intégral : crée rapidement des index de recherche en texte intégral sur le contenu, et des propriétés de données structurées et semi-structurées pour le filtrage de document et l’analyse lexicale pour SQL Server.
SQL Writer : permet aux applications de sauvegarde et restauration de fonctionner dans l’infrastructure du service de cliché instantané de volume (VSS).
SQL Server Distributed Replay Controller : fournit l’orchestration de relecture de trace sur plusieurs ordinateurs clients Distributed Replay.
SQL Server Distributed Replay Client : un ou plusieurs ordinateurs clients Distributed Replay qui opèrent avec un contrôleur Distributed Replay pour simuler des charges de travail simultanées sur une instance du Moteur de base de données SQL Server.
Propriétés et configuration des services
Les comptes de démarrage utilisés pour démarrer et exécuter SQL Server peuvent être des comptes d’utilisateur de domaine, des comptes d’utilisateur locaux, des comptes de service administrés, des comptes virtuels ou des comptes système intégrés. Pour démarrer et s’exécuter, chaque service dans SQL Server doit avoir un compte de démarrage configuré pendant l’installation.
Cette section décrit les comptes qui peuvent être configurés pour démarrer des services SQL Server, les valeurs par défaut utilisées par le programme d’installation de SQL Server, le concept de SID par service, les options de démarrage et la configuration du pare-feu.
Comptes de service par défaut
Le tableau suivant répertorie les comptes de service par défaut utilisés par le programme d'installation lors de l'installation de tous les composants. Les comptes par défaut répertoriés sont les comptes recommandés, sauf indication contraire.
Serveur autonome ou contrôleur de domaine
Composant | Windows Server 2008 | Windows 7 et Windows Server 2008 R2 et version ultérieure |
---|---|---|
Moteur de base de données | SERVICE RÉSEAU | Compte virtuel * |
SQL Server Agent | SERVICE RÉSEAU | Compte virtuel * |
SSAS | SERVICE RÉSEAU | Compte virtuel * |
SSIS | SERVICE RÉSEAU | Compte virtuel * |
SSRS | SERVICE RÉSEAU | Compte virtuel * |
SQL Server Distributed Replay Controller | SERVICE RÉSEAU | Compte virtuel * |
SQL Server Distributed Replay Client | SERVICE RÉSEAU | Compte virtuel * |
Lanceur FD (recherche en texte intégral) | SERVICE LOCAL | Compte virtuel |
SQL Server Browser | SERVICE LOCAL | SERVICE LOCAL |
Enregistreur VSS SQL Server | SYSTÈME LOCAL | SYSTÈME LOCAL |
* Lorsque des ressources externes à l’ordinateur SQL Server sont nécessaires, Microsoft recommande d’utiliser un compte de service managé (MSA), configuré avec les privilèges minimaux nécessaires.
Instance de cluster de basculement SQL Server
Composant | Windows Server 2008 | Windows Server 2008 R2 |
---|---|---|
Moteur de base de données | Aucun. Fournit un compte d' utilisateur de domaine . | Fournit un compte d' utilisateur de domaine . |
SQL Server Agent | Aucun. Fournit un compte d' utilisateur de domaine . | Fournit un compte d' utilisateur de domaine . |
SSAS | Aucun. Fournit un compte d' utilisateur de domaine . | Fournit un compte d' utilisateur de domaine . |
SSIS | SERVICE RÉSEAU | Compte virtuel |
SSRS | SERVICE RÉSEAU | Compte virtuel |
Lanceur FD (recherche en texte intégral) | SERVICE LOCAL | Compte virtuel |
SQL Server Browser | SERVICE LOCAL | SERVICE LOCAL |
Enregistreur VSS SQL Server | SYSTÈME LOCAL | SYSTÈME LOCAL |
Modification des propriétés de compte
Important
- Utilisez toujours des outils SQL Server, tels que le Gestionnaire de configuration SQL Server, pour modifier le compte utilisé par le Moteur de base de données SQL Server ou les services SQL Server Agent ou pour changer le mot de passe du compte. En plus de changer le nom du compte, le Gestionnaire de configuration SQL Server effectue une configuration supplémentaire pour mettre à jour le magasin de sécurité local Windows qui protège la clé principale du service pour le Moteur de base de données. D'autres outils tels que le Gestionnaire de contrôle de services Windows peuvent modifier le nom du compte mais pas tous les paramètres requis.
- Pour les instances Analysis Services que vous déployez dans une batterie de serveurs SharePoint, utilisez toujours l’Administration centrale de SharePoint pour modifier les comptes de serveur pour les applications de service PowerPivot et le service Analysis Services. Les paramètres et autorisations associés sont mis à jour pour utiliser les nouvelles informations de compte lorsque vous utilisez l'Administration centrale.
- Pour modifier des options Reporting Services, utilisez l'Outil de configuration de Reporting Services.
Nouveaux types de comptes disponibles avec Windows 7 et Windows Server 2008 R2
Windows 7 et Windows Server 2008 R2 disposent de deux nouveaux types de comptes de service appelés des comptes de service administrés (MSA) et des comptes virtuels. Les comptes de service managé et les comptes virtuels sont conçus pour fournir des applications cruciales telles que SQL Server avec l’isolation de leurs propres comptes, tout en éliminant la nécessité pour un administrateur d’administrer manuellement le nom du principal de service (SPN) et les informations d’identification pour ces comptes. Cela simplifie beaucoup la gestion à long terme des utilisateurs des comptes de service, des mots de passe et des SPN.
Comptes de service administrés
Un Compte de service administré (MSA) est un type de compte de domaine créé et a géré par le contrôleur de domaine. Il est affecté à un ordinateur membre unique pour exécuter un service. Le mot de passe est géré automatiquement par le contrôleur de domaine. Vous ne pouvez pas utiliser un MSA pour vous connecter à un ordinateur, mais un ordinateur peut utiliser un MSA pour démarrer un service Windows. Un MSA a la capacité d'enregistrer le Nom de principal du service (SPN) avec l'Active Directory. Un compte MSA est nommé avec un suffixe $ , par exemple DOMAIN\ACCOUNTNAME$. Lorsque vous spécifiez un MSA, laissez le mot de passe vide. Comme un MSA est affecté à un ordinateur unique, il ne peut pas être utilisé sur différents nœuds d'un cluster Windows.
Remarque
Le MSA doit être créé dans Active Directory par l’administrateur de domaine pour que le programme d’installation de SQL Server puisse l’utiliser pour les services SQL Server.
Comptes de service administrés de groupe
Un compte de service administré de groupe est un compte MSA pour plusieurs serveurs. Windows gère un compte de service pour les services en cours d’exécution sur un groupe de serveurs. Active Directory met automatiquement à jour le mot de passe du compte de service administré de groupe sans redémarrer les services. Vous pouvez configurer des services SQL Server pour utiliser un principal de compte de service managé de groupe. À compter de SQL Server 2014, SQL Server prend en charge les comptes de service gérés de groupe pour les instances autonomes.
Pour utiliser un compte de service administré de groupe pour SQL Server 2014 ou version ultérieure, le système d’exploitation doit être Windows Server 2012 R2 ou version ultérieure. Les serveurs avec Windows Server 2012 R2 nécessitent l’application de l’article 2998082 de la Base de connaissances afin que les services puissent se connecter sans interruption immédiatement après la modification du mot de passe.
Pour plus d’informations, consultez Comptes de service administrés de groupe
Remarque
Le compte de service géré de groupe doit être créé dans Active Directory par l’administrateur de domaine avant que l’installation de SQL Server puisse l’utiliser pour les services SQL Server.
-
Les comptes virtuels (à partir de Windows Server 2008 R2 et Windows 7) sont des comptes locaux gérés qui fournissent les fonctionnalités suivantes pour simplifier l’administration du service. Le compte virtuel est géré automatiquement, et le compte virtuel peut accéder au réseau dans un environnement de domaine. Si la valeur par défaut est utilisée pour les comptes de service pendant l’installation de SQL Server, un compte virtuel qui utilise le nom de l’instance comme nom de service est utilisé, au format NT SERVICE\<SERVICENAME>. Les services qui s’exécutent comme comptes virtuels accèdent aux ressources réseau à l’aide des informations d’identification du compte de l’ordinateur au format <domain_name>\<computer_name>$. Quand vous spécifiez un compte virtuel pour démarrer SQL Server, laissez le mot de passe vide. Si le compte virtuel n'inscrit pas le nom de principal du service, inscrivez-le manuellement. Pour plus d’informations sur l’enregistrement manuel d’un SPN, consultez Enregistrement manuel d’un SPN.
Remarque
Les comptes virtuels ne peuvent pas être utilisés pour l’instance de cluster de basculement SQL Server, car le compte virtuel n’aurait pas le même SID sur chaque nœud du cluster.
Le tableau suivant répertorie des exemples de noms du compte virtuels.
Service Nom de compte virtuel Instance par défaut du service du moteur de base de données NT SERVICE\MSSQLSERVER Instance nommée d'un service de Moteur de base de données nommé PAYROLL NT SERVICE\MSSQL$PAYROLL Service SQL Server Agent sur l’instance par défaut de SQL Server NT SERVICE\SQLSERVERAGENT Service SQL Server Agent sur une instance de SQL Server nommée PAYROLL NT SERVICE\SQLAGENT$PAYROLL
Pour plus d’informations sur les comptes de service administrés et les comptes virtuels, consultez la section Concepts liés aux comptes de service administrés et aux comptes virtuels du Guide pas à pas des comptes de service et du Forum aux questions des comptes de service administrés.
Remarque de sécurité : exécutez toujours des services SQL Server à l’aide des droits d’utilisateur les plus bas possibles. Utilisez un compte MSA ou virtuel si possible. Lorsque les comptes MSA et virtuels ne sont pas possibles, utilisez un compte d’utilisateur ou un compte de domaine à faible privilège spécifique au lieu d’un compte partagé pour les services SQL Server. Utilisez des comptes distincts pour différents services SQL Server. N’accordez pas d’autorisations supplémentaires au compte de service SQL Server ou aux groupes de services. Les autorisations seront accordées par le biais de l'appartenance aux groupes ou accordées directement à un SID de service, lorsqu'un SID de service est pris en charge.
Démarrage automatique
Outre le fait que les services doivent posséder des comptes d'utilisateurs, ils ont chacun trois états de démarrage possibles, que les utilisateurs peuvent contrôler :
Désactivé Le service est installé mais pas en cours d'exécution.
Manuel Le service est installé, mais ne démarre que lorsqu'un autre service ou une autre application a besoin de ses fonctionnalités.
Automatique Le service est démarré automatiquement par le système d'exploitation.
L'état de démarrage est sélectionné pendant l'installation. Pendant l’installation d’une instance nommée, le service SQL Server Browser doit être défini pour démarrer automatiquement.
Configuration des services pendant l'installation sans assistance
Le tableau suivant montre les services SQL Server pouvant être configurés pendant l’installation. Pour les installations sans assistance, vous pouvez employer les commutateurs dans un fichier de configuration ou à l'invite de commandes.
Nom du service SQL Server | Commutateurs pour les installationssans assistance 1 |
---|---|
MSSQLSERVER | SQLSVCACCOUNT, SQLSVCPASSWORD, SQLSVCSTARTUPTYPE |
SQLServerAgent2 | AGTSVCACCOUNT, AGTSVCPASSWORD, AGTSVCSTARTUPTYPE |
MSSQLServerOLAPService | ASSVCACCOUNT, ASSVCPASSWORD, ASSVCSTARTUPTYPE |
ReportServer | RSSVCACCOUNT, RSSVCPASSWORD, RSSVCSTARTUPTYPE |
Integration Services | ISSVCACCOUNT, ISSVCPASSWORD, ISSVCSTARTUPTYPE |
SQL Server Distributed Replay Controller | DRU_CTLR, CTLRSVCACCOUNT,CTLRSVCPASSWORD, CTLRSTARTUPTYPE, CTLRUSERS |
SQL Server Distributed Replay Client | DRU_CLT, CLTSVCACCOUNT, CLTSVCPASSWORD, CLTSTARTUPTYPE, CLTCTLRNAME, CLTWORKINGDIR, CLTRESULTDIR |
1Pour plus d’informations et pour obtenir des exemples de syntaxe pour les installations sans assistance, consultez Installer SQL Server 2014 à partir de l’invite de commandes.
2Le service SQL Server Agent est désactivé sur les instances de SQL Server Express et SQL Server Express avec Advanced Services.
Port de pare-feu
Dans la plupart des cas, pendant l’installation initiale, le Moteur de base de données peut être connecté par des outils comme SQL Server Management Studio installés sur le même ordinateur que SQL Server. Le programme d’installation de SQL Server n’ouvre pas les ports dans le pare-feu Windows. Les connexions d'autres ordinateurs peuvent ne pas être possibles tant que le Moteur de base de données n'est pas configuré pour écouter sur un port TCP et tant que le port approprié n'est pas ouvert aux connexions dans le pare-feu Windows. Pour plus d’informations, consultez Configurer le Pare-feu Windows pour autoriser l’accès à SQL Server.
Autorisations de service
Cette section décrit les autorisations configurées par le programme d’installation de SQL Server pour les SID de chaque service SQL Server.
Autorisations de système de fichiers accordées aux autres comptes d’utilisateur ou groupes Windows
Autorisations de système de fichiers pour des emplacements de disque exceptionnels
Configuration du service et contrôle d’accès
SQL Server 2014 permet au SID par service pour chacun de ses services de fournir une isolation et une défense de service en profondeur. Le SID par service est dérivé du nom du service et est propre à ce service. Par exemple, un nom SID de service pour le service Moteur de base de données peut être NT Service\MSSQL$<InstanceName.> L'isolation de service permet l'accès à des objets spécifiques sans devoir exécuter un compte à privilèges élevés ni affaiblir la protection de sécurité de l'objet. Un service SQL Server peut limiter l’accès à ses ressources en utilisant une entrée de contrôle d’accès qui contient un SID de service.
Remarque
Sur Windows 7 et Windows Sever 2008 R2 (et versions ultérieures) le SID par service peut être le compte virtuel utilisé par le service.
Pour la plupart des composants, SQL Server configure directement la liste ACL du compte par service, de sorte que vous pouvez changer le compte de service sans répéter le processus ACL de la ressource.
Lors de l'installation de SSAS, un SID par service est créé pour le service Analysis Services. Un groupe Windows local est créé, nommé au format SQLServerMSASUser$nom_ordinateur$nom_instance. Le SID par service NT SERVICE\MSSQLServerOLAPService peut appartenir au groupe Windows local et le groupe Windows local reçoit les autorisations appropriées dans l’ACL. Si le compte utilisé pour démarrer le service Analysis Services est modifié, Gestionnaire de configuration SQL Server devez modifier certaines autorisations Windows (telles que le droit de se connecter en tant que service), mais les autorisations attribuées au groupe Windows local seront toujours disponibles sans aucune mise à jour, car le SID par service n’a pas changé. Cette méthode permet de renommer le service Analysis Services pendant des mises à niveau.
Pendant l’installation de SQL Server, le programme d’installation de SQL Server crée des groupes Windows locaux pour SSAS et le service SQL Server Browser. Pour ces services, SQL Server configure la liste ACL pour les groupes Windows locaux.
Selon la configuration du service, le compte de service pour un service ou un SID de service est ajouté en tant que membre du groupe de service lors de l'installation ou de la mise à niveau.
Privilèges et droits Windows
Le compte affecté pour démarrer un service a besoin d' autorisations de démarrage, arrêt et pause pour le service. Le programme d’installation de SQL Server les attribue automatiquement. En premier lieu, installez les Outils d'administration de serveur distant. Consultez la rubrique Outils d'administration de serveur distant pour Windows 7.
Le tableau suivant affiche les autorisations que le programme d’installation de SQL Server demande pour les SID par service ou les groupes Windows locaux utilisés par les composants SQL Server.
Service SQL Server | Autorisations accordées par le programme d’installation de SQL Server |
---|---|
Moteur de base de données SQL Server : (Tous les droits sont accordés au SID par service. Instance par défaut : NT SERVICE\MSSQLSERVER. Instance nommée : **NT SERVICE\MSSQL$**InstanceName.) |
Ouvrir une session en tant que service (SeServiceLogonRight) Remplacer un jeton de niveau processus (SeAssignPrimaryTokenPrivilege) Ignorer la vérification transversale (SeChangeNotifyPrivilege) Ajuster les quotas de mémoire pour un processus (SeIncreaseQuotaPrivilege) Autorisation de démarrer SQL Writer Autorisation de lire le service Journal des événements Autorisation de lire le service d'appel de procédure distante (RPC) |
SQL Server Agent : 1 (Tous les droits sont accordés au SID par service. Instance par défaut : NT Service\SQLSERVERAGENT. Instance nommée : NT Service\Service\SQLAGENT$InstanceName.) |
Ouvrir une session en tant que service (SeServiceLogonRight) Remplacer un jeton de niveau processus (SeAssignPrimaryTokenPrivilege) Ignorer la vérification transversale (SeChangeNotifyPrivilege) Ajuster les quotas de mémoire pour un processus (SeIncreaseQuotaPrivilege) |
SSAS : (Tous les droits sont accordés à un groupe Windows local. Instance par défaut : SQLServerMSASUser$ComputerName$MSSQLSERVER. Instance nommée : SQLServerMSASUser$ComputerName InstanceName.$ Instance PowerPivot pour SharePoint : SQLServerMSASUser$ComputerName$PowerPivot.) |
Ouvrir une session en tant que service (SeServiceLogonRight) Tabulaire uniquement : Augmenter une plage de travail de processus (SeIncreaseWorkingSetPrivilege) Ajuster les quotas de mémoire pour un processus (SeIncreaseQuotaSizePrivilege) Verrouiller les pages en mémoire (SeLockMemoryPrivilege) : nécessaire uniquement quand la pagination est totalement désactivée. Installations de cluster de basculement uniquement : Augmenter la priorité de planification (SeIncreaseBasePriorityPrivilege) |
SSRS : (Tous les droits sont accordés au SID par service. Instance par défaut : NT SERVICE\ReportServer. Instance nommée : NT SERVICE\$InstanceName.) |
Ouvrir une session en tant que service (SeServiceLogonRight) |
SSIS : (Tous les droits sont accordés au SID par service. Instance par défaut et instance nommée : NT SERVICE\MsDtsServer120. Integration Services n’a pas de processus distinct pour une instance nommée.) |
Ouvrir une session en tant que service (SeServiceLogonRight) Autorisation d'écrire dans le journal des événements d'application Ignorer la vérification transversale (SeChangeNotifyPrivilege) Emprunter l’identité d’un client après l’authentification (SeImpersonatePrivilege) |
Recherche en texte intégral : (Tous les droits sont accordés au SID par service. Instance par défaut : NT Service\MSSQLFDLauncher. Instance nommée : NT Service\MSSQLFDlauncher$InstanceName.) |
Ouvrir une session en tant que service (SeServiceLogonRight) Ajuster les quotas de mémoire pour un processus (SeIncreaseQuotaPrivilege) Ignorer la vérification transversale (SeChangeNotifyPrivilege) |
SQL Server Browser : (Tous les droits sont accordés à un groupe Windows local. Instance par défaut ou nommée : SQLServer2005SQLBrowserUser$ComputerName. SQL Server Browser n’a pas de processus distinct pour une instance nommée.) |
Ouvrir une session en tant que service (SeServiceLogonRight) |
Enregistreur VSS SQL Server : (Tous les droits sont accordés au SID par service. Instance par défaut ou nommée : NT Service\SQLWriter. SQL Server VSS Writer n’a pas de processus distinct pour une instance nommée.) |
Le service SQLWriter s'exécute sous le compte LOCAL SYSTEM qui a toutes les autorisations requises. Le programme d’installation de SQL Server ne vérifie pas ou n’accorde pas d’autorisations pour ce service. |
SQL Server Distributed Replay Controller : | Ouvrir une session en tant que service (SeServiceLogonRight) |
SQL Server Distributed Replay Client : | Ouvrir une session en tant que service (SeServiceLogonRight) |
1Le service SQL Server Agent est désactivé sur les instances de SQL Server Express.
Autorisations de système de fichiers accordées aux SID par service SQL Server ou aux groupes Windows locaux
Les comptes de service SQL Server doivent avoir accès aux ressources. Les listes de contrôle d'accès sont définies pour le SID par service ou le groupe Windows local.
Important
Pour les installations de clusters de basculement, les ressources des disques partagés doivent être attribuées à la liste ACL d'un compte local.
Le tableau suivant montre les listes ACL définies par le programme d’installation de SQL Server :
Compte de service pour | Fichiers et dossiers | Accès |
---|---|---|
MSSQLServer | Instid\MSSQL\backup | Contrôle total |
Instid\MSSQL\binn | Lecture, exécution | |
Instid\MSSQL\data | Contrôle total | |
Instid\MSSQL\FTData | Contrôle total | |
Instid\MSSQL\Install | Lecture, exécution | |
Instid\MSSQL\Log | Contrôle total | |
Instid\MSSQL\Repldata | Contrôle total | |
120\shared | Lecture, exécution | |
Instid\MSSQL\Template Data (SQL Server Express uniquement) | Lire | |
SQLServerAgent1 | Instid\MSSQL\binn | Contrôle total |
Instid\MSSQL\binn | Contrôle total | |
Instid\MSSQL\Log | Lecture, écriture, exécution, suppression (Read, Write, Execute, Delete) | |
120\com | Lecture, exécution | |
120\shared | Lecture, exécution | |
120\shared\Errordumps | Lire, Écrire | |
ServerName\EventLog | Contrôle total | |
FTS | Instid\MSSQL\FTData | Contrôle total |
Instid\MSSQL\FTRef | Lecture, exécution | |
120\shared | Lecture, exécution | |
120\shared\Errordumps | Lire, Écrire | |
Instid\MSSQL\Install | Lecture, exécution | |
Instid\MSSQL\jobs | Lire, Écrire | |
MSSQLServerOLAPService | 120\shared\ASConfig | Contrôle total |
Instid\OLAP | Lecture, exécution | |
Instid\Olap\Data | Contrôle total | |
Instid\Olap\Log | Lire, Écrire | |
Instid\OLAP\Backup | Lire, Écrire | |
Instid\OLAP\Temp | Lire, Écrire | |
120\shared\Errordumps | Lire, Écrire | |
ReportServer | Instid\Reporting Services\Log Files | Lecture, écriture, suppression |
Instid\Reporting Services\ReportServer | Lecture, exécution | |
Instid\Reporting Services\ReportServer\global.asax | Contrôle total | |
Instid\Reporting Services\ReportServer\rsreportserver.config | Lire | |
Instid\Reporting Services\reportManager | Lecture, exécution | |
Instid\Reporting Services\RSTempfiles | Lecture, écriture, exécution, suppression | |
120\shared | Lecture, exécution | |
120\shared\Errordumps | Lire, Écrire | |
MSDTSServer100 | 120\dts\binn\MsDtsSrvr.ini.xml | Lire |
120\dts\binn | Lecture, exécution | |
120\shared | Lecture, exécution | |
120\shared\Errordumps | Lire, Écrire | |
SQL Server Browser | 120\shared\ASConfig | Lire |
120\shared | Lecture, exécution | |
120\shared\Errordumps | Lire, Écrire | |
SQLWriter | Non applicable (s'exécute en tant que système local) | |
Utilisateur | Instid\MSSQL\binn | Lecture, exécution |
Instid\Reporting Services\ReportServer | Lecture, exécution, listage du contenu des dossiers | |
Instid\Reporting Services\ReportServer\global.asax | Lire | |
Instid\Reporting Services\reportManager | Lecture, exécution | |
Instid\Reporting Services\ReportManager\pages | Lire | |
Instid\Reporting Services\ReportManager\Styles | Lire | |
120\dts | Lecture, exécution | |
120\tools | Lecture, exécution | |
100\tools | Lecture, exécution | |
90\tools | Lecture, exécution | |
80\tools | Lecture, exécution | |
120\sdk | Lire | |
Microsoft SQL Server\120\Setup Bootstrap | Lecture, exécution | |
SQL Server Distributed Replay Controller | <ToolsDir>\DReplayController\Log\ (répertoire vide) | Lecture, exécution, listage du contenu des dossiers |
<ToolsDir>\DReplayController\DReplayController.exe | Lecture, exécution, listage du contenu des dossiers | |
<ToolsDir>\DReplayController\resources|Read, Execute, List Folder Contents | ||
<ToolsDir>\DReplayController\{all dlls} | Lecture, exécution, listage du contenu des dossiers | |
<ToolsDir>\DReplayController\DReplayController.config | Lecture, exécution, listage du contenu des dossiers | |
<ToolsDir>\DReplayController\IRTemplate.tdf | Lecture, exécution, listage du contenu des dossiers | |
<ToolsDir>\DReplayController\IRDefinition.xml | Lecture, exécution, listage du contenu des dossiers | |
SQL Server Distributed Replay Client | <ToolsDir>\DReplayClient\Log|Read, Execute, List Folder Contents | |
<ToolsDir>\DReplayClient\DReplayClient.exe | Lecture, exécution, listage du contenu des dossiers | |
<ToolsDir>\DReplayClient\resources|Read, Execute, List Folder Contents | ||
<ToolsDir>\DReplayClient\ (tous les dll) | Lecture, exécution, listage du contenu des dossiers | |
<ToolsDir>\DReplayClient\DReplayClient.config | Lecture, exécution, listage du contenu des dossiers | |
<ToolsDir>\DReplayClient\IRTemplate.tdf | Lecture, exécution, listage du contenu des dossiers | |
<ToolsDir>\DReplayClient\IRDefinition.xml | Lecture, exécution, listage du contenu des dossiers |
1Le service SQL Server Agent est désactivé sur les instances de SQL Server Express et SQL Server Express avec Advanced Services.
Lorsque des fichiers de base de données sont stockés à un emplacement défini par l'utilisateur, vous devez octroyer l'accès SID par service à cet emplacement. Pour plus d’informations sur l’octroi d’autorisations de système de fichiers à un SID par service, consultez Configurer les autorisations du système de fichiers pour l’accès au moteur de base de données.
Autorisations de système de fichiers accordées aux autres comptes d’utilisateur ou groupes Windows
Certaines autorisations de contrôle d’accès peuvent avoir été accordées à des comptes intégrés ou à d’autres comptes de service SQL Server. Le tableau suivant montre les listes ACL supplémentaires définies par le programme d’installation de SQL Server.
Composant demandeur | Compte | Ressource | Autorisations |
---|---|---|---|
MSSQLServer | Utilisateurs du journal des performances | Instid\MSSQL\binn | Lister le contenu des dossiers |
Utilisateurs de l’Analyseur de performances | Instid\MSSQL\binn | Lister le contenu des dossiers | |
Utilisateurs du journal des performances, Utilisateurs de l'Analyseur de performances | \WINNT\system32\sqlctr120.dll | Lecture, exécution | |
Administrateur uniquement | \\.\root\Microsoft\SqlServer\ServerEvents\<sql_instance_name>1 | Contrôle total | |
Administrateurs, système | \tools\binn\schemas\sqlserver\2004\07\showplan | Contrôle total | |
Utilisateurs | \tools\binn\schemas\sqlserver\2004\07\showplan | Lecture, exécution | |
Reporting Services | Compte Service Windows Report Server | <installer>\Reporting Services\LogFiles | Suppression 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 |
Compte de service Windows Report Server, Tout le monde | <install>\Reporting Services\ReportManager, <install>\Reporting Services\ReportManager\Pages\*.*, <installez>\Reporting Services\ReportManager\Styles\*.*, <install>\Reporting Services\ReportManager\webctrl_client\1_0\*.* | Lecture, exécution | |
Compte Service Windows Report Server | <installer>\Reporting Services\ReportServer | Lire | |
Compte Service Windows Report Server | <installer>\Reporting Services\ReportServer\global.asax | Complète | |
Tout le monde | <installer>\Reporting Services\ReportServer\global.asax | READ_CONTROL FILE_READ_DATA FILE_READ_EA FILE_READ_ATTRIBUTES |
|
Compte Windows Services Report Server | <installer>\Reporting Services\ReportServer\rsreportserver.config | Suppression 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 |
|
Tout le monde | Clés Report Server (ruche Instid) | Demander la valeur Énumérer les sous-clés Notifier Contrôle en lecture |
|
Utilisateur de Terminal Services | Clés Report Server (ruche Instid) | Demander la valeur Définir la valeur Créer une sous-clé Énumérer les sous-clés Notifier DELETE Contrôle en lecture |
|
Utilisateurs avec pouvoir | Clés Report Server (ruche Instid) | Demander la valeur Définir la valeur Créer une sous-clé Énumérer les sous-clés Notifier DELETE Contrôle en lecture |
1Il s’agit de l’espace de noms du fournisseur WMI.
Autorisations de système de fichiers pour des emplacements de disque exceptionnels
Le lecteur par défaut pour les emplacements d’installation est systemdrive, normalement le lecteur C quand des bases de données tempdb ou utilisateur sont installées
Lecteur non défini par défaut
En cas d'installation sur un lecteur local autre que l'unité par défaut, le SID par service doit avoir accès à l'emplacement de fichier. Le programme d’installation de SQL Server provisionne l’accès requis.
Partage réseau
Quand des bases de données sont installées sur un partage réseau, le compte de service doit avoir accès à l’emplacement de fichier des bases de données tempdb et utilisateur. Le programme d’installation de SQL Server ne peut pas provisionner l’accès à un partage réseau. L’utilisateur doit configurer l’accès à un emplacement tempdb pour le compte de service avant d’exécuter le programme d’installation. L'utilisateur doit configurer l'accès à l'emplacement de la base de données d'utilisateur avant de créer la base de données.
Remarque
Les comptes virtuels ne peuvent pas être authentifiés sur un emplacement distant. Tous les comptes virtuels utilisent l'autorisation de compte d'ordinateur. Configurez le compte d’ordinateur au format <nom_domaine>\<computer_name>$.
Considérations supplémentaires
Le tableau suivant indique les autorisations nécessaires pour que les services SQL Server fournissent des fonctionnalités supplémentaires.
Service/Application | Fonctionnalités | Autorisation requise |
---|---|---|
SQL Server (MSSQLSERVER) | Écrire sur MailSlot avec xp_sendmail. | Autorisations d'écriture réseau. |
SQL Server (MSSQLSERVER) | Exécuter xp_cmdshell pour un utilisateur autre qu’un administrateur SQL Server. | Fonctionne comme un composant du système d'exploitation et remplace le jeton de niveau processus. |
Agent SQL Server (MSSQLSERVER) | Utiliser la fonctionnalité de redémarrage automatique. | Doit être membre du groupe local Administrateurs. |
Assistant Paramétrage duMoteur de base de données | Règle les bases de données pour des performances de requête optimales. | À la première utilisation, un utilisateur doté des informations d'identification d'administrateur système doit initialiser l'application. Après l’initialisation, les utilisateurs dbo peuvent utiliser l’Assistant Paramétrage du moteur de base de données pour paramétrer uniquement les tables qui leur appartiennent. Pour plus d’informations, consultez « Initialisation de l’Assistant Paramétrage du moteur de base de données lors de la première utilisation » dans la documentation en ligne de SQL Server. |
Important
Avant de mettre à niveau SQL Server, activez l’authentification Windows pour SQL Server Agent et vérifiez la configuration par défaut requise : que le compte de service SQL Server Agent est membre du groupe SQL Serversysadmin.
Autorisations de Registre
La ruche du Registre est créée sous HKLM\Software\Microsoft\Microsoft SQL Server\<Instance_ID> pour les composants qui prennent les instances en charge. Par exemple
HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL12. MyInstance
HKLM\Software\Microsoft\Microsoft SQL Server\MSASSQL12. MyInstance
HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.120
Le Registre maintient également le mappage d'un ID d'instance sur un nom d'instance. Le mappage de l'ID d'instance sur le nom d'instance se maintient comme suit :
[HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Noms d’instance\SQL] « InstanceName"="MSSQL12 »
[HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Noms d’instances\OLAP] « InstanceName"="MSASSQL12 »
[HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Noms d’instance\RS] « InstanceName"="MSRSSQL12 »
WMI
Windows Management Instrumentation (WMI) doit être en mesure de se connecter au Moteur de base de données. Pour cette prise en charge, le SID par service du fournisseur WMI Windows (NT SERVICE\winmgmt) est configuré dans le Moteur de base de données.
Le fournisseur WMI SQL requiert les autorisations suivantes :
Appartenance aux rôles de base de données fixes db_ddladmin ou db_owner dans la base de données msdb.
AutorisationCREATE DDL EVENT NOTIFICATION dans le serveur.
Autorisation CREATE TRACE EVENT NOTIFICATION dans le Moteur de base de données.
Autorisation de niveau serveurVIEW ANY DATABASE .
Le programme d’installation de SQL Server crée un espace de noms WMI SQL et accorde l’autorisation de lecture au SID de service de SQL Server Agent.
Canaux nommés
Pendant toute l’installation, le programme d’installation de SQL Server fournit l’accès au Moteur de base de données SQL Server avec le protocole de mémoire partagée, qui est un canal nommé local.
Approvisionnement
Cette section décrit comment les comptes sont provisionnés à l’intérieur des divers composants SQL Server.
Configuration du moteur de base de données
Les comptes suivants sont ajoutés en tant que connexions dans le Moteur de base de données SQL Server.
Principaux Windows
Pendant l’installation, le programme d’installation de SQL Server nécessite qu’au moins un compte d’utilisateur soit nommé membre du rôle serveur fixe sysadmin.
Compte sa
Le compte sa est toujours présent sous la forme d'une connexion du Moteur de base de données et est un membre du rôle serveur fixe sysadmin. Lorsque le Moteur de base de données est installé à l’aide de l’authentification Windows uniquement (c’est-à-dire lorsque l’authentification SQL Server n’est pas activée), la connexion sa est toujours présente mais est désactivée. Pour plus d’informations sur l’activation du compte sa , consultez Modifier le mode d’authentification du serveur.
Connexion et privilèges SID par service SQL Server
Le SID par service du service SQL Server est approvisionné en tant que connexion Moteur de base de données. La connexion SID par service est membre du rôle serveur fixe sysadmin .
Connexion et privilèges de SQL Server Agent
Le SID par service du service SQL Server Agent est configuré comme connexion du Moteur de base de données. La connexion SID par service est membre du rôle serveur fixe sysadmin .
Privilèges des Groupes de disponibilité Always On et des instances de cluster de basculement
Lors de l’installation du Moteur de base de données en tant que groupes de disponibilité Always On ou instance de cluster de basculement SQL (SQL FCI), LOCAL SYSTEM est approvisionné dans le Moteur de base de données. La connexion LOCAL SYSTEM reçoit l’autorisation ALTER ANY AVAILABILITY GROUP (pour les groupes de disponibilité Always On) et l’autorisation VIEW SERVER STATE (pour SQL FCI).
Enregistreur et privilèges SQL
Le SID par service du service Enregistreur VSS SQL Server est configuré comme connexion du Moteur de base de données. La connexion SID par service est membre du rôle serveur fixe sysadmin .
WMI et privilèges SQL
Le programme d’installation de SQL Server provisionne le compte NT SERVICE\Winmgmt en tant que connexion Moteur de base de données et l’ajoute au rôle serveur fixe sysadmin.
Approvisionnement SSRS
Le compte spécifié pendant l'installation est approvisionné comme un membre du rôle de base de données RSExecRole . Pour plus d’informations, consultez Configurer le compte de service du serveur de rapports (Gestionnaire de configuration de SSRS).
Approvisionnement SSAS
Les configurations requises pour le compte de service SSAS varient selon le déploiement du serveur. Si vous installez PowerPivot pour SharePoint, le programme d’installation de SQL Server nécessite que vous configuriez le service Analysis Services pour qu’il s’exécute sous un compte de domaine. Les comptes de domaine sont obligatoires pour prendre en charge la fonctionnalité de compte géré intégrée à SharePoint. Pour cette raison, le programme d’installation de SQL Server ne fournit pas de compte de service par défaut, tel qu’un compte virtuel, pour une installation de PowerPivot pour SharePoint. Pour plus d’informations sur la configuration de PowerPivot pour SharePoint, consultez Configuration des comptes de service PowerPivot.
Pour toutes les autres installations SSAS autonomes, vous pouvez configurer le service pour qu'il s'exécute sous un compte de domaine, un compte système intégré, un compte géré ou un compte virtuel. Pour plus d’informations sur la configuration de compte, consultez Configurer les comptes de service (Analysis Services).
Pour les installations en cluster, vous devez spécifier un compte de domaine ou un compte système intégré. Les comptes managés ni les comptes virtuels ne sont pris en charge pour les clusters de basculement SSAS.
Toutes les installations SSAS requièrent que vous spécifiez un administrateur système de l'instance Analysis Services. Les privilèges d'administrateur sont approvisionnés dans le rôle serveur d'Analysis Services.
Approvisionnement SSRS
Le compte spécifié pendant l'installation est configuré dans le Moteur de base de données comme un membre du rôle de base de données RSExecRole. Pour plus d’informations, consultez Configurer le compte de service du serveur de rapports (Gestionnaire de configuration de SSRS).
Mise à niveau depuis les versions précédentes
Cette section décrit les changements effectués pendant la mise à niveau d’une version précédente de SQL Server.
SQL Server 2014 nécessite Windows Server 2008 R2 SP1, Windows Server 2012, Windows 8.0, Windows Server 2012 R2 ou Windows 8.1. Toute version précédente de SQL Server qui s’exécute sur une version de système d’exploitation antérieure doit être mise à niveau après la mise à niveau du système d’exploitation.
Lors de la mise à niveau de SQL Server 2005 vers SQL Server 2014, le programme d’installation de SQL Server configure SQL Server de la manière suivante.
Le Moteur de base de données s'exécute avec le contexte de sécurité du SID par service. Le SID par service a accès aux dossiers de fichiers de l’instance SQL Server (par exemple, DATA) et aux clés de Registre SQL Server.
Le SID par service du Moteur de base de données est configuré dans le Moteur de base de données comme membre du rôle serveur fixe sysadmin.
Les SID par service sont ajoutés aux groupes Windows SQL Server locaux, sauf si SQL Server est une instance de cluster de basculement.
Les ressources SQL Server restent provisionnées sur les groupes Windows SQL Server locaux.
Le nom du groupe Windows local pour les services passe de SQLServer2005MSSQLUser$<computer_name>$<instance_name> à SQLServerMSSQLUser$<computer_name>$<instance_name>. Les emplacements de fichiers pour les bases de données migrées auront des entrées de contrôle d'accès (ACE) pour les groupes Windows locaux. Les emplacements de fichiers pour les nouvelles bases de données auront des entrées ACE pour le SID par service.
Lors de la mise à niveau à partir de SQL Server 2008, le programme d’installation de SQL Server sera conservé pour le SID sql Server 2008 par service.
Pour une instance de cluster de basculement SQL Server, l’ACE pour le compte de domaine configuré pour le service sera conservé.
Annexe
Cette section contient des informations supplémentaires sur les services SQL Server.
Description des comptes de service
Le compte de service est le compte utilisé pour démarrer un service Windows, comme le Moteur de base de données SQL Server.
Comptes disponible avec tout système d'exploitation
En plus des nouveaux comptes MSA et comptes virtuels décrits précédemment, les comptes suivants peuvent être utilisés.
Compte d’utilisateur de domaine
Si le service doit interagir avec des services réseau, accéder à des ressources de domaine comme des partages de fichiers ou s’il utilise des connexions de serveur liées vers d’autres ordinateurs qui exécutent SQL Server, vous pouvez utiliser un compte de domaine avec des privilèges minimum. De nombreuses activités de serveur à serveur ne peuvent être exécutées qu'avec un compte d'utilisateur de domaine. Ce compte doit être créé au préalable via l'administration de domaine dans votre environnement.
Remarque
Si vous configurez l'application pour utiliser un compte de domaine, vous pouvez isoler les privilèges pour l'application, mais vous devez gérer les mots de passe manuellement ou créer une solution personnalisée pour la gestion de ces mots de passe. De nombreuses applications serveur utilisent cette stratégie pour améliorer la sécurité, mais cette stratégie nécessite une administration et une complexité supplémentaires. Dans ces déploiements, les administrateurs de service passent un temps considérable sur les tâches de maintenance comme la gestion des mots de passe et des noms principaux de services (SPN), qui sont requis pour l’authentification Kerberos. En outre, ces tâches de maintenance peuvent perturber le service.
Si l'ordinateur ne fait pas partie d'un domaine, un compte d'utilisateur local sans autorisations d'administrateur Windows est recommandé.
Le compte de service local est un compte intégré qui bénéficie du même niveau d'accès aux ressources et aux objets que les membres du groupe Utilisateurs. Cet accès limité constitue une mesure de sécurité pour le système, au cas où le fonctionnement de services ou de processus individuels serait compromis. Les services qui s'exécutent en tant que compte de service local accèdent aux ressources réseau dans le cadre d'une session Null, sans informations d'identification. N’oubliez pas que le compte de service local n’est pas pris en charge pour les services SQL Server ou SQL Server Agent. Le service local n’est pas pris en charge en tant que compte exécutant ces services, car il s’agit d’un service partagé et tous les autres services exécutés sous le service local auraient un accès administrateur système à SQL Server. Le nom réel du compte est NT AUTHORITY\LOCAL SERVICE.
Le compte de service réseau est un compte intégré qui bénéficie d'un niveau d'accès aux ressources et aux objets supérieur à celui des membres du groupe Utilisateurs. Les services qui s’exécutent en tant que compte de service réseau accèdent aux ressources réseau à l’aide des informations d’identification du compte d’ordinateur au format <domain_name>\<computer_name>$. Le nom réel du compte est NT AUTHORITY\NETWORK SERVICE.
Le compte système local est un compte intégré doté de privilèges très élevés. Il dispose de privilèges étendus sur le système local et représente l'ordinateur sur le réseau. Le nom réel du compte est NT AUTHORITY\SYSTEM.
Identification des services dépendant et ne dépendant pas des instances
Les services qui dépendent d’une instance sont associés à une instance spécifique de SQL Server et ont leurs propres ruches de Registre. Vous pouvez installer plusieurs copies des services qui dépendent d’une instance en exécutant le programme d’installation de SQL Server pour chaque composant ou service. Les services qui ne dépendent pas d’une instance sont partagés entre toutes les instances SQL Server installées. Ils ne sont pas associés à une instance spécifique, ne sont installés qu'une seule fois et ne peuvent pas être installés côte à côte.
Les services qui dépendent d’une instance dans SQL Server sont notamment :
SQL Server
SQL Server Agent
Sachez que le service SQL Server Agent est désactivé sur les instances de SQL Server Express et de SQL Server Express avec Advanced Services.
Analysis Services 1
Reporting Services
Recherche en texte intégral
Les services qui ne dépendent pas d’une instance dans SQL Server sont notamment :
Integration Services
SQL Server Browser
Enregistreur SQL
1Analysis Services en mode intégré SharePoint s’exécute en tant que « PowerPivot » en tant qu’instance nommée unique. Le nom de l'instance est fixe. Vous ne pouvez pas spécifier de nom différent. Vous ne pouvez installer qu'une seule instance d'Analysis Services s'exécutant comme « PowerPivot » sur chaque serveur physique.
Noms des services localisés
Le tableau ci-dessous indique les noms de services affichés dans les versions localisées de Windows.
Langage | Nom du service local | Nom du service réseau | Nom du système local | Nom du groupe Admin |
---|---|---|---|---|
Anglais Chinois simplifié Chinois traditionnel Coréen Japonais |
NT AUTHORITY\LOCAL SERVICE | NT AUTHORITY\NETWORK SERVICE | NT AUTHORITY\SYSTEM | BUILTIN\Administrators |
Allemand | NT-AUTORITÄT\LOKALER DIENST | NT-AUTORITÄT\NETZWERKDIENST | NT-AUTORITÄT\SYSTEM | VORDEFINIERT\Administratoren |
Français | AUTORITE NT\SERVICE LOCAL | AUTORITE NT\SERVICE RÉSEAU | AUTORITE NT\SYSTEM | BUILTIN\Administrators |
Italien | NT AUTHORITY\SERVIZIO LOCALE | NT AUTHORITY\SERVIZIO DI RETE | NT AUTHORITY\SYSTEM | BUILTIN\Administrators |
Espagnol | NT AUTHORITY\SERVICIO LOC | NT AUTHORITY\SERVICIO DE RED | NT AUTHORITY\SYSTEM | BUILTIN\Administradores |
Russe | NT AUTHORITY\LOCAL SERVICE | NT AUTHORITY\NETWORK SERVICE | NT AUTHORITY\SYSTEM | BUILTIN\Администраторы |
Contenu associé
Considérations sur la sécurité pour une installation SQL Server
Emplacements des fichiers pour les instances par défaut et les instances nommées de SQL Server