Configuration des compte Windows pour une instance de Notification Services

Mis à jour : 14 avril 2006

Le moteur de Notification Services est essentiel au fonctionnement de Notification Services. Ce moteur exécute les fournisseurs d'événements hébergés, le générateur et les distributeurs utilisés pour envoyer des événements, générer des notifications et distribuer les messages engendrés. Le moteur est généralement exécuté par le service Windows NS$instanceName Microsoft, mais il peut également être hébergé par une autre application ou un autre processus.

Le moteur s'exécute dans le contexte d'un compte Microsoft Windows. Si vous utilisez le service Windows NS$intanceName, spécifiez le compte sous lequel le service s'exécute lorsque vous inscrivez l'instance de Notification Services. Si vous hébergez le moteur dans une autre application ou un autre processus, vous devez configurer les autorisations Windows pour l'application ou le processus.

Autorisations Windows requises par le moteur

Le compte sous lequel le moteur s'exécute doit posséder les autorisations suivantes :

  • Des autorisations de lecture et d'exécution dans le dossier et les sous-dossiers Notification Services (%ProgramFiles%\Microsoft SQL Server\90\NotificationServices\n.n.nnn). Par défaut, seuls les membres des groupes locaux Administrateurs et Utilisateurs avec pouvoir ont accès aux fichiers de ces dossiers. Notification Services accorde ces autorisations lors de l'inscription de l'instance en ajoutant le compte de service au groupe Windows SQLServer2005NotificationServicesUser$NomOrdinateur.
  • L'autorisation de lire et d'écrire des clés de registre dans les emplacements de Registre suivants : HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Services\NotificationServices et HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services. Cette autorisation est accordée au compte de service Windows si vous créez le service lors de l'inscription de l'instance.
  • L'autorisation d'écrire dans le journal d'application Windows.
  • Pour les applications qui utilisent un fournisseur d'événements FileSystemWatcher, le fournisseur d'événements doit être en mesure de lire et de renommer les fichiers dans le dossier dans lequel les événements sont supprimés. Il doit également disposer de l'accès en lecture au fichier de schéma d'événement (.xsd).
  • Pour les applications qui utilisent un protocole de transfert de fichiers pour publier les notifications, le distributeur doit disposer d'autorisations d'écriture dans le dossier dans lequel les notifications sont écrites.
  • Pour les applications qui utilisent le module de formatage de contenu XSLT, le distributeur doit avoir l'autorisation de lire les dossiers qui contiennent les fichiers XSLT. Pour plus d'informations, consultez Emplacement des fichiers XSLT.

En outre, le compte de moteur peut nécessiter l'appartenance au groupe Administrateurs locaux. Si une application hébergée par l'instance utilise le service SMTP (Simple Mail Transfer Protocol) local des services Internet (IIS) pour envoyer des notifications, le distributeur doit envoyer ces notifications dans le contexte d'un administrateur.

ms172585.note(fr-fr,SQL.90).gifImportant :
Le moteur doit également disposer d'autorisations dans les bases de données SQL Server utilisées par l'instance. Pour plus d'informations, consultez Configuration des autorisations SQL Server pour une instance de Notification Services.

Types de comptes de service Windows

Si le moteur pour votre instance de Notification Services n'est pas hébergé dans une application ou un processus distinct, l'instance s'exécute en tant que service Windows. Un service Windows peut être exécuté sous les types de comptes suivants, bien que certains étant plus difficiles à gérer, leur utilisation est déconseillée :

  • Un compte d'utilisateur de domaine. Un compte de domaine facilite le contrôle d'accès aux ressources réseau et aux bases de données, car vous pouvez spécifier les autorisations exactes dont le compte doit bénéficier. Pour mieux contrôler les autorisations accordées au service, les administrateurs de domaine peuvent créer un nouveau compte pour l'instance de Notification Services.
  • Un compte d'utilisateur local. Vous pouvez créer un compte d'utilisateur sur l'ordinateur local et exécuter le service NS$intanceName sous ce compte. Le compte utilise le format computer\username. Si les bases de données sont situées sur le même serveur, vous pouvez également accorder des autorisations de base de données à ce compte d'utilisateur. Si les bases de données se trouvent sur un ordinateur distant, vous devez configurer un compte de connexion SQL Server pour l'instance de Notification Services.
  • Le compte AUTORITE NT\service local. Ce compte intégré est disponible dans Microsoft  Windows XP et Microsoft Windows Server 2003. Le compte de service local possède le même niveau d'accès aux ressources et aux objets que les membres du groupe Utilisateurs ; il accède aux ressources réseau comme une session NULL sans informations d'identification. Si les bases de données sont situées sur le même serveur, vous pouvez également accorder des autorisations de base de données à ce compte. Toutefois Microsoft déconseille d'utiliser le compte de service local pour le service NS$intanceName. En effet, plusieurs services peuvent utiliser ce compte de sorte qu'il est difficile de contrôler quels services ont accès aux bases de données SQL Server.
  • Le compte AUTORITE NT\service réseau. Ce compte intégré est disponible dans Windows XP et Windows Server 2003. Microsoft déconseille d'utiliser le compte de service réseau pour le service NS$intanceName. En effet, tous les services qui s'exécutent sous le compte de service réseau sont mappés sur le compte domain\remotecomputername$ lors de l'accès aux ressources réseau. Étant donné que plusieurs services peuvent utiliser ce compte, il est difficile de contrôler quels services ont accès aux ressources réseau et aux bases de données SQL Server.
  • Le compte système local. Ce compte est intégré. Microsoft déconseille vivement d'utiliser le compte système local pour le service NS$intanceName car ce compte dispose d'un accès illimité à toutes les ressources locales. De même, Tous les services qui s'exécutent sous le compte système local sont mappés sur le compte domain\remotecomputername$ lors de l'accès aux ressources réseau. Étant donné que plusieurs services peuvent utiliser ce compte, il est difficile de contrôler quels services ont accès aux ressources réseau et aux bases de données SQL Server.

Spécification du compte pour le service Windows

Vous définissez le compte Windows pour le service Windows NS$intanceName lorsque vous créez le service. Vous créez le service lorsque vous inscrivez l'instance. Vous pouvez mettre à jour le compte en réinscrivant l'instance ou en modifiant le compte dans le Gestionnaire de services Windows.

Voir aussi

Concepts

Hébergement du moteur de Notification Services
Configuration des services Windows de Notification Services
Configuration des autorisations SQL Server pour une instance de Notification Services

Autres ressources

Configuration des comptes de service Windows

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

14 avril 2006

Contenu modifié :
  • Mise à jour de l'emplacement des clés de Registre.